Vered Volansky has uploaded a new change for review.

Change subject: core: ImportVMTemplateCommand storage allocation
......................................................................

core: ImportVMTemplateCommand storage allocation

This patch is a part of a series of patches, adding storage allocation
validations to the system when they're missing, and replacing old
verification usage with unified, new, correct and tested verification.
This patch did this for ImportVmTemplateCommand, using only existing
validations. Removing old verification in this command resulted in
unused old validation and validation aids, which were also removed in
this patch.

Change-Id: I6ffc5c00905bb03c9cb3cbffa481e78c9b0ab87a
Bug-Url: https://bugzilla.redhat.com/1136721
Signed-off-by: Vered Volansky <vvola...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyTemplateCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/StorageDomainCommandBase.java
3 files changed, 3 insertions(+), 29 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/44/33044/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java
index f299fb7..476de1f 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java
@@ -182,23 +182,11 @@
         }
 
         if (retVal && getImages() != null && !getImages().isEmpty() && 
!isImagesAlreadyOnTarget()) {
-            Map<StorageDomain, Integer> domainMap = 
getSpaceRequirementsForStorageDomains(
-                    new 
ArrayList<DiskImage>(getVmTemplate().getDiskImageMap().values()));
-            if (domainMap.isEmpty()) {
-                int sz = 0;
-                if (getVmTemplate().getDiskImageMap() != null) {
-                    for (DiskImage image : 
getVmTemplate().getDiskImageMap().values()) {
-                        sz += image.getSize();
-                    }
-                }
-                domainMap.put(getStorageDomain(), sz);
-            }
-            for (Map.Entry<StorageDomain, Integer> entry : 
domainMap.entrySet()) {
-                if (!doesStorageDomainhaveSpaceForRequest(entry.getKey(), 
entry.getValue())) {
-                    return false;
-                }
+            if (!validateSpaceRequirements(getImages())) {
+                return false;
             }
         }
+
         if (retVal) {
             retVal = validateMacAddress(Entities.<VmNic, VmNetworkInterface> 
upcast(getVmTemplate().getInterfaces()));
         }
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 b5a7a6d..d54e24e 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
@@ -337,15 +337,6 @@
         return getStorageDomainDAO().getForStoragePool(domainId, 
getStoragePool().getId());
     }
 
-    protected Map<StorageDomain, Integer> 
getSpaceRequirementsForStorageDomains(Collection<DiskImage> images) {
-        Map<DiskImage, StorageDomain> spaceMap = new HashMap<DiskImage, 
StorageDomain>();
-        for (DiskImage image : images) {
-            StorageDomain domain = 
getStorageDomain(imageToDestinationDomainMap.get(image.getId()));
-            spaceMap.put(image, domain);
-        }
-        return 
StorageDomainValidator.getSpaceRequirementsForStorageDomains(spaceMap);
-    }
-
     /**
      * Space Validations are done using data extracted from the disks. The 
disks in question in this command
      * don't have all the needed data, and in order not to contaminate the 
command's data structures, an alter
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/StorageDomainCommandBase.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/StorageDomainCommandBase.java
index ae3d3fb..f421bd1 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/StorageDomainCommandBase.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/StorageDomainCommandBase.java
@@ -14,7 +14,6 @@
 import org.ovirt.engine.core.bll.context.CommandContext;
 import org.ovirt.engine.core.bll.context.CompensationContext;
 import org.ovirt.engine.core.bll.utils.PermissionSubject;
-import org.ovirt.engine.core.bll.validator.StorageDomainValidator;
 import org.ovirt.engine.core.common.VdcObjectType;
 import org.ovirt.engine.core.common.action.StorageDomainParametersBase;
 import 
org.ovirt.engine.core.common.businessentities.LUN_storage_server_connection_map;
@@ -115,10 +114,6 @@
             }
         }
         return returnValue;
-    }
-
-    protected boolean doesStorageDomainhaveSpaceForRequest(StorageDomain 
storageDomain, long sizeRequested) {
-        return validate(new 
StorageDomainValidator(storageDomain).isDomainHasSpaceForRequest(sizeRequested));
     }
 
     protected boolean isNotLocalData(final boolean isInternal) {


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

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

Reply via email to