Allon Mureinik has uploaded a new change for review.

Change subject: core: RemoveSnapshot preview validation
......................................................................

core: RemoveSnapshot preview validation

In RemoveSnapshot, moved the validation that the VM is not
in preview from ImagesHandler to SnapshotValidator, which is a more
logical place for it.

This patch contains the aforementioned change in RemoveSnapshot's code,
and the required adjustments to the mocking done in
RemoveSnapshotCommandTest to allow it to continue functioning.

Note: This patch is part of a series of patches aimed at removing the
preview validation from ImagesHandler altogether.

Change-Id: Ib42871fecd4738a77c657f07a464c8dd68dee592
Signed-off-by: Allon Mureinik <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotCommand.java
M 
backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/RemoveSnapshotCommandTest.java
2 files changed, 7 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/84/11184/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotCommand.java
index dec0c70..4681672 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotCommand.java
@@ -162,6 +162,7 @@
         initializeObjectState();
 
         if (!validateVmNotDuringSnapshot() ||
+                !validateVmNotInPreview() ||
                 !validateSnapshotExists() ||
                 !validate(new VmValidator(getVm()).vmDown()) ||
                 !validateImagesAndVMStates()) {
@@ -199,6 +200,10 @@
         return 
validate(createSnapshotValidator().vmNotDuringSnapshot(getVmId()));
     }
 
+    protected boolean validateVmNotInPreview() {
+        return validate(createSnapshotValidator().vmNotInPreview(getVmId()));
+    }
+
     protected boolean validateSnapshotExists() {
         return validate(createSnapshotValidator().snapshotExists(getVmId(), 
getParameters().getSnapshotId()));
     }
@@ -208,7 +213,7 @@
     protected boolean validateImagesAndVMStates() {
         return ImagesHandler.PerformImagesChecks(getVm(), 
getReturnValue().getCanDoActionMessages(),
                 getVm().getStoragePoolId(), Guid.Empty,
-                hasImages(), hasImages(), hasImages(), hasImages(), true, 
true, true, null);
+                hasImages(), hasImages(), hasImages(), hasImages(), false, 
true, true, null);
     }
 
     protected boolean validateImageNotInTemplate() {
diff --git 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/RemoveSnapshotCommandTest.java
 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/RemoveSnapshotCommandTest.java
index ab95187..5d84635 100644
--- 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/RemoveSnapshotCommandTest.java
+++ 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/RemoveSnapshotCommandTest.java
@@ -85,6 +85,7 @@
 
         cmd.setSnapshotName("someSnapshot");
         
doReturn(ValidationResult.VALID).when(snapshotValidator).vmNotDuringSnapshot(any(Guid.class));
+        
doReturn(ValidationResult.VALID).when(snapshotValidator).vmNotInPreview(any(Guid.class));
         
doReturn(ValidationResult.VALID).when(snapshotValidator).snapshotExists(any(Guid.class),
 any(Guid.class));
         doReturn(true).when(cmd).validateImagesAndVMStates();
         doReturn(vm).when(cmd).getVm();


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

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

Reply via email to