Tomas Jelinek has uploaded a new change for review. Change subject: webadmin: add remove instance image widget ......................................................................
webadmin: add remove instance image widget WIP Change-Id: Idc87a480515de4af9df8da32ec4a9c787e11cfd1 Signed-off-by: Tomas Jelinek <tjeli...@redhat.com> --- M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java A frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/template/BaseTemplateSuggestBoxRenderer.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostListModel.java A frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/InstanceImageLineModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmListModel.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostPopupView.java A frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/instanceimages/InstanceImageEditor.java 8 files changed, 165 insertions(+), 21 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/31/32731/1 diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java index b2006de..f03db8e 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/AbstractVmPopupWidget.java @@ -2112,21 +2112,6 @@ return hasValidations; } - class BaseTemplateSuggestBoxRenderer extends ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<VmTemplate> { - @Override - public String getReplacementStringNullSafe(VmTemplate data) { - return data.getName(); - } - - @Override - public String getDisplayStringNullSafe(VmTemplate data) { - return typeAheadNameDescriptionTemplateNullSafe( - data.getName(), - data.getDescription() - ); - } - } - class TemplateVersionSuggestBoxRenderer extends ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<VmTemplate> { @Override public String getReplacementStringNullSafe(VmTemplate data) { diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/template/BaseTemplateSuggestBoxRenderer.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/template/BaseTemplateSuggestBoxRenderer.java new file mode 100644 index 0000000..8ddbfce --- /dev/null +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/template/BaseTemplateSuggestBoxRenderer.java @@ -0,0 +1,20 @@ +package org.ovirt.engine.ui.common.widget.uicommon.popup.template; + + +import org.ovirt.engine.core.common.businessentities.VmTemplate; +import org.ovirt.engine.ui.common.widget.editor.ListModelTypeAheadListBoxEditor; + +public class BaseTemplateSuggestBoxRenderer extends ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<VmTemplate> { + @Override + public String getReplacementStringNullSafe(VmTemplate data) { + return data.getName(); + } + + @Override + public String getDisplayStringNullSafe(VmTemplate data) { + return typeAheadNameDescriptionTemplateNullSafe( + data.getName(), + data.getDescription() + ); + } +} diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostListModel.java index 8c4952b..51e093e 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostListModel.java @@ -992,7 +992,7 @@ parameters.setNetworkMappings(model.getInterfaceMappings().getEntity()); } - if (model.getIsDiscorveredHosts().getEntity()) { + if (Boolean.TRUE.equals(model.getIsDiscorveredHosts().getEntity())) { Provider<?> provider = (Provider<?>) model.getProviders().getSelectedItem(); ExternalHostGroup hostGroup = (ExternalHostGroup) model.getExternalHostGroups().getSelectedItem(); ExternalComputeResource computeResource = (ExternalComputeResource) model.getExternalComputeResource().getSelectedItem(); diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/InstanceImageLineModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/InstanceImageLineModel.java new file mode 100644 index 0000000..c4a6cae --- /dev/null +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/InstanceImageLineModel.java @@ -0,0 +1,38 @@ +package org.ovirt.engine.ui.uicommonweb.models.vms; + +import org.ovirt.engine.core.common.businessentities.VmTemplate; +import org.ovirt.engine.ui.uicommonweb.models.EntityModel; +import org.ovirt.engine.ui.uicommonweb.models.ListModel; + +public class InstanceImageLineModel extends EntityModel { + + private ListModel<VmTemplate> instanceImage; + + private ListModel<VmTemplate> baseImage; + + private EntityModel<Boolean> master; + + public ListModel<VmTemplate> getInstanceImage() { + return instanceImage; + } + + public void setInstanceImage(ListModel<VmTemplate> instanceImage) { + this.instanceImage = instanceImage; + } + + public ListModel<VmTemplate> getBaseImage() { + return baseImage; + } + + public void setBaseImage(ListModel<VmTemplate> baseImage) { + this.baseImage = baseImage; + } + + public EntityModel<Boolean> getMaster() { + return master; + } + + public void setMaster(EntityModel<Boolean> master) { + this.master = master; + } +} diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java index fb09cec..71fa8d0 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/UnitVmModel.java @@ -533,6 +533,16 @@ baseTemplate = value; } + private ListModel<InstanceImageLineModel> instanceImages; + + public ListModel<InstanceImageLineModel> getInstanceImages() { + return instanceImages; + } + + public void setInstanceImages(ListModel<InstanceImageLineModel> instanceImages) { + this.instanceImages = instanceImages; + } + private NotChangableForVmInPoolListModel<VmTemplate> instanceImage; public ListModel<VmTemplate> getInstanceImage() { @@ -1526,6 +1536,8 @@ setInstanceImage(new NotChangableForVmInPoolListModel<VmTemplate>()); getInstanceImage().getSelectedItemChangedEvent().addListener(this); + setInstanceImages(new NotChangableForVmInPoolListModel<InstanceImageLineModel>()); + setCdAttached(new NotChangableForVmInPoolEntityModel<Boolean>()); getCdAttached().getEntityChangedEvent().addListener(new IEventListener() { @Override diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmListModel.java index 3619837..daf9616 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmListModel.java @@ -2265,8 +2265,8 @@ parameters.setImageTypeIds(new ArrayList<Guid>()); // TODO Test - parameters.getImageTypeIds().add(Guid.createGuidFromString("555d7a68-065f-4cc1-80f5-e7f86647c2ab")); //$NON-NLS-1$ - parameters.getImageTypeIds().add(Guid.createGuidFromString("878b9644-0c6d-475b-965b-09a85409dbb5")); //$NON-NLS-1$ +// parameters.getImageTypeIds().add(Guid.createGuidFromString("555d7a68-065f-4cc1-80f5-e7f86647c2ab")); //$NON-NLS-1$ +// parameters.getImageTypeIds().add(Guid.createGuidFromString("878b9644-0c6d-475b-965b-09a85409dbb5")); //$NON-NLS-1$ setVmWatchdogToParams(model, parameters); setRngDeviceToParams(model, parameters); @@ -2323,8 +2323,8 @@ param.setCopyTemplatePermissions(model.getCopyPermissions().getEntity()); // TODO Test param.setImageTypeIds(new ArrayList<Guid>()); - param.getImageTypeIds().add(Guid.createGuidFromString("555d7a68-065f-4cc1-80f5-e7f86647c2ab")); //$NON-NLS-1$ - param.getImageTypeIds().add(Guid.createGuidFromString("878b9644-0c6d-475b-965b-09a85409dbb5")); //$NON-NLS-1$ +// param.getImageTypeIds().add(Guid.createGuidFromString("555d7a68-065f-4cc1-80f5-e7f86647c2ab")); //$NON-NLS-1$ +// param.getImageTypeIds().add(Guid.createGuidFromString("878b9644-0c6d-475b-965b-09a85409dbb5")); //$NON-NLS-1$ setRngDeviceToParams(model, param); diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostPopupView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostPopupView.java index 34f0d11..b5c9eb5 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostPopupView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostPopupView.java @@ -757,7 +757,7 @@ object.getIsDiscorveredHosts().getEntityChangedEvent().addListener(new IEventListener() { @Override public void eventRaised(Event ev, Object sender, EventArgs args) { - if (object.getIsDiscorveredHosts().getEntity() == true) { + if (Boolean.TRUE.equals(object.getIsDiscorveredHosts().getEntity())) { rbDiscoveredHost.setValue(true); showDiscoveredHostsWidgets(true); } else { diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/instanceimages/InstanceImageEditor.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/instanceimages/InstanceImageEditor.java new file mode 100644 index 0000000..aeb8f8b --- /dev/null +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/instanceimages/InstanceImageEditor.java @@ -0,0 +1,89 @@ +package org.ovirt.engine.ui.webadmin.section.main.view.popup.instanceimages; + +import com.google.gwt.core.shared.GWT; +import com.google.gwt.editor.client.SimpleBeanEditorDriver; +import com.google.gwt.uibinder.client.UiBinder; +import com.google.gwt.uibinder.client.UiField; +import com.google.gwt.user.client.ui.FlowPanel; +import org.ovirt.engine.core.common.businessentities.VmTemplate; +import org.ovirt.engine.ui.common.CommonApplicationTemplates; +import org.ovirt.engine.ui.common.idhandler.ElementIdHandler; +import org.ovirt.engine.ui.common.idhandler.WithElementId; +import org.ovirt.engine.ui.common.widget.editor.ListModelTypeAheadListBoxEditor; +import org.ovirt.engine.ui.common.widget.editor.generic.EntityModelCheckBoxEditor; +import org.ovirt.engine.ui.common.widget.uicommon.popup.AbstractModelBoundPopupWidget; +import org.ovirt.engine.ui.uicommonweb.models.vms.InstanceImageLineModel; + +public class InstanceImageEditor extends AbstractModelBoundPopupWidget<InstanceImageLineModel> { + + public interface Driver extends SimpleBeanEditorDriver<InstanceImageLineModel, InstanceImageEditor> { + } + + private final Driver driver = GWT.create(Driver.class); + + interface WidgetUiBinder extends UiBinder<FlowPanel, InstanceImageEditor> { + WidgetUiBinder uiBinder = GWT.create(WidgetUiBinder.class); + } + + interface WidgetIdHandler extends ElementIdHandler<InstanceImageEditor> { + WidgetIdHandler idHandler = GWT.create(WidgetIdHandler.class); + } + + @UiField(provided = true) + @Path(value = "instanceImage.selectedItem") + @WithElementId("instanceImage") + ListModelTypeAheadListBoxEditor<VmTemplate> instanceImage; + + @UiField(provided = true) + @Path(value = "baseImage.selectedItem") + @WithElementId("baseImage") + ListModelTypeAheadListBoxEditor<VmTemplate> baseImage; + + @UiField(provided = true) + @Path("master.entity") + @WithElementId("master") + EntityModelCheckBoxEditor master; + + private final CommonApplicationTemplates applicationTemplates; + + public InstanceImageEditor(final CommonApplicationTemplates applicationTemplates) { + this.applicationTemplates = applicationTemplates; + + instanceImage = new ListModelTypeAheadListBoxEditor<VmTemplate>(new ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<VmTemplate>() { + @Override + public String getReplacementStringNullSafe(VmTemplate data) { + return data.getName(); + } + + @Override + public String getDisplayStringNullSafe(VmTemplate data) { + return applicationTemplates.typeAheadNameDescription( + data.getName() != null ? data.getName() : "", + data.getDescription() != null ? data.getDescription(): "") + .asString(); + } + }); + + baseImage = new ListModelTypeAheadListBoxEditor<VmTemplate>(new ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<VmTemplate>() { + @Override + public String getReplacementStringNullSafe(VmTemplate data) { + return data.getName(); + } + + @Override + public String getDisplayStringNullSafe(VmTemplate data) { + return ""; + } + }); + } + + @Override + public void edit(InstanceImageLineModel model) { + driver.edit(model); + } + + @Override + public InstanceImageLineModel flush() { + return driver.flush(); + } +} -- To view, visit http://gerrit.ovirt.org/32731 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Idc87a480515de4af9df8da32ec4a9c787e11cfd1 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Tomas Jelinek <tjeli...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches