Arik Hadas has uploaded a new change for review. Change subject: webadmin: add memory column to snapshot subtab ......................................................................
webadmin: add memory column to snapshot subtab Add column to the snapshot subtab that contains checkbox which reflects whether the snapshot contains memory state or not. Change-Id: Ic9a5159f84fff98377526da336759445e41068f3 Bug-Url: https://bugzilla.redhat.com/960931 Signed-off-by: Arik Hadas <aha...@redhat.com> --- M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/VmSnapshotListModelTable.java 3 files changed, 45 insertions(+), 3 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/84/15684/1 diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java index 6d857ce..99431ee 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java @@ -90,7 +90,8 @@ VncKeyboardLayoutValidValues(ConfigAuthType.User), SupportCustomDeviceProperties(ConfigAuthType.User), CustomDeviceProperties(ConfigAuthType.User), - MultipleGatewaysSupported + MultipleGatewaysSupported, + MemorySnapshotSupported ; public static enum ConfigAuthType { diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java index f3669d7..a2cafcb 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java @@ -584,6 +584,9 @@ @DefaultStringValue("Status") String statusSnapshot(); + @DefaultStringValue("Memory") + String memorySnapshot(); + @DefaultStringValue("Disks") String disksSnapshot(); diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/VmSnapshotListModelTable.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/VmSnapshotListModelTable.java index 8652474..2eee274 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/VmSnapshotListModelTable.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/VmSnapshotListModelTable.java @@ -4,7 +4,9 @@ import org.ovirt.engine.core.common.businessentities.Snapshot; import org.ovirt.engine.core.common.businessentities.Snapshot.SnapshotStatus; import org.ovirt.engine.core.common.businessentities.Snapshot.SnapshotType; +import org.ovirt.engine.core.common.businessentities.VM; import org.ovirt.engine.core.common.queries.CommandVersionsInfo; +import org.ovirt.engine.core.common.queries.ConfigurationValues; import org.ovirt.engine.ui.common.CommonApplicationConstants; import org.ovirt.engine.ui.common.CommonApplicationMessages; import org.ovirt.engine.ui.common.CommonApplicationTemplates; @@ -14,6 +16,7 @@ import org.ovirt.engine.ui.common.widget.renderer.FullDateTimeRenderer; import org.ovirt.engine.ui.common.widget.table.OrderedMultiSelectionModel; import org.ovirt.engine.ui.common.widget.table.SimpleActionTable; +import org.ovirt.engine.ui.common.widget.table.column.CheckboxColumn; import org.ovirt.engine.ui.common.widget.table.column.EnumColumn; import org.ovirt.engine.ui.common.widget.table.column.SafeHtmlColumn; import org.ovirt.engine.ui.common.widget.table.column.TextColumnWithTooltip; @@ -52,6 +55,7 @@ private final CommonApplicationMessages messages; private final CommonApplicationTemplates templates; + private final CommonApplicationConstants constants; VmSnapshotInfoPanel vmSnapshotInfoPanel; @@ -62,6 +66,7 @@ CommonApplicationTemplates templates) { super(modelProvider, eventBus, clientStorage, false); + this.constants = constants; this.messages = messages; this.templates = templates; @@ -92,7 +97,7 @@ return FullDateTimeRenderer.getLocalizedDateTimeFormat().format(snapshot.getCreationDate()); } }; - getTable().addColumn(dateColumn, constants.dateSnapshot(), "185px"); //$NON-NLS-1$ + getTable().addColumn(dateColumn, constants.dateSnapshot(), "150px"); //$NON-NLS-1$ TextColumnWithTooltip<Snapshot> statusColumn = new EnumColumn<Snapshot, SnapshotStatus>() { @Override @@ -100,7 +105,19 @@ return snapshot.getStatus(); } }; - getTable().addColumn(statusColumn, constants.statusSnapshot(), "95px"); //$NON-NLS-1$ + getTable().addColumn(statusColumn, constants.statusSnapshot(), "75px"); //$NON-NLS-1$ + + final CheckboxColumn<Snapshot> memoryColumn = new CheckboxColumn<Snapshot>() { + @Override + public Boolean getValue(Snapshot object) { + return !object.getMemoryVolume().isEmpty(); + } + + @Override + protected boolean canEdit(Snapshot object) { + return false; + } + }; SafeHtmlColumn<Snapshot> descriptionColumn = new SafeHtmlColumn<Snapshot>() { @Override @@ -129,6 +146,13 @@ initActionButtons(constants); disableActiveSnapshotRow(); + updateMemoryColumnVisibility(memoryColumn); + getModel().getEntityChangedEvent().addListener(new IEventListener() { + @Override + public void eventRaised(Event ev, Object sender, EventArgs args) { + updateMemoryColumnVisibility(memoryColumn); + } + }); // Add selection listener getModel().getSelectedItemChangedEvent().addListener(new IEventListener() { @@ -143,6 +167,20 @@ }); } + private void updateMemoryColumnVisibility(CheckboxColumn<Snapshot> memoryColumn) { + VM vm = (VM) getModel().getEntity(); + if (vm == null) { + return; + } + + boolean memorySnapshotSupported = + (Boolean) AsyncDataProvider.getConfigValuePreConverted( + ConfigurationValues.MemorySnapshotSupported, + vm.getVdsGroupCompatibilityVersion().toString()); + getTable().ensureColumnPresent(memoryColumn, constants.memorySnapshot(), + memorySnapshotSupported, "55px"); //$NON-NLS-1$ + } + private void initActionButtons(final CommonApplicationConstants constants) { getTable().addActionButton(new UiCommandButtonDefinition<Snapshot>(getEventBus(), constants.createSnapshot()) { @Override -- To view, visit http://gerrit.ovirt.org/15684 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic9a5159f84fff98377526da336759445e41068f3 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Arik Hadas <aha...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches