Tal Nisan has uploaded a new change for review. Change subject: webadmin: Add an alert when adding a Domain to uninitialized pool ......................................................................
webadmin: Add an alert when adding a Domain to uninitialized pool When trying to add a Storage Domain to an uninitialized Storage Pool there should be a warning message that the Pool is uninitialized and that the user should first add a data domain to initialize the pool Change-Id: I30c2b37f2cf59ef9c57ff96d1ffc4c23d452819e Bug-Url: https://bugzilla.redhat.com/887378 Signed-off-by: Tal Nisan <[email protected]> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageModel.java M frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Constants.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.ui.xml 4 files changed, 53 insertions(+), 2 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/23/13523/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageModel.java index 91542ed..8a58782 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageModel.java @@ -7,16 +7,17 @@ import java.util.List; import org.ovirt.engine.core.common.businessentities.BusinessEntitiesDefinitions; +import org.ovirt.engine.core.common.businessentities.StorageDomain; import org.ovirt.engine.core.common.businessentities.StorageDomainSharedStatus; import org.ovirt.engine.core.common.businessentities.StorageDomainStatus; import org.ovirt.engine.core.common.businessentities.StorageDomainType; import org.ovirt.engine.core.common.businessentities.StorageFormatType; +import org.ovirt.engine.core.common.businessentities.StoragePoolStatus; import org.ovirt.engine.core.common.businessentities.StorageType; import org.ovirt.engine.core.common.businessentities.VDS; import org.ovirt.engine.core.common.businessentities.VDSStatus; import org.ovirt.engine.core.common.businessentities.VDSType; import org.ovirt.engine.core.common.businessentities.VdsSpmStatus; -import org.ovirt.engine.core.common.businessentities.StorageDomain; import org.ovirt.engine.core.common.businessentities.storage_pool; import org.ovirt.engine.core.common.interfaces.SearchType; import org.ovirt.engine.core.common.queries.ConfigurationValues; @@ -41,6 +42,7 @@ import org.ovirt.engine.ui.uicommonweb.validation.NotEmptyValidation; import org.ovirt.engine.ui.uicommonweb.validation.SpecialAsciiI18NOrNoneValidation; import org.ovirt.engine.ui.uicommonweb.validation.ValidationResult; +import org.ovirt.engine.ui.uicompat.ConstantsManager; import org.ovirt.engine.ui.uicompat.Event; import org.ovirt.engine.ui.uicompat.EventArgs; @@ -124,6 +126,16 @@ privateDataCenter = value; } + private EntityModel dataCenterAlert; + + public EntityModel getDataCenterAlert() { + return dataCenterAlert; + } + + public void setDataCenterAlert(EntityModel dataCenterAlert) { + this.dataCenterAlert = dataCenterAlert; + } + private ListModel privateHost; public ListModel getHost() @@ -186,6 +198,7 @@ setName(new EntityModel()); setDescription(new EntityModel()); + setDataCenterAlert(new EntityModel()); setDataCenter(new ListModel()); getDataCenter().getSelectedItemChangedEvent().addListener(this); setHost(new ListModel()); @@ -318,6 +331,20 @@ private void DataCenter_SelectedItemChanged() { UpdateItemsAvailability(); + updateDataCenterAlert(); + } + + private void updateDataCenterAlert() { + if (getDataCenter().getSelectedItem() != null + && !UnassignedDataCenterId.equals(((storage_pool) getDataCenter().getSelectedItem()).getId()) + && ((storage_pool) getDataCenter().getSelectedItem()).getstatus() == StoragePoolStatus.Uninitialized) { + getDataCenterAlert().setIsAvailable(true); + getDataCenterAlert().setEntity(ConstantsManager.getInstance().getConstants().dataCenterUninitializedAlert()); + } + else { + getDataCenterAlert().setIsAvailable(false); + getDataCenterAlert().setEntity(""); + } } private void Host_SelectedItemChanged() diff --git a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Constants.java b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Constants.java index 436a0f9..5a03ae6 100644 --- a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Constants.java +++ b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Constants.java @@ -175,6 +175,9 @@ @DefaultStringValue("Storage") String storageTitle(); + @DefaultStringValue("Data Center is uninitialized, in order to initialize add a data domain") + String dataCenterUninitializedAlert(); + @DefaultStringValue("Detach Storage") String detachStorageTitle(); diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.java index a04bbca..6193d66 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.java @@ -32,6 +32,7 @@ import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.user.client.ui.FlowPanel; +import com.google.gwt.user.client.ui.Image; import com.google.inject.Inject; public class StoragePopupView extends AbstractModelBoundPopupView<StorageModel> @@ -84,6 +85,9 @@ @Ignore @UiField FlowPanel specificStorageTypePanel; + + @UiField + Image datacenterAlertIcon; @SuppressWarnings("rawtypes") @Ignore @@ -192,6 +196,14 @@ revealStorageView(storageModel); } }); + + storageModel.getDataCenterAlert().getEntityChangedEvent().addListener(new IEventListener() { + @Override + public void eventRaised(Event ev, Object sender, EventArgs args) { + datacenterAlertIcon.setVisible(storageModel.getDataCenterAlert().getIsAvailable()); + datacenterAlertIcon.setTitle((String) storageModel.getDataCenterAlert().getEntity()); + } + }); } @SuppressWarnings("unchecked") diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.ui.xml b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.ui.xml index 2ebcd75..a28b3c6 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.ui.xml +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/storage/StoragePopupView.ui.xml @@ -3,6 +3,8 @@ <ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder" xmlns:g="urn:import:com.google.gwt.user.client.ui" xmlns:d="urn:import:org.ovirt.engine.ui.common.widget.dialog" xmlns:e="urn:import:org.ovirt.engine.ui.common.widget.editor"> + <ui:with field='resources' type='org.ovirt.engine.ui.webadmin.ApplicationResources' /> + <ui:style src='../../../../../defines.css' type="org.ovirt.engine.ui.webadmin.section.main.view.popup.storage.StoragePopupView.WidgetStyle"> .content { } @@ -72,6 +74,10 @@ margin-top: 10px; } + .dataCenterAlertIcon { + margin-top: 10px; + } + </ui:style> <d:SimpleDialogPanel width="760px" height="625px"> @@ -81,7 +87,10 @@ <e:EntityModelTextBoxEditor ui:field="nameEditor" addStyleNames="{style.nameEditor}"/> <e:EntityModelTextBoxEditor ui:field="descriptionEditor" addStyleNames="{style.descriptionEditor}"/> </g:HorizontalPanel> - <e:ListModelListBoxEditor ui:field="datacenterListEditor" addStyleNames="{style.datacenterListEditor}"/> + <g:HorizontalPanel> + <e:ListModelListBoxEditor ui:field="datacenterListEditor" addStyleNames="{style.datacenterListEditor}"/> + <g:Image ui:field="datacenterAlertIcon" resource='{resources.alertImage}' visible="false" addStyleNames="{style.dataCenterAlertIcon}"/> + </g:HorizontalPanel> <g:HorizontalPanel addStyleNames="{style.storageTypePanel}"> <e:ListModelListBoxEditor ui:field="storageTypeListEditor" addStyleNames="{style.storageTypeListEditor}"/> <e:ListModelListBoxEditor ui:field="formatListEditor" addStyleNames="{style.formatListEditor}"/> -- To view, visit http://gerrit.ovirt.org/13523 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I30c2b37f2cf59ef9c57ff96d1ffc4c23d452819e Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Tal Nisan <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
