Frank Kobzik has uploaded a new change for review. Change subject: userportal: Information about console in use ......................................................................
userportal: Information about console in use This patch adds a visual information whether some user is using a console in basic userportal. This information is reflected in 2 places: - the background of a vm with occupied console is greyed-out when not selected (same colour as when the vm is not running). - text "console in use" is displayed in vm the status description for occupied vms. Change-Id: Iab751373de21066ba5bfc41a73fab55e831bca69 Signed-off-by: Frantisek Kobzik <[email protected]> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalItemModel.java M frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/ApplicationConstants.java M frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/presenter/tab/basic/MainTabBasicListItemPresenterWidget.java M frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/view/tab/basic/MainTabBasicListItemView.java M frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/view/tab/basic/MainTabBasicListItemView.ui.xml 5 files changed, 37 insertions(+), 14 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/84/36884/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalItemModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalItemModel.java index 1c61935..6661615 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalItemModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalItemModel.java @@ -11,7 +11,9 @@ import org.ovirt.engine.core.common.businessentities.VmPool; import org.ovirt.engine.core.common.businessentities.VmPoolType; import org.ovirt.engine.core.common.utils.ObjectUtils; +import org.ovirt.engine.core.common.utils.Pair; import org.ovirt.engine.core.compat.Guid; +import org.ovirt.engine.core.compat.StringHelper; import org.ovirt.engine.ui.uicommonweb.UICommand; import org.ovirt.engine.ui.uicommonweb.models.EntityModel; import org.ovirt.engine.ui.uicommonweb.models.VmConsoles; @@ -402,6 +404,15 @@ return null; } + public Pair<VMStatus, Boolean> getStatusWithConsoleState() { + boolean consoleTaken = false; + if (getVM() != null) { + consoleTaken = !StringHelper.isNullOrEmpty(getVM().getConsoleCurentUserName()); + } + + return new Pair<> (getStatus(), consoleTaken); + } + public VmConsoles getVmConsoles() { return vmConsoles; } diff --git a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/ApplicationConstants.java b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/ApplicationConstants.java index c237674..eb3f537 100644 --- a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/ApplicationConstants.java +++ b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/ApplicationConstants.java @@ -352,4 +352,7 @@ @DefaultStringValue("Exceeded") String exceededQuota(); + + @DefaultStringValue("Console in use") + String consoleInUse(); } diff --git a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/presenter/tab/basic/MainTabBasicListItemPresenterWidget.java b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/presenter/tab/basic/MainTabBasicListItemPresenterWidget.java index 8cde9a9..55ee034 100644 --- a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/presenter/tab/basic/MainTabBasicListItemPresenterWidget.java +++ b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/presenter/tab/basic/MainTabBasicListItemPresenterWidget.java @@ -48,7 +48,7 @@ void setSelected(); - void setNotSelected(boolean vmIsUp); + void setNotSelected(boolean vmIsUp, boolean consoleInUse); void showErrorDialog(String message); @@ -98,7 +98,7 @@ @Override public void eventRaised(Event<? extends EventArgs> ev, Object sender, EventArgs args) { if (!sameEntity(listModel.getSelectedItem(), model)) { - getView().setNotSelected(model.isVmUp()); + getView().setNotSelected(model.isVmUp(), consoleInUse()); } else { getView().setSelected(); } @@ -268,4 +268,8 @@ boolean isSelected() { return sameEntity(listModel.getSelectedItem(), model); } + + boolean consoleInUse() { + return model.getStatusWithConsoleState().getSecond(); + } } diff --git a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/view/tab/basic/MainTabBasicListItemView.java b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/view/tab/basic/MainTabBasicListItemView.java index 596f3b4..dc0cef6 100644 --- a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/view/tab/basic/MainTabBasicListItemView.java +++ b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/view/tab/basic/MainTabBasicListItemView.java @@ -1,6 +1,7 @@ package org.ovirt.engine.ui.userportal.section.main.view.tab.basic; import org.ovirt.engine.core.common.businessentities.VMStatus; +import org.ovirt.engine.core.common.utils.Pair; import org.ovirt.engine.ui.common.utils.ElementIdUtils; import org.ovirt.engine.ui.common.view.AbstractView; import org.ovirt.engine.ui.uicommonweb.ErrorPopupManager; @@ -53,7 +54,7 @@ String itemOverStyle(); - String itemNotRunningStyle(); + String itemNotRunningOrConsoleTakenStyle(); String itemRunningStyle(); @@ -91,8 +92,8 @@ VmPausedImage vmPausedImage; @UiField(provided = true) - @Path("status") - ValueLabel<VMStatus> vmStatus; + @Path("statusWithConsoleState") + ValueLabel<Pair<VMStatus, Boolean>> vmStatus; @UiField @Path("name") @@ -133,10 +134,14 @@ this.constants = constants; this.errorPopupManager = errorPopupManager; - vmStatus = new ValueLabel<VMStatus>(new AbstractRenderer<VMStatus>() { + final String consoleInUse = constants.consoleInUse(); + vmStatus = new ValueLabel<>(new AbstractRenderer<Pair<VMStatus, Boolean>> () { @Override - public String render(VMStatus object) { - return translator.translate(object.name()); + public String render(Pair<VMStatus, Boolean> object) { + if (object.getSecond()) { + return consoleInUse; + } + return translator.translate(object.getFirst().name()); } }); @@ -266,7 +271,7 @@ @Override public void setVmDownStyle() { - mainContainer.setStyleName(style.itemNotRunningStyle()); + mainContainer.setStyleName(style.itemNotRunningOrConsoleTakenStyle()); } @Override @@ -281,12 +286,12 @@ } @Override - public void setNotSelected(boolean vmIsUp) { + public void setNotSelected(boolean vmIsUp, boolean consoleInUse) { vmStatus.setStyleName(style.machineStatusStyle()); - if (vmIsUp) { + if (vmIsUp && !consoleInUse) { mainContainer.setStyleName(style.itemRunningStyle()); } else { - mainContainer.setStyleName(style.itemNotRunningStyle()); + mainContainer.setStyleName(style.itemNotRunningOrConsoleTakenStyle()); } } diff --git a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/view/tab/basic/MainTabBasicListItemView.ui.xml b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/view/tab/basic/MainTabBasicListItemView.ui.xml index ae30436..f613054 100644 --- a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/view/tab/basic/MainTabBasicListItemView.ui.xml +++ b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/section/main/view/tab/basic/MainTabBasicListItemView.ui.xml @@ -80,7 +80,7 @@ height: 210px; } - .basicVmViewBoxStyle, .itemSelectedStyle, .itemOverStyle, .itemNotRunningStyle, .itemRunningStyle { + .basicVmViewBoxStyle, .itemSelectedStyle, .itemOverStyle, .itemNotRunningOrConsoleTakenStyle, .itemRunningStyle { border-style: solid; border-width: 2px; border-radius: 9px; @@ -99,7 +99,7 @@ background-color: #B5C5D7; } - .itemNotRunningStyle { + .itemNotRunningOrConsoleTakenStyle { background-color: #E1E1E1; } -- To view, visit http://gerrit.ovirt.org/36884 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Iab751373de21066ba5bfc41a73fab55e831bca69 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Frank Kobzik <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
