Daniel Erez has uploaded a new change for review.

Change subject: core: GetAllDisksByStorageDomainIdQuery - support Cinder disks
......................................................................

core: GetAllDisksByStorageDomainIdQuery - support Cinder disks

Support Cinder disks in GetAllDisksByStorageDomainIdQuery.

Change-Id: I3aa49823d72175f75dcc077c56b7ea53754076f1
Bug-Url: https://bugzilla.redhat.com/1185826
Signed-off-by: Daniel Erez <de...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetAllDisksByStorageDomainIdQuery.java
1 file changed, 27 insertions(+), 19 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/48/39648/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetAllDisksByStorageDomainIdQuery.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetAllDisksByStorageDomainIdQuery.java
index c544c77..546993c 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetAllDisksByStorageDomainIdQuery.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetAllDisksByStorageDomainIdQuery.java
@@ -6,6 +6,7 @@
 import java.util.Map;
 
 import org.ovirt.engine.core.bll.context.EngineContext;
+import org.ovirt.engine.core.common.businessentities.StorageDomain;
 import org.ovirt.engine.core.common.businessentities.storage.DiskImage;
 import org.ovirt.engine.core.common.queries.IdQueryParameters;
 import org.ovirt.engine.core.compat.Guid;
@@ -22,29 +23,36 @@
 
     @Override
     protected void executeQueryCommand() {
-        List<DiskImage> diskImages =
-                
getDbFacade().getDiskImageDao().getAllSnapshotsForStorageDomain(getParameters().getId());
-
-        Map<Guid, DiskImage> diskImagesMap = new HashMap<Guid, DiskImage>();
-
-        // Get active diskImages
-        for (DiskImage diskImage : diskImages) {
-            if (diskImage.getActive()) {
-                diskImage.getSnapshots().add(DiskImage.copyOf(diskImage));
-                diskImagesMap.put(diskImage.getId(), diskImage);
-            }
+        StorageDomain storageDomain = 
getDbFacade().getStorageDomainDao().get(getParameters().getId());
+        if (storageDomain.getStorageType().isCinderDomain()) {
+            List<DiskImage> diskImages = 
getDbFacade().getDiskImageDao().getAllForStorageDomain(getParameters().getId());
+            getQueryReturnValue().setReturnValue(diskImages);
         }
+        else {
+            List<DiskImage> diskImages =
+                    
getDbFacade().getDiskImageDao().getAllSnapshotsForStorageDomain(getParameters().getId());
 
-        // Update diskImages' snapshots
-        for (DiskImage diskImage : diskImages) {
-            if (!diskImage.getActive()) {
-                DiskImage activeImage = diskImagesMap.get(diskImage.getId());
-                if (activeImage != null) {
-                    activeImage.getSnapshots().add(diskImage);
+            Map<Guid, DiskImage> diskImagesMap = new HashMap<Guid, 
DiskImage>();
+
+            // Get active diskImages
+            for (DiskImage diskImage : diskImages) {
+                if (diskImage.getActive()) {
+                    diskImage.getSnapshots().add(DiskImage.copyOf(diskImage));
+                    diskImagesMap.put(diskImage.getId(), diskImage);
                 }
             }
-        }
 
-        getQueryReturnValue().setReturnValue(new 
ArrayList<DiskImage>(diskImagesMap.values()));
+            // Update diskImages' snapshots
+            for (DiskImage diskImage : diskImages) {
+                if (!diskImage.getActive()) {
+                    DiskImage activeImage = 
diskImagesMap.get(diskImage.getId());
+                    if (activeImage != null) {
+                        activeImage.getSnapshots().add(diskImage);
+                    }
+                }
+            }
+
+            getQueryReturnValue().setReturnValue(new 
ArrayList<DiskImage>(diskImagesMap.values()));
+        }
     }
 }


-- 
To view, visit https://gerrit.ovirt.org/39648
To unsubscribe, visit https://gerrit.ovirt.org/settings

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

Reply via email to