Tal Nisan has uploaded a new change for review.

Change subject: webadmin: When adding a new VM disk, allow activation in 
certain VM statuses
......................................................................

webadmin: When adding a new VM disk, allow activation in certain VM statuses

When adding a disk to a VM, allow disk activation only for a VM in status
Up/Down/Paused otherwise the CDA in the plug disk command will fail, this
does not apply to disks with IDE interfaces which can only be activated
in a VM with a Down status

Change-Id: Idd625adb50ceaee3754f317d5751b78e29f7ea25
Bug-Url: https://bugzilla.redhat.com/1055224
Signed-off-by: Tal Nisan <[email protected]>
---
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/AbstractDiskModel.java
M 
frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java
2 files changed, 18 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/47/28147/1

diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/AbstractDiskModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/AbstractDiskModel.java
index c98cb3e..a8811d3 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/AbstractDiskModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/AbstractDiskModel.java
@@ -20,6 +20,7 @@
 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.VM;
 import org.ovirt.engine.core.common.businessentities.VMStatus;
 import org.ovirt.engine.core.common.businessentities.VolumeFormat;
 import org.ovirt.engine.core.common.businessentities.VolumeType;
@@ -685,11 +686,23 @@
             getIsPlugged().setEntity(false);
         }
         else {
-            getIsPlugged().setIsChangable(isEditEnabled());
-            getIsPlugged().setEntity(true);
+            if (!canDiskBePlugged(getVm())) {
+                getIsPlugged().setEntity(false);
+                
getIsPlugged().setChangeProhibitionReason(CONSTANTS.cannotPlugDiskIncorrectVmStatus());
+                getIsPlugged().setIsChangable(false);
+            }
+            else {
+                getIsPlugged().setIsChangable(isEditEnabled());
+                getIsPlugged().setEntity(true);
+            }
         }
     }
 
+    private boolean canDiskBePlugged(VM vm) {
+        return vm.getStatus() == VMStatus.Up || vm.getStatus() == 
VMStatus.Down || vm.getStatus() == VMStatus.Paused;
+    }
+
+
     private void wipeAfterDelete_EntityChanged(EventArgs e) {
         if (!getIsWipeAfterDelete().getIsChangable() && 
getIsWipeAfterDelete().getEntity())
         {
diff --git 
a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java
 
b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java
index f229a44..e0fd84d 100644
--- 
a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java
+++ 
b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIConstants.java
@@ -2251,6 +2251,9 @@
     @DefaultStringValue("When the VM is running, cannot activate a disk 
attached with IDE interface.")
     String cannotHotPlugDiskWithIdeInterface();
 
+    @DefaultStringValue("Cannot activate disk, VM should be in Down, Paused or 
Up status.")
+    String cannotPlugDiskIncorrectVmStatus();
+
     @DefaultStringValue("Unplug VM Network Interface")
     String unplugVnicTitle();
 


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Idd625adb50ceaee3754f317d5751b78e29f7ea25
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

Reply via email to