Liron Ar has uploaded a new change for review.

Change subject: core: RemoveVm - fix check when dettaching disks
......................................................................

core: RemoveVm - fix check when dettaching disks

When choosing to remove vm with attached disk snapshots and choosing to detach 
it's disks,
there's no need to check wether it's attached disk snapshots has snapshots
otherwise CDA message will be receieved always.

Change-Id: Idae8b7ebaa17fa715812ddfc7fe9667d6085eac1
Signed-off-by: Liron Aravot <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java
1 file changed, 9 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/59/20759/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java
index f646f4f..46ee613 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java
@@ -86,10 +86,7 @@
     }
 
     private boolean removeVm() {
-        final List<DiskImage> diskImages = 
ImagesHandler.filterImageDisks(getVm().getDiskList(),
-                true,
-                false,
-                true);
+        final List<DiskImage> diskImages = filtereredDiskImagesForRemoval();
 
         for (VmNic nic : getInterfaces()) {
             new ExternalNetworkManager(nic).deallocateIfExternal();
@@ -236,7 +233,7 @@
             return 
failCanDoAction(VdcBllMessages.VM_CANNOT_REMOVE_WITH_DETACH_DISKS_BASED_ON_TEMPLATE);
         }
 
-        for (Disk disk : getVm().getDiskList()) {
+        for (Disk disk : filtereredDiskImagesForRemoval()) {
             List<DiskImage> diskImageList = 
getDiskImageDao().getAllSnapshotsForImageGroup(disk.getId());
             if (diskImageList.size() > 1) {
                 return 
failCanDoAction(VdcBllMessages.VM_CANNOT_REMOVE_WITH_DETACH_DISKS_SNAPSHOTS_EXIST);
@@ -246,6 +243,13 @@
         return true;
     }
 
+    private List<DiskImage> filtereredDiskImagesForRemoval() {
+        return ImagesHandler.filterImageDisks(getVm().getDiskList(),
+                true,
+                false,
+                true);
+    }
+
     protected VdcReturnValueBase removeVmImages(List<DiskImage> images) {
         VdcReturnValueBase vdcRetValue =
                 
Backend.getInstance().runInternalAction(VdcActionType.RemoveAllVmImages,


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Idae8b7ebaa17fa715812ddfc7fe9667d6085eac1
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Liron Ar <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to