Allon Mureinik has uploaded a new change for review.

Change subject: core: Entities.deviceByDeviceId
......................................................................

core: Entities.deviceByDeviceId

Extracted Entities.deviceByDeviceId as its a similar usecase to the
pre-existing utility methods in this class.

Change-Id: If10b5036f310c1f0967d305adf77fbe07220a049
Signed-off-by: Allon Mureinik <amure...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/OvfDataUpdater.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/Entities.java
M 
backend/manager/modules/common/src/test/java/org/ovirt/engine/core/common/businessentities/EntitiesTest.java
3 files changed, 38 insertions(+), 3 deletions(-)


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

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/OvfDataUpdater.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/OvfDataUpdater.java
index 4db6c83..0fcff45 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/OvfDataUpdater.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/OvfDataUpdater.java
@@ -18,6 +18,7 @@
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.businessentities.Disk;
 import org.ovirt.engine.core.common.businessentities.DiskImage;
+import org.ovirt.engine.core.common.businessentities.Entities;
 import org.ovirt.engine.core.common.businessentities.ImageStatus;
 import org.ovirt.engine.core.common.businessentities.Snapshot;
 import org.ovirt.engine.core.common.businessentities.Snapshot.SnapshotStatus;
@@ -509,9 +510,7 @@
                 DbFacade.getInstance()
                         .getVmDeviceDao()
                         .getVmDeviceByVmIdAndType(vmBase.getId(), 
VmDeviceGeneralType.VIDEO);
-        for (VmDevice device : devices) {
-            managedDeviceMap.put(device.getDeviceId(), device);
-        }
+        managedDeviceMap.putAll(Entities.devicesByDeviceId(devices));
     }
 
     protected List<DiskImage> getAllImageSnapshots(DiskImage diskImage) {
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/Entities.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/Entities.java
index 65e2796..ed28481 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/Entities.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/Entities.java
@@ -105,6 +105,18 @@
         }
     }
 
+    public static Map<Guid, VmDevice> devicesByDeviceId(List<VmDevice> 
entityList) {
+        if (entityList != null && !entityList.isEmpty()) {
+            Map<Guid, VmDevice> map = new HashMap<Guid, VmDevice>();
+            for (VmDevice device : entityList) {
+                map.put(device.getDeviceId(), device);
+            }
+            return map;
+        } else {
+            return Collections.emptyMap();
+        }
+    }
+
     public static <E extends Nameable> Set<String> objectNames(Collection<E> 
entities) {
         if (entities != null && !entities.isEmpty()) {
             Set<String> names = new HashSet<String>();
diff --git 
a/backend/manager/modules/common/src/test/java/org/ovirt/engine/core/common/businessentities/EntitiesTest.java
 
b/backend/manager/modules/common/src/test/java/org/ovirt/engine/core/common/businessentities/EntitiesTest.java
index 0e929e9..f23d135 100644
--- 
a/backend/manager/modules/common/src/test/java/org/ovirt/engine/core/common/businessentities/EntitiesTest.java
+++ 
b/backend/manager/modules/common/src/test/java/org/ovirt/engine/core/common/businessentities/EntitiesTest.java
@@ -46,6 +46,30 @@
     }
 
     @Test
+    public void deviceByDeviceId() {
+        List<VmDevice> list = new ArrayList<VmDevice>();
+
+        VmDeviceId id1 = new VmDeviceId(GUIDs[0], GUIDs[1]);
+        VmDeviceId id2 = new VmDeviceId(GUIDs[2], GUIDs[3]);
+
+        VmDevice d1 = new VmDevice();
+        d1.setId(id1);
+        VmDevice d2 = new VmDevice();
+        d2.setId(id2);
+
+        list.add(d1);
+        list.add(d2);
+
+        Map<Guid, VmDevice> devicesByDeviceId = 
Entities.devicesByDeviceId(list);
+
+        Assert.assertTrue(devicesByDeviceId.containsKey(GUIDs[0]));
+        Assert.assertTrue(devicesByDeviceId.containsKey(GUIDs[2]));
+
+        Assert.assertFalse(devicesByDeviceId.containsKey(GUIDs[1]));
+        Assert.assertFalse(devicesByDeviceId.containsKey(GUIDs[3]));
+    }
+
+    @Test
     public void objectNames() {
         List<Network> list = new ArrayList<Network>();
         Network n1 = new Network();


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

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

Reply via email to