Amit Aviram has uploaded a new change for review.

Change subject: webadmin: Preventing moving a shareable disk to a Gluster domain
......................................................................

webadmin: Preventing moving a shareable disk to a Gluster domain

Gluster domian does not support shareable disks- therefore
UI now prevents this action.

Change-Id: Ibc2ea43f2131056c6f9ea86ecfb574fe71b638be
Bug-Url: https://bugzilla.redhat.com/1135771
Signed-off-by: Amit Aviram <aavi...@redhat.com>
---
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/MoveOrCopyDiskModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/CopyDiskModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/MoveDiskModel.java
3 files changed, 14 insertions(+), 6 deletions(-)


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

diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/MoveOrCopyDiskModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/MoveOrCopyDiskModel.java
index 638639d..98ccdb5 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/MoveOrCopyDiskModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/MoveOrCopyDiskModel.java
@@ -14,6 +14,7 @@
 import org.ovirt.engine.core.common.businessentities.QuotaEnforcementTypeEnum;
 import org.ovirt.engine.core.common.businessentities.StorageDomain;
 import org.ovirt.engine.core.common.businessentities.StoragePool;
+import org.ovirt.engine.core.common.businessentities.StorageType;
 import org.ovirt.engine.core.common.businessentities.VM;
 import org.ovirt.engine.core.common.businessentities.VMStatus;
 import 
org.ovirt.engine.core.common.businessentities.comparators.NameableComparator;
@@ -149,9 +150,9 @@
         }
     }
 
-    protected void onInitStorageDomains(ArrayList<StorageDomain> storages) {
+    protected void onInitStorageDomains(ArrayList<StorageDomain> storages, 
Disk disk) {
         for (StorageDomain storage : storages) {
-            if (Linq.isDataActiveStorageDomain(storage)) {
+            if (Linq.isDataActiveStorageDomain(storage) && 
isDiskValidForStorage(disk, storage)) {
                 getActiveStorageDomains().add(storage);
             }
         }
@@ -174,6 +175,13 @@
         }
     }
 
+    private boolean isDiskValidForStorage(Disk disk, StorageDomain storage) {
+        if (disk.isShareable() && 
storage.getStorageType().equals(StorageType.GLUSTERFS)) {
+            return false;
+        }
+        return true;
+    }
+
     protected void postInitStorageDomains() {
         for (DiskModel disk : getDisks()) {
             DiskImage diskImage = ((DiskImage) disk.getDisk());
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/CopyDiskModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/CopyDiskModel.java
index 756a62d..8448ef1 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/CopyDiskModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/templates/CopyDiskModel.java
@@ -47,7 +47,7 @@
 
     @Override
     protected void initStorageDomains() {
-        Disk disk = getDisks().get(0).getDisk();
+        final Disk disk = getDisks().get(0).getDisk();
         if (disk.getDiskStorageType() != DiskStorageType.IMAGE) {
             return;
         }
@@ -58,7 +58,7 @@
                 CopyDiskModel copyDiskModel = (CopyDiskModel) target;
                 ArrayList<StorageDomain> storageDomains = 
(ArrayList<StorageDomain>) returnValue;
 
-                copyDiskModel.onInitStorageDomains(storageDomains);
+                copyDiskModel.onInitStorageDomains(storageDomains, disk);
             }
         }), ((DiskImage) disk).getStoragePoolId());
     }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/MoveDiskModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/MoveDiskModel.java
index d3629da..c79877f 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/MoveDiskModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/MoveDiskModel.java
@@ -56,7 +56,7 @@
 
     @Override
     protected void initStorageDomains() {
-        Disk disk = getDisks().get(0).getDisk();
+        final Disk disk = getDisks().get(0).getDisk();
         if (disk.getDiskStorageType() != DiskStorageType.IMAGE) {
             return;
         }
@@ -66,7 +66,7 @@
             public void onSuccess(Object target, Object returnValue) {
                 MoveDiskModel moveDiskModel = (MoveDiskModel) target;
                 ArrayList<StorageDomain> storageDomains = 
(ArrayList<StorageDomain>) returnValue;
-                moveDiskModel.onInitStorageDomains(storageDomains);
+                moveDiskModel.onInitStorageDomains(storageDomains, disk);
             }
         }), ((DiskImage) disk).getStoragePoolId());
     }


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

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

Reply via email to