Frank Kobzik has uploaded a new change for review.

Change subject: frontend: Utilize builders for copying graphics devices to 
params
......................................................................

frontend: Utilize builders for copying graphics devices to params

This patch utilizes builders remove duplicate code when copying
graphics devices from UnitVmModel to Vm/Template Management params.

Change-Id: Id4fd6ac3d8ea187787243f8a5d72dc954b25debb
Signed-off-by: Frantisek Kobzik <fkob...@redhat.com>
---
A 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/builders/vm/UnitToGraphicsDeviceParamsBuilder.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/instancetypes/InstanceTypeListModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/pools/PoolListModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateListModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalListModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmListModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmSnapshotListModel.java
7 files changed, 43 insertions(+), 121 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/37/36637/1

diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/builders/vm/UnitToGraphicsDeviceParamsBuilder.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/builders/vm/UnitToGraphicsDeviceParamsBuilder.java
new file mode 100644
index 0000000..0e4da00
--- /dev/null
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/builders/vm/UnitToGraphicsDeviceParamsBuilder.java
@@ -0,0 +1,26 @@
+package org.ovirt.engine.ui.uicommonweb.builders.vm;
+
+import org.ovirt.engine.core.common.action.HasGraphicsDevices;
+import org.ovirt.engine.core.common.businessentities.GraphicsDevice;
+import org.ovirt.engine.core.common.businessentities.GraphicsType;
+import org.ovirt.engine.ui.uicommonweb.builders.BaseSyncBuilder;
+import org.ovirt.engine.ui.uicommonweb.models.vms.UnitVmModel;
+
+public class UnitToGraphicsDeviceParamsBuilder extends 
BaseSyncBuilder<UnitVmModel, HasGraphicsDevices> {
+
+    @Override
+    protected void build(UnitVmModel source, HasGraphicsDevices destination) {
+        if (source.getDisplayType().getSelectedItem() == null || 
source.getGraphicsType().getSelectedItem() == null) {
+            return;
+        }
+
+        for (GraphicsType graphicsType : GraphicsType.values()) {
+            destination.getGraphicsDevices().put(graphicsType, null); // reset
+            if 
(source.getGraphicsType().getSelectedItem().getBackingGraphicsType().contains(graphicsType))
 {
+                GraphicsDevice d = new 
GraphicsDevice(graphicsType.getCorrespondingDeviceType());
+                destination.getGraphicsDevices().put(d.getGraphicsType(), d);
+            }
+        }
+    }
+
+}
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/instancetypes/InstanceTypeListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/instancetypes/InstanceTypeListModel.java
index 7bdf852..fa69aeb 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/instancetypes/InstanceTypeListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/instancetypes/InstanceTypeListModel.java
@@ -9,8 +9,6 @@
 import org.ovirt.engine.core.common.action.UpdateVmTemplateParameters;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.action.VmTemplateParametersBase;
-import org.ovirt.engine.core.common.businessentities.GraphicsDevice;
-import org.ovirt.engine.core.common.businessentities.GraphicsType;
 import org.ovirt.engine.core.common.businessentities.InstanceType;
 import org.ovirt.engine.core.common.businessentities.VM;
 import org.ovirt.engine.core.common.businessentities.VmBase;
@@ -34,6 +32,7 @@
 import 
org.ovirt.engine.ui.uicommonweb.builders.vm.HwOnlyCoreUnitToVmBaseBuilder;
 import 
org.ovirt.engine.ui.uicommonweb.builders.vm.MigrationOptionsUnitToVmBaseBuilder;
 import org.ovirt.engine.ui.uicommonweb.builders.vm.NameUnitToVmBaseBuilder;
+import 
org.ovirt.engine.ui.uicommonweb.builders.vm.UnitToGraphicsDeviceParamsBuilder;
 import 
org.ovirt.engine.ui.uicommonweb.builders.vm.UsbPolicyUnitToVmBaseBuilder;
 import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
 import org.ovirt.engine.ui.uicommonweb.help.HelpTag;
@@ -242,7 +241,7 @@
 
         setVmWatchdogToParams(model, addInstanceTypeParameters);
         setRngDeviceToParams(model, addInstanceTypeParameters);
-        setGraphicsDevicesToParams(model, addInstanceTypeParameters);
+        BuilderExecutor.build(model, addInstanceTypeParameters, new 
UnitToGraphicsDeviceParamsBuilder());
 
         getWindow().startProgress(null);
 
@@ -275,7 +274,7 @@
 
         setVmWatchdogToParams(model, updateInstanceTypeParameters);
         setRngDeviceToParams(model, updateInstanceTypeParameters);
-        setGraphicsDevicesToParams(model, updateInstanceTypeParameters);
+        BuilderExecutor.build(model, updateInstanceTypeParameters, new 
UnitToGraphicsDeviceParamsBuilder());
 
         getWindow().startProgress(null);
 
@@ -400,20 +399,6 @@
     private void setRngDeviceToParams(UnitVmModel model, 
VmTemplateParametersBase parameters) {
         parameters.setUpdateRngDevice(true);
         parameters.setRngDevice(model.getIsRngEnabled().getEntity() ? 
model.generateRngDevice() : null);
-    }
-
-    private void setGraphicsDevicesToParams(final UnitVmModel model, 
VmTemplateParametersBase params) {
-        if (model.getDisplayType().getSelectedItem() == null || 
model.getGraphicsType().getSelectedItem() == null) {
-            return;
-        }
-
-        for (GraphicsType graphicsType : GraphicsType.values()) {
-            params.getGraphicsDevices().put(graphicsType, null); // reset
-            if 
(model.getGraphicsType().getSelectedItem().getBackingGraphicsType().contains(graphicsType))
 {
-                GraphicsDevice d = new 
GraphicsDevice(graphicsType.getCorrespondingDeviceType());
-                params.getGraphicsDevices().put(d.getGraphicsType(), d);
-            }
-        }
     }
 
     @Override
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/pools/PoolListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/pools/PoolListModel.java
index b4a6aaf..c66611b 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/pools/PoolListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/pools/PoolListModel.java
@@ -9,8 +9,6 @@
 import org.ovirt.engine.core.common.action.VdcActionParametersBase;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.action.VmPoolParametersBase;
-import org.ovirt.engine.core.common.businessentities.GraphicsDevice;
-import org.ovirt.engine.core.common.businessentities.GraphicsType;
 import org.ovirt.engine.core.common.businessentities.StoragePool;
 import org.ovirt.engine.core.common.businessentities.VM;
 import org.ovirt.engine.core.common.businessentities.VmPool;
@@ -29,6 +27,7 @@
 import org.ovirt.engine.ui.frontend.Frontend;
 import org.ovirt.engine.ui.frontend.INewAsyncCallback;
 import org.ovirt.engine.ui.uicommonweb.Cloner;
+import 
org.ovirt.engine.ui.uicommonweb.builders.vm.UnitToGraphicsDeviceParamsBuilder;
 import org.ovirt.engine.ui.uicommonweb.models.templates.LatestVmTemplate;
 import org.ovirt.engine.ui.uicommonweb.Linq;
 import org.ovirt.engine.ui.uicommonweb.UICommand;
@@ -479,7 +478,7 @@
                         
param.setSoundDeviceEnabled(model.getIsSoundcardEnabled().getEntity());
                         
param.setBalloonEnabled(model.getMemoryBalloonDeviceEnabled().getEntity());
 
-                        setGraphicsDevicesToParams(model, param);
+                        BuilderExecutor.build(model, param, new 
UnitToGraphicsDeviceParamsBuilder());
 
                         if (model.getQuota().getSelectedItem() != null) {
                             
vm.setQuotaId(model.getQuota().getSelectedItem().getId());
@@ -517,20 +516,6 @@
                     }
                 }),
                 name);
-    }
-
-    private void setGraphicsDevicesToParams(PoolModel model, 
AddVmPoolWithVmsParameters params) {
-        if (model.getDisplayType().getSelectedItem() == null || 
model.getGraphicsType().getSelectedItem() == null) {
-            return;
-        }
-
-        for (GraphicsType graphicsType : GraphicsType.values()) {
-            params.getGraphicsDevices().put(graphicsType, null); // reset
-            if 
(model.getGraphicsType().getSelectedItem().getBackingGraphicsType().contains(graphicsType))
 {
-                GraphicsDevice d = new 
GraphicsDevice(graphicsType.getCorrespondingDeviceType());
-                params.getGraphicsDevices().put(d.getGraphicsType(), d);
-            }
-        }
     }
 
     protected static VM buildVmOnSave(PoolModel model) {
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateListModel.java
index 22aa20a..d189da4 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/TemplateListModel.java
@@ -14,8 +14,6 @@
 import org.ovirt.engine.core.common.action.VdcReturnValueBase;
 import org.ovirt.engine.core.common.action.VmTemplateParametersBase;
 import org.ovirt.engine.core.common.businessentities.DiskImage;
-import org.ovirt.engine.core.common.businessentities.GraphicsDevice;
-import org.ovirt.engine.core.common.businessentities.GraphicsType;
 import org.ovirt.engine.core.common.businessentities.StoragePool;
 import org.ovirt.engine.core.common.businessentities.VmTemplate;
 import org.ovirt.engine.core.common.businessentities.VmTemplateStatus;
@@ -36,6 +34,7 @@
 import org.ovirt.engine.ui.uicommonweb.builders.BuilderExecutor;
 import 
org.ovirt.engine.ui.uicommonweb.builders.template.VersionNameUnitToVmBaseBuilder;
 import org.ovirt.engine.ui.uicommonweb.builders.vm.FullUnitToVmBaseBuilder;
+import 
org.ovirt.engine.ui.uicommonweb.builders.vm.UnitToGraphicsDeviceParamsBuilder;
 import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
 import org.ovirt.engine.ui.uicommonweb.help.HelpTag;
 import org.ovirt.engine.ui.uicommonweb.models.ConfirmationModel;
@@ -637,7 +636,7 @@
         UpdateVmTemplateParameters parameters = new 
UpdateVmTemplateParameters(template);
         
parameters.setConsoleEnabled(model.getIsConsoleDeviceEnabled().getEntity());
         setVmWatchdogToParams(model, parameters);
-        setGraphicsDevicesToParams(model, parameters);
+        BuilderExecutor.build(model, parameters, new 
UnitToGraphicsDeviceParamsBuilder());
         
parameters.setSoundDeviceEnabled(model.getIsSoundcardEnabled().getEntity());
         setVmRngDeviceToParams(model, parameters);
 
@@ -651,20 +650,6 @@
 
                     }
                 }, this);
-    }
-
-    private void setGraphicsDevicesToParams(final UnitVmModel model, 
VmTemplateParametersBase params) {
-        if (model.getDisplayType().getSelectedItem() == null || 
model.getGraphicsType().getSelectedItem() == null) {
-            return;
-        }
-
-        for (GraphicsType graphicsType : GraphicsType.values()) {
-            params.getGraphicsDevices().put(graphicsType, null); // reset
-            if 
(model.getGraphicsType().getSelectedItem().getBackingGraphicsType().contains(graphicsType))
 {
-                GraphicsDevice d = new 
GraphicsDevice(graphicsType.getCorrespondingDeviceType());
-                params.getGraphicsDevices().put(d.getGraphicsType(), d);
-            }
-        }
     }
 
     @SuppressWarnings("unchecked")
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalListModel.java
index 4ec8ed2..5f59a36 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalListModel.java
@@ -16,10 +16,7 @@
 import org.ovirt.engine.core.common.action.VdcActionParametersBase;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.action.VmManagementParametersBase;
-import org.ovirt.engine.core.common.action.VmTemplateParametersBase;
 import org.ovirt.engine.core.common.businessentities.DisplayType;
-import org.ovirt.engine.core.common.businessentities.GraphicsDevice;
-import org.ovirt.engine.core.common.businessentities.GraphicsType;
 import org.ovirt.engine.core.common.businessentities.StorageDomain;
 import org.ovirt.engine.core.common.businessentities.StoragePool;
 import org.ovirt.engine.core.common.businessentities.VDS;
@@ -47,6 +44,7 @@
 import org.ovirt.engine.ui.uicommonweb.builders.vm.CommonUnitToVmBaseBuilder;
 import org.ovirt.engine.ui.uicommonweb.builders.vm.FullUnitToVmBaseBuilder;
 import 
org.ovirt.engine.ui.uicommonweb.builders.vm.KernelParamsVmBaseToVmBaseBuilder;
+import 
org.ovirt.engine.ui.uicommonweb.builders.vm.UnitToGraphicsDeviceParamsBuilder;
 import 
org.ovirt.engine.ui.uicommonweb.builders.vm.UsbPolicyVmBaseToVmBaseBuilder;
 import org.ovirt.engine.ui.uicommonweb.builders.vm.VmSpecificUnitToVmBuilder;
 import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
@@ -671,7 +669,7 @@
         
addVmTemplateParameters.setCopyVmPermissions(model.getCopyPermissions().getEntity());
         addVmTemplateParameters.setUpdateRngDevice(true);
         
addVmTemplateParameters.setRngDevice(model.getIsRngEnabled().getEntity() ? 
model.generateRngDevice() : null);
-        setGraphicsDevicesToParams(model, addVmTemplateParameters);
+        BuilderExecutor.build(model, addVmTemplateParameters, new 
UnitToGraphicsDeviceParamsBuilder());
         if (model.getIsSubTemplate().getEntity()) {
             
addVmTemplateParameters.setBaseTemplateId(model.getBaseTemplate().getSelectedItem().getId());
             
addVmTemplateParameters.setTemplateVersionName(model.getTemplateVersionName().getEntity());
@@ -1138,7 +1136,7 @@
         
parameters.setSoundDeviceEnabled(model.getIsSoundcardEnabled().getEntity());
         
parameters.setConsoleEnabled(model.getIsConsoleDeviceEnabled().getEntity());
         setRngDeviceToParams(model, parameters);
-        setGraphicsDevicesToParams(model, parameters);
+        BuilderExecutor.build(model, parameters, new 
UnitToGraphicsDeviceParamsBuilder());
 
         if (!StringHelper.isNullOrEmpty(model.getVmId().getEntity())) {
             vm.setId(new Guid(model.getVmId().getEntity()));
@@ -1184,7 +1182,7 @@
         
params.setConsoleEnabled(model.getIsConsoleDeviceEnabled().getEntity());
         setRngDeviceToParams(model, params);
         params.setApplyChangesLater(applyCpuChangesLater);
-        setGraphicsDevicesToParams(model, params);
+        BuilderExecutor.build(model, params, new 
UnitToGraphicsDeviceParamsBuilder());
 
         return params;
     }
@@ -1468,34 +1466,6 @@
     @Override
     protected ConsoleContext getConsoleContext() {
         return ConsoleContext.UP_EXTENDED;
-    }
-
-    private void setGraphicsDevicesToParams(final UnitVmModel model, 
VmManagementParametersBase params) {
-        if (model.getDisplayType().getSelectedItem() == null || 
model.getGraphicsType().getSelectedItem() == null) {
-            return;
-        }
-
-        for (GraphicsType graphicsType : GraphicsType.values()) {
-            params.getGraphicsDevices().put(graphicsType, null); // reset
-            if 
(model.getGraphicsType().getSelectedItem().getBackingGraphicsType().contains(graphicsType))
 {
-                GraphicsDevice d = new 
GraphicsDevice(graphicsType.getCorrespondingDeviceType());
-                params.getGraphicsDevices().put(d.getGraphicsType(), d);
-            }
-        }
-    }
-
-    private void setGraphicsDevicesToParams(final UnitVmModel model, 
VmTemplateParametersBase params) {
-        if (model.getDisplayType().getSelectedItem() == null || 
model.getGraphicsType().getSelectedItem() == null) {
-            return;
-        }
-
-        for (GraphicsType graphicsType : GraphicsType.values()) {
-            params.getGraphicsDevices().put(graphicsType, null); // reset
-            if 
(model.getGraphicsType().getSelectedItem().getBackingGraphicsType().contains(graphicsType))
 {
-                GraphicsDevice d = new 
GraphicsDevice(graphicsType.getCorrespondingDeviceType());
-                params.getGraphicsDevices().put(d.getGraphicsType(), d);
-            }
-        }
     }
 
 }
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 753917b..0027d5b 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
@@ -34,8 +34,6 @@
 import org.ovirt.engine.core.common.businessentities.Disk;
 import org.ovirt.engine.core.common.businessentities.Disk.DiskStorageType;
 import org.ovirt.engine.core.common.businessentities.DiskImage;
-import org.ovirt.engine.core.common.businessentities.GraphicsDevice;
-import org.ovirt.engine.core.common.businessentities.GraphicsType;
 import org.ovirt.engine.core.common.businessentities.HaMaintenanceMode;
 import org.ovirt.engine.core.common.businessentities.IVdcQueryable;
 import org.ovirt.engine.core.common.businessentities.Quota;
@@ -77,6 +75,7 @@
 import org.ovirt.engine.ui.uicommonweb.builders.vm.FullUnitToVmBaseBuilder;
 import 
org.ovirt.engine.ui.uicommonweb.builders.vm.KernelParamsVmBaseToVmBaseBuilder;
 import 
org.ovirt.engine.ui.uicommonweb.builders.vm.MigrationOptionsVmBaseToVmBaseBuilder;
+import 
org.ovirt.engine.ui.uicommonweb.builders.vm.UnitToGraphicsDeviceParamsBuilder;
 import 
org.ovirt.engine.ui.uicommonweb.builders.vm.UsbPolicyVmBaseToVmBaseBuilder;
 import org.ovirt.engine.ui.uicommonweb.builders.vm.VmSpecificUnitToVmBuilder;
 import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
@@ -2113,7 +2112,7 @@
         updateVmParams.setApplyChangesLater(applyCpuChangesLater);
         updateVmParams.setUpdateNuma(model.isNumaChanged());
         setRngDeviceToParams(model, updateVmParams);
-        setGraphicsDevicesToParams(model, updateVmParams);
+        BuilderExecutor.build(model, updateVmParams, new 
UnitToGraphicsDeviceParamsBuilder());
 
         return updateVmParams;
     }
@@ -2140,7 +2139,7 @@
         
parameters.setVirtioScsiEnabled(model.getIsVirtioScsiEnabled().getEntity());
         setVmWatchdogToParams(model, parameters);
         setRngDeviceToParams(model, parameters);
-        setGraphicsDevicesToParams(model, parameters);
+        BuilderExecutor.build(model, parameters, new 
UnitToGraphicsDeviceParamsBuilder());
 
         Frontend.getInstance().runAction(
                 model.getProvisioning().getEntity() ? 
VdcActionType.AddVmFromTemplate : VdcActionType.AddVm,
@@ -2190,20 +2189,6 @@
             vmWatchdog.setAction(model.getWatchdogAction().getSelectedItem());
             vmWatchdog.setModel(wdModel);
             updateVmParams.setWatchdog(vmWatchdog);
-        }
-    }
-
-    private void setGraphicsDevicesToParams(final UnitVmModel model, 
VmManagementParametersBase params) {
-        if (model.getDisplayType().getSelectedItem() == null || 
model.getGraphicsType().getSelectedItem() == null) {
-            return;
-        }
-
-        for (GraphicsType graphicsType : GraphicsType.values()) {
-            params.getGraphicsDevices().put(graphicsType, null); // reset
-            if 
(model.getGraphicsType().getSelectedItem().getBackingGraphicsType().contains(graphicsType))
 {
-                GraphicsDevice d = new 
GraphicsDevice(graphicsType.getCorrespondingDeviceType());
-                params.getGraphicsDevices().put(d.getGraphicsType(), d);
-            }
         }
     }
 
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmSnapshotListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmSnapshotListModel.java
index f53c3b0..23c6d00 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmSnapshotListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmSnapshotListModel.java
@@ -16,8 +16,6 @@
 import org.ovirt.engine.core.common.action.VdcReturnValueBase;
 import org.ovirt.engine.core.common.businessentities.Disk;
 import org.ovirt.engine.core.common.businessentities.DiskImage;
-import org.ovirt.engine.core.common.businessentities.GraphicsDevice;
-import org.ovirt.engine.core.common.businessentities.GraphicsType;
 import org.ovirt.engine.core.common.businessentities.Snapshot;
 import org.ovirt.engine.core.common.businessentities.SnapshotActionEnum;
 import org.ovirt.engine.core.common.businessentities.Snapshot.SnapshotStatus;
@@ -38,6 +36,7 @@
 import org.ovirt.engine.ui.uicommonweb.UICommand;
 import org.ovirt.engine.ui.uicommonweb.builders.BuilderExecutor;
 import org.ovirt.engine.ui.uicommonweb.builders.vm.FullUnitToVmBaseBuilder;
+import 
org.ovirt.engine.ui.uicommonweb.builders.vm.UnitToGraphicsDeviceParamsBuilder;
 import org.ovirt.engine.ui.uicommonweb.builders.vm.VmSpecificUnitToVmBuilder;
 import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
 import org.ovirt.engine.ui.uicommonweb.help.HelpTag;
@@ -722,7 +721,8 @@
         
parameters.setConsoleEnabled(model.getIsConsoleDeviceEnabled().getEntity());
         
parameters.setVirtioScsiEnabled(model.getIsVirtioScsiEnabled().getEntity());
         
parameters.setBalloonEnabled(model.getMemoryBalloonDeviceEnabled().getEntity());
-        setGraphicsDevicesToParams(model, parameters);
+
+        BuilderExecutor.build(model, parameters, new 
UnitToGraphicsDeviceParamsBuilder());
 
         model.startProgress(null);
 
@@ -741,20 +741,6 @@
                         }
                     }
                 }, this);
-    }
-
-    private void setGraphicsDevicesToParams(final UnitVmModel model, 
AddVmFromSnapshotParameters  params) {
-        if (model.getDisplayType().getSelectedItem() == null || 
model.getGraphicsType().getSelectedItem() == null) {
-            return;
-        }
-
-        for (GraphicsType graphicsType : GraphicsType.values()) {
-            params.getGraphicsDevices().put(graphicsType, null); // reset
-            if 
(model.getGraphicsType().getSelectedItem().getBackingGraphicsType().contains(graphicsType))
 {
-                GraphicsDevice d = new 
GraphicsDevice(graphicsType.getCorrespondingDeviceType());
-                params.getGraphicsDevices().put(d.getGraphicsType(), d);
-            }
-        }
     }
 
     protected static void buildVmOnClone(UnitVmModel model, VM vm) {


-- 
To view, visit http://gerrit.ovirt.org/36637
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Id4fd6ac3d8ea187787243f8a5d72dc954b25debb
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Frank Kobzik <fkob...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to