use of org.ovirt.engine.core.common.businessentities.OpenstackNetworkProviderProperties in project ovirt-engine by oVirt.
the class HostPopupView method initEditors.
private void initEditors() {
publicKeyEditor = new StringEntityModelTextAreaLabelEditor();
// List boxes
clusterEditor = new GroupedListModelListBoxEditor<>(new GroupedListModelListBox<Cluster>(new NameRenderer<Cluster>()) {
@Override
public String getModelLabel(Cluster model) {
return model.getName();
}
@Override
public String getGroupLabel(Cluster model) {
return messages.hostDataCenter(model.getStoragePoolName());
}
@Override
public Comparator<Cluster> getComparator() {
return new DataCenterClusterComparator();
}
/**
* Comparator that sorts on data center name first, and then cluster name. Ignoring case.
*/
final class DataCenterClusterComparator implements Comparator<Cluster> {
@Override
public int compare(Cluster cluster1, Cluster cluster2) {
if (cluster1.getStoragePoolName() != null && cluster2.getStoragePoolName() == null) {
return -1;
} else if (cluster2.getStoragePoolName() != null && cluster1.getStoragePoolName() == null) {
return 1;
} else if (cluster1.getStoragePoolName() == null && cluster2.getStoragePoolName() == null) {
return 0;
}
if (cluster1.getStoragePoolName().equals(cluster2.getStoragePoolName())) {
return cluster1.getName().compareToIgnoreCase(cluster2.getName());
} else {
return cluster1.getStoragePoolName().compareToIgnoreCase(cluster2.getStoragePoolName());
}
}
}
});
externalHostNameEditor = new ListModelListBoxEditor<>(new NameRenderer<VDS>());
providersEditor = new ListModelListBoxEditor<>(new NameRenderer<Provider<OpenstackNetworkProviderProperties>>());
externalDiscoveredHostsEditor = getListModelTypeAheadListBoxEditor();
externalHostGroupsEditor = getListModelTypeAheadListBoxEditor();
externalComputeResourceEditor = getListModelTypeAheadListBoxEditor();
// Check boxes
pmEnabledEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
pmEnabledEditor.setUsePatternFly(true);
pmKdumpDetectionEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
pmKdumpDetectionEditor.setUsePatternFly(true);
disableAutomaticPowerManagementEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
disableAutomaticPowerManagementEditor.setUsePatternFly(true);
externalHostProviderEnabledEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
overrideIpTablesEditor = new EntityModelCheckBoxEditor(Align.RIGHT);
// $NON-NLS-1$
rbPassword = new RadioButton("1");
// $NON-NLS-1$
rbPublicKey = new RadioButton("1");
// $NON-NLS-1$
rbDiscoveredHost = new EntityModelRadioButtonEditor("2");
// $NON-NLS-1$
rbProvisionedHost = new EntityModelRadioButtonEditor("2");
kernelCmdlineBlacklistNouveau = new EntityModelCheckBoxEditor(Align.RIGHT);
kernelCmdlineIommu = new EntityModelCheckBoxEditor(Align.RIGHT);
kernelCmdlineKvmNested = new EntityModelCheckBoxEditor(Align.RIGHT);
kernelCmdlineUnsafeInterrupts = new EntityModelCheckBoxEditor(Align.RIGHT);
kernelCmdlinePciRealloc = new EntityModelCheckBoxEditor(Align.RIGHT);
consoleAddressEnabled = new EntityModelCheckBoxEditor(Align.RIGHT);
hostedEngineDeployActionsEditor = new ListModelListBoxEditor<>(new EnumRenderer<HostedEngineDeployConfiguration.Action>());
}
use of org.ovirt.engine.core.common.businessentities.OpenstackNetworkProviderProperties in project ovirt-engine by oVirt.
the class NetworkProviderValidatorTest method mockProviderAdditionalProperties.
private void mockProviderAdditionalProperties() {
AgentConfiguration agentConfiguration = mock(AgentConfiguration.class);
OpenstackNetworkProviderProperties properties = mock(OpenstackNetworkProviderProperties.class);
when(properties.getAgentConfiguration()).thenReturn(agentConfiguration);
when(provider.getAdditionalProperties()).thenReturn(properties);
}
use of org.ovirt.engine.core.common.businessentities.OpenstackNetworkProviderProperties in project ovirt-engine by oVirt.
the class ProviderValidatorTest method testValidateReadOnlyActions.
@Test
public void testValidateReadOnlyActions() {
String providerName = "providerName";
OpenstackNetworkProviderProperties additionalProperties = new OpenstackNetworkProviderProperties();
additionalProperties.setReadOnly(true);
Provider<AdditionalProperties> provider = new Provider<>();
provider.setAdditionalProperties(additionalProperties);
provider.setType(ProviderType.EXTERNAL_NETWORK);
provider.setName(providerName);
ProviderValidator validator = new ProviderValidator(provider);
EngineMessage engineMessage = EngineMessage.ACTION_TYPE_FAILED_EXTERNAL_PROVIDER_IS_READ_ONLY;
assertThat(validator.validateReadOnlyActions(), failsWith(engineMessage, ReplacementUtils.getVariableAssignmentString(engineMessage, providerName)));
additionalProperties.setReadOnly(false);
assertThat(validator.validateReadOnlyActions(), isValid());
provider.setType(ProviderType.OPENSTACK_NETWORK);
assertThat(validator.validateReadOnlyActions(), isValid());
}
use of org.ovirt.engine.core.common.businessentities.OpenstackNetworkProviderProperties in project ovirt-engine by oVirt.
the class AbstractVmPopupWidget method initListBoxEditors.
@SuppressWarnings({ "rawtypes", "unchecked" })
private void initListBoxEditors() {
// General tab
dataCenterWithClusterEditor = new GroupedListModelListBoxEditor<>(new GroupedListModelListBox<DataCenterWithCluster>(new NameRenderer<>()) {
@Override
public String getModelLabel(DataCenterWithCluster model) {
return model.getCluster().getName();
}
@Override
public String getGroupLabel(DataCenterWithCluster model) {
return messages.hostDataCenter(model.getDataCenter().getName());
}
public Comparator<DataCenterWithCluster> getComparator() {
return Comparator.comparing((DataCenterWithCluster d) -> d.getDataCenter().getName(), Comparator.nullsLast(String.CASE_INSENSITIVE_ORDER)).thenComparing(d -> d.getCluster().getName(), Comparator.nullsLast(String.CASE_INSENSITIVE_ORDER));
}
});
quotaEditor = new ListModelTypeAheadListBoxEditor<>(new ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<Quota>() {
@Override
public String getReplacementStringNullSafe(Quota data) {
return data.getQuotaName();
}
@Override
public String getDisplayStringNullSafe(Quota data) {
return typeAheadNameDescriptionTemplateNullSafe(data.getQuotaName(), data.getDescription());
}
}, new ModeSwitchingVisibilityRenderer());
baseTemplateEditor = new ListModelTypeAheadListBoxEditor<>(new ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<VmTemplate>() {
@Override
public String getReplacementStringNullSafe(VmTemplate data) {
return data.getName();
}
@Override
public String getDisplayStringNullSafe(VmTemplate data) {
return typeAheadNameDescriptionTemplateNullSafe(data.getName(), data.getDescription());
}
}, new ModeSwitchingVisibilityRenderer());
templateWithVersionEditor = new ListModelTypeAheadListBoxEditor<>(new ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<TemplateWithVersion>() {
@Override
public String getReplacementStringNullSafe(TemplateWithVersion templateWithVersion) {
return getFirstColumn(templateWithVersion) + // $NON-NLS-1$
" | " + getSecondColumn(templateWithVersion);
}
@Override
public String getDisplayStringNullSafe(TemplateWithVersion templateWithVersion) {
return typeAheadNameDescriptionTemplateNullSafe(getFirstColumn(templateWithVersion), getSecondColumn(templateWithVersion));
}
private String getFirstColumn(TemplateWithVersion templateWithVersion) {
return templateWithVersion.getBaseTemplate().getName();
}
private String getSecondColumn(TemplateWithVersion templateWithVersion) {
final VmTemplate versionTemplate = templateWithVersion.getTemplateVersion();
final String versionName = versionTemplate.getTemplateVersionName() == null ? // $NON-NLS-1$
"" : // $NON-NLS-1$
versionTemplate.getTemplateVersionName() + " ";
return templateWithVersion.isLatest() ? constants.latest() : // $NON-NLS-1$
versionName + "(" + versionTemplate.getTemplateVersionNumber() + // $NON-NLS-1$
")";
}
}, new ModeSwitchingVisibilityRenderer(), new SuggestionMatcher.ContainsSuggestionMatcher());
oSTypeEditor = new ListModelListBoxEditor<>(new AbstractRenderer<Integer>() {
@Override
public String render(Integer object) {
return AsyncDataProvider.getInstance().getOsName(object);
}
}, new ModeSwitchingVisibilityRenderer());
vmTypeEditor = new ListModelListBoxEditor<>(new EnumRenderer<VmType>(), new ModeSwitchingVisibilityRenderer());
instanceTypesEditor = new ListModelTypeAheadListBoxEditor<>(new ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<InstanceType>() {
@Override
public String getReplacementStringNullSafe(InstanceType data) {
return data.getName();
}
@Override
public String getDisplayStringNullSafe(InstanceType data) {
return typeAheadNameDescriptionTemplateNullSafe(data.getName(), data.getDescription());
}
}, new ModeSwitchingVisibilityRenderer());
emulatedMachine = new ListModelTypeAheadChangeableListBoxEditor(new ListModelTypeAheadChangeableListBoxEditor.NullSafeSuggestBoxRenderer() {
@Override
public String getDisplayStringNullSafe(String data) {
if (data == null || data.trim().isEmpty()) {
data = getDefaultEmulatedMachineLabel();
}
return typeAheadNameTemplateNullSafe(data);
}
}, false, new ModeSwitchingVisibilityRenderer(), constants.clusterDefaultOption());
customCpu = new ListModelTypeAheadChangeableListBoxEditor(new ListModelTypeAheadChangeableListBoxEditor.NullSafeSuggestBoxRenderer() {
@Override
public String getDisplayStringNullSafe(String data) {
if (data == null || data.trim().isEmpty()) {
data = getDefaultCpuTypeLabel();
}
return typeAheadNameTemplateNullSafe(data);
}
}, false, new ModeSwitchingVisibilityRenderer(), constants.clusterDefaultOption());
numOfSocketsEditor = new ListModelListBoxEditor<>(new ModeSwitchingVisibilityRenderer());
numOfSocketsEditorWithDetachable = new EntityModelDetachableWidgetWithLabel(numOfSocketsEditor);
corePerSocketEditor = new ListModelListBoxEditor<>(new ModeSwitchingVisibilityRenderer());
corePerSocketEditorWithDetachable = new EntityModelDetachableWidgetWithLabel(corePerSocketEditor);
initThreadsPerCore();
// Pools
poolTypeEditor = new ListModelListBoxEditor<>(new NullSafeRenderer<EntityModel<VmPoolType>>() {
@Override
public String renderNullSafe(EntityModel<VmPoolType> object) {
return object.getTitle();
}
}, new ModeSwitchingVisibilityRenderer());
timeZoneEditor = new ListModelListBoxOnlyEditor<>(new NullSafeRenderer<TimeZoneModel>() {
@Override
public String renderNullSafe(TimeZoneModel timeZone) {
if (timeZone.isDefault()) {
return messages.defaultTimeZoneCaption(timeZone.getDisplayValue());
} else {
return timeZone.getDisplayValue();
}
}
}, new ModeSwitchingVisibilityRenderer());
EnableableFormLabel label = new EnableableFormLabel();
label.setText(constants.timeZoneVm());
timeZoneEditorWithInfo = new EntityModelWidgetWithInfo(label, timeZoneEditor);
timeZoneEditorWithInfo.setExplanation(templates.italicText(constants.timeZoneInfo()));
// Console tab
displayTypeEditor = new ListModelListBoxEditor<>(new EnumRenderer<DisplayType>(), new ModeSwitchingVisibilityRenderer());
graphicsTypeEditor = new ListModelListBoxEditor<>(new EnumRenderer<UnitVmModel.GraphicsTypes>());
usbSupportEditor = new ListModelListBoxEditor<>(new EnumRenderer<UsbPolicy>(), new ModeSwitchingVisibilityRenderer());
consoleDisconnectActionEditor = new ListModelListBoxEditor<>(new EnumRenderer<ConsoleDisconnectAction>(), new ModeSwitchingVisibilityRenderer());
numOfMonitorsEditor = new ListModelListBoxEditor<>(new NullSafeRenderer<Integer>() {
@Override
public String renderNullSafe(Integer object) {
return object.toString();
}
}, new ModeSwitchingVisibilityRenderer());
numOfMonitorsEditor.hideLabel();
vncKeyboardLayoutEditor = new ListModelListBoxEditor<>(new VncKeyMapRenderer(), new ModeSwitchingVisibilityRenderer());
// Host Tab
// $NON-NLS-1$
specificHost = new EntityModelRadioButtonEditor("runVmOnHostGroup", new ModeSwitchingVisibilityRenderer());
isAutoAssignEditor = // $NON-NLS-1$
new EntityModelRadioButtonEditor("runVmOnHostGroup", new ModeSwitchingVisibilityRenderer());
defaultHostEditor = new ListModelMultipleSelectListBoxEditor<>(new NameRenderer<VDS>(), new ModeSwitchingVisibilityRenderer());
defaultHostEditor.hideLabel();
migrationModeEditor = new ListModelListBoxEditor<>(new EnumRenderer<MigrationSupport>(), new ModeSwitchingVisibilityRenderer());
migrationModeEditor.hideLabel();
overrideMigrationDowntimeEditor = new EntityModelCheckBoxEditor(Align.RIGHT, new ModeSwitchingVisibilityRenderer());
migrationDowntimeEditor = new IntegerEntityModelTextBoxOnlyEditor(new ModeSwitchingVisibilityRenderer());
overrideMigrationPolicyEditor = new EntityModelCheckBoxEditor(Align.RIGHT, new ModeSwitchingVisibilityRenderer());
migrationPolicyEditor = new ListModelListBoxOnlyEditor<>(new NameRenderer<MigrationPolicy>(), new ModeSwitchingVisibilityRenderer());
autoConvergeEditor = new ListModelListBoxEditor<>(new BooleanRendererWithNullText(constants.autoConverge(), constants.dontAutoConverge(), constants.inheritFromCluster()), new ModeSwitchingVisibilityRenderer());
migrateCompressedEditor = new ListModelListBoxEditor<>(new BooleanRendererWithNullText(constants.compress(), constants.dontCompress(), constants.inheritFromCluster()), new ModeSwitchingVisibilityRenderer());
// Resource Allocation
provisioningThinEditor = // $NON-NLS-1$
new EntityModelRadioButtonEditor("provisioningGroup", new ModeSwitchingVisibilityRenderer());
provisioningCloneEditor = // $NON-NLS-1$
new EntityModelRadioButtonEditor("provisioningGroup", new ModeSwitchingVisibilityRenderer());
// Boot Options Tab
firstBootDeviceEditor = new ListModelListBoxEditor<>(new NullSafeRenderer<EntityModel<BootSequence>>() {
@Override
public String renderNullSafe(EntityModel<BootSequence> object) {
return object.getTitle();
}
}, new ModeSwitchingVisibilityRenderer());
secondBootDeviceEditor = new ListModelListBoxEditor<>(new NullSafeRenderer<EntityModel<BootSequence>>() {
@Override
public String renderNullSafe(EntityModel<BootSequence> object) {
return object.getTitle();
}
}, new ModeSwitchingVisibilityRenderer());
cdImageEditor = new ListModelListBoxEditor<>(new NullSafeRenderer<RepoImage>() {
@Override
public String renderNullSafe(RepoImage object) {
// For old ISO images from an ISO domain the image name is empty
if (StringHelper.isNullOrEmpty(object.getRepoImageName())) {
return object.getRepoImageId();
}
return object.getRepoImageName();
}
}, new ModeSwitchingVisibilityRenderer());
cdImageEditor.hideLabel();
cpuProfilesEditor = new ListModelListBoxEditor<>(new NameRenderer<CpuProfile>());
cpuSharesAmountSelectionEditor = new ListModelListBoxOnlyEditor<>(new EnumRenderer<UnitVmModel.CpuSharesAmount>(), new ModeSwitchingVisibilityRenderer());
numaTuneMode = new ListModelListBoxEditor<>(new EnumRenderer(), new ModeSwitchingVisibilityRenderer());
providersEditor = new ListModelListBoxEditor<>(new NameRenderer<Provider<OpenstackNetworkProviderProperties>>());
providersEditor.setLabel(constants.providerLabel());
}
Aggregations