Eli Mesika has uploaded a new change for review. Change subject: webadmin: Adding external status to UI ......................................................................
webadmin: Adding external status to UI This patch actually displays the external status icon in the storage domain main view. Change-Id: I569130b66dadbcdce1cd32a5cd8a2a8d7a3501cb Signed-off-by: emesika <emes...@redhat.com> --- M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabStorageView.java A frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainAdditionalStatusColumn.java 2 files changed, 61 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/38/42138/1 diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabStorageView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabStorageView.java index 87c7e93..673fb53 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabStorageView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabStorageView.java @@ -29,6 +29,7 @@ import org.ovirt.engine.ui.webadmin.widget.action.WebAdminButtonDefinition; import org.ovirt.engine.ui.webadmin.widget.action.WebAdminMenuBarButtonDefinition; import org.ovirt.engine.ui.webadmin.widget.table.column.CommentColumn; +import org.ovirt.engine.ui.webadmin.widget.table.column.StorageDomainAdditionalStatusColumn; import org.ovirt.engine.ui.webadmin.widget.table.column.StorageDomainSharedStatusColumn; import com.google.gwt.core.client.GWT; @@ -55,6 +56,7 @@ getTable().enableColumnResizing(); getTable().addColumn(new StorageDomainSharedStatusColumn(), constants.empty(), "30px"); //$NON-NLS-1$ + getTable().addColumn(new StorageDomainAdditionalStatusColumn(), constants.empty(), "30px"); //$NON-NLS-1$ AbstractTextColumn<StorageDomain> nameColumn = new AbstractTextColumn<StorageDomain>() { @Override diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainAdditionalStatusColumn.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainAdditionalStatusColumn.java new file mode 100644 index 0000000..9448e34 --- /dev/null +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/StorageDomainAdditionalStatusColumn.java @@ -0,0 +1,59 @@ +package org.ovirt.engine.ui.webadmin.widget.table.column; + +import com.google.gwt.resources.client.ImageResource; +import com.google.gwt.safehtml.shared.SafeHtml; +import org.ovirt.engine.core.common.businessentities.ExternalStatus; +import org.ovirt.engine.core.common.businessentities.StorageDomain; +import org.ovirt.engine.ui.webadmin.ApplicationConstants; +import org.ovirt.engine.ui.webadmin.gin.AssetProvider; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +public class StorageDomainAdditionalStatusColumn extends EntityAdditionalStatusColumn<StorageDomain> { + + private final static ApplicationConstants constants = AssetProvider.getConstants(); + + + @Override + public SafeHtml getEntityValue(StorageDomain object) { + List<SafeHtml> imagesHtml = new ArrayList(getSafeHtmlStringMap(object).keySet()); + if (! imagesHtml.isEmpty()) { + return MultiImageColumnHelper.getValue(imagesHtml); + } + return null; + } + + @Override + public SafeHtml getEntityTooltip(StorageDomain object) { + Map<SafeHtml, String> imagesToText = getSafeHtmlStringMap(object); + if (!imagesToText.isEmpty()) { + return MultiImageColumnHelper.getTooltip(imagesToText); + } + return null; + } + + private Map<SafeHtml, String> getSafeHtmlStringMap(StorageDomain object) { + StorageDomain storageDomain = getEntityObject(object); + Map<SafeHtml, String> imagesToText = new LinkedHashMap<>(); + + if (storageDomain.getExternalStatus() != ExternalStatus.Ok) { + ImageResource statusImage = getStatusImage(storageDomain.getExternalStatus()); + imagesToText.put(getImageSafeHtml(statusImage), + constants.ExternalStatus() + storageDomain.getExternalStatus().name()); + } + return imagesToText; + } + + @Override + protected StorageDomain getEntityObject(StorageDomain object) { + if (object instanceof StorageDomain){ + return object; + } + else { + return null; + } + } +} -- To view, visit https://gerrit.ovirt.org/42138 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I569130b66dadbcdce1cd32a5cd8a2a8d7a3501cb Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Eli Mesika <emes...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches