Maor Lipchuk has uploaded a new change for review.

Change subject: core: Initialze images for unregistered VM/Template
......................................................................

core: Initialze images for unregistered VM/Template

initialize the images with the relevant storagePoolId which now, the
Storage Domain is attached to.
Also initialize the images in the parameters and in the Template so the
Import process would add them to the DB.

Change-Id: Icb9c68c2b28cceb1800ed21ecb9d9d24a4a05cac
Signed-off-by: Maor Lipchuk <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmFromConfigurationCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateFromConfigurationCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyTemplateCommand.java
3 files changed, 16 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/63/28163/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmFromConfigurationCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmFromConfigurationCommand.java
index b9c9827..f1f399d 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmFromConfigurationCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmFromConfigurationCommand.java
@@ -55,7 +55,7 @@
             if (!validate(new 
StorageDomainValidator(getStorageDomain()).isDomainExistAndActive())) {
                 return false;
             }
-
+            setImagesWithStoragePoolId(getStorageDomain().getStoragePoolId(), 
getVm().getImages());
             if (!getStorageDomain().getStorageDomainType().isDataDomain()) {
                 return 
failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_DOMAIN_TYPE_UNSUPPORTED,
                         String.format("$domainId %1$s", 
getParameters().getStorageDomainId()),
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateFromConfigurationCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateFromConfigurationCommand.java
index 770aae4..011f962 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateFromConfigurationCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateFromConfigurationCommand.java
@@ -1,7 +1,11 @@
 package org.ovirt.engine.core.bll;
 
+import java.util.ArrayList;
+import java.util.List;
+
 import org.ovirt.engine.core.bll.validator.StorageDomainValidator;
 import org.ovirt.engine.core.common.action.ImportVmTemplateParameters;
+import org.ovirt.engine.core.common.businessentities.DiskImage;
 import org.ovirt.engine.core.common.businessentities.OvfEntityData;
 import org.ovirt.engine.core.common.businessentities.VmTemplate;
 import org.ovirt.engine.core.common.errors.VdcBllMessages;
@@ -51,14 +55,16 @@
             if (!validate(new 
StorageDomainValidator(getStorageDomain()).isDomainExistAndActive())) {
                 return false;
             }
-
             if (!getStorageDomain().getStorageDomainType().isDataDomain()) {
                 return 
failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_DOMAIN_TYPE_UNSUPPORTED,
                         String.format("$domainId %1$s", 
getParameters().getStorageDomainId()),
                         String.format("$domainType %1$s", 
getStorageDomain().getStorageDomainType()));
             }
         }
-        getParameters().setImages(getVmTemplate().getImages());
+        List<DiskImage> disks = new 
ArrayList(getVmTemplate().getDiskTemplateMap().values());
+        setImagesWithStoragePoolId(getStorageDomain().getStoragePoolId(), 
disks);
+        getParameters().setImages(disks);
+        getVmTemplate().setImages((ArrayList)disks);
         return super.canDoAction();
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyTemplateCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyTemplateCommand.java
index fa8f257..208ac75 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyTemplateCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyTemplateCommand.java
@@ -435,4 +435,11 @@
         disk.setImageId(Guid.newGuid());
         return newGuidForDisk;
     }
+
+    protected void setImagesWithStoragePoolId(Guid storagePoolId, 
List<DiskImage> diskImages) {
+        for (DiskImage diskImage : diskImages) {
+            diskImage.setStoragePoolId(storagePoolId);
+        }
+    }
+
 }


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

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

Reply via email to