Tal Nisan has uploaded a new change for review.

Change subject: core: Move storage type checks from storage pool level to 
domain level
......................................................................

core: Move storage type checks from storage pool level to domain level

As a part of the effort to remove the type of storage pool the checks of
the storage type were moved to be performed on the storage domain rather
than on the storage pool

Change-Id: I4f1067fd1d299a93b9555c4714b4e85ff980a830
Signed-off-by: Tal Nisan <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVdsCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVdsGroupCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ChangeVDSClusterCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetDiskAlignmentCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVdsCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVdsGroupCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/memory/LiveSnapshotMemoryImageBuilder.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddLocalStorageDomainCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ConnectAllHostsToLunCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/FenceVdsManualyCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/RemoveStoragePoolCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/StorageDomainCommandBase.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/StoragePool.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterGuideModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterGuideModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterListModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterStorageListModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/ConfigureLocalStorageModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageModelBehavior.java
23 files changed, 63 insertions(+), 46 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/72/23072/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVdsCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVdsCommand.java
index f160018..df631cd 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVdsCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVdsCommand.java
@@ -486,7 +486,7 @@
         StoragePool storagePool = 
DbFacade.getInstance().getStoragePoolDao().getForVdsGroup(
                 getParameters().getVdsStaticData().getVdsGroupId());
 
-        if (storagePool != null && storagePool.getStorageType() == 
StorageType.LOCALFS) {
+        if (storagePool != null && storagePool.isLocal()) {
             if (!DbFacade.getInstance()
                     .getVdsStaticDao()
                     
.getAllForVdsGroup(getParameters().getVdsStaticData().getVdsGroupId())
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVdsGroupCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVdsGroupCommand.java
index 2d1bb1c..43f3639 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVdsGroupCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVdsGroupCommand.java
@@ -112,7 +112,7 @@
                         
VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_POOL_NOT_EXIST
                                 .toString());
                 result = false;
-            } else if (storagePool.getStorageType() == StorageType.LOCALFS) {
+            } else if (storagePool.isLocal()) {
                 // we allow only one cluster in localfs data center
                 if (!DbFacade.getInstance()
                         
.getVdsGroupDao().getAllForStoragePool(getVdsGroup().getStoragePoolId())
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ChangeVDSClusterCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ChangeVDSClusterCommand.java
index 3e6c080..031c974 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ChangeVDSClusterCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ChangeVDSClusterCommand.java
@@ -72,7 +72,7 @@
         }
 
         targetStoragePool = 
DbFacade.getInstance().getStoragePoolDao().getForVdsGroup(getTargetCluster().getId());
-        if (targetStoragePool != null && targetStoragePool.getStorageType() == 
StorageType.LOCALFS) {
+        if (targetStoragePool != null && targetStoragePool.isLocal()) {
             if 
(!DbFacade.getInstance().getVdsStaticDao().getAllForVdsGroup(getParameters().getClusterId()).isEmpty())
 {
                 
addCanDoActionMessage(VdcBllMessages.VDS_CANNOT_ADD_MORE_THEN_ONE_HOST_TO_LOCAL_STORAGE);
                 return false;
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java
index 4fe65e3..0bec444 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateAllSnapshotsFromVmCommand.java
@@ -66,7 +66,7 @@
 public class CreateAllSnapshotsFromVmCommand<T extends 
CreateAllSnapshotsFromVmParameters> extends VmCommand<T> implements 
QuotaStorageDependent, TaskHandlerCommand<CreateAllSnapshotsFromVmParameters> {
 
     private List<DiskImage> cachedSelectedActiveDisks;
-    private Guid cachedStorageDomainId = Guid.Empty;
+    private StorageDomain cachedStorageDomain;
     private String cachedSnapshotIsBeingTakenMessage;
     private Guid newActiveSnapshotId = Guid.newGuid();
 
@@ -154,15 +154,15 @@
         setSucceeded(true);
     }
 
-    public Guid getStorageDomainIdForVmMemory() {
-        if (cachedStorageDomainId.equals(Guid.Empty) && getVm() != null) {
+    private StorageDomain getStorageDomainForVmMemory() {
+        if (cachedStorageDomain == null && getVm() != null) {
             long sizeNeeded = getVm().getTotalMemorySizeInBytes() / 
BYTES_IN_GB;
             StorageDomain storageDomain = 
VmHandler.findStorageDomainForMemory(getVm().getStoragePoolId(), sizeNeeded);
             if (storageDomain != null) {
-                cachedStorageDomainId = storageDomain.getId();
+                cachedStorageDomain = storageDomain;
             }
         }
-        return cachedStorageDomainId;
+        return cachedStorageDomain;
     }
 
     private MemoryImageBuilder createMemoryImageBuilder() {
@@ -175,7 +175,7 @@
         }
 
         if (getParameters().isSaveMemory() && isLiveSnapshotApplicable()) {
-            return new LiveSnapshotMemoryImageBuilder(getVm(), 
getStorageDomainIdForVmMemory(), getStoragePool(), this);
+            return new LiveSnapshotMemoryImageBuilder(getVm(), 
getStorageDomainForVmMemory(), getStoragePool(), this);
         }
 
         return new NullableMemoryImageBuilder();
@@ -440,7 +440,7 @@
             }
         }
 
-        if (getParameters().isSaveMemory() && 
Guid.Empty.equals(getStorageDomainIdForVmMemory())) {
+        if (getParameters().isSaveMemory() && getStorageDomainForVmMemory() == 
null) {
             return 
failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_NO_SUITABLE_DOMAIN_FOUND);
         }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmCommand.java
index 8303a32..c4d5c72 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ExportVmCommand.java
@@ -341,7 +341,7 @@
 
         // if the data domains are block based storage, the memory volume type 
is preallocated
         // so we need to use copy collapse in order to convert it to be 
sparsed in the export domain
-        if (getStoragePool().getStorageType().isBlockDomain()) {
+        if (getStorageDomain().getStorageType().isBlockDomain()) {
             params.setUseCopyCollapse(true);
             params.setVolumeType(VolumeType.Sparse);
             params.setVolumeFormat(VolumeFormat.RAW);
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetDiskAlignmentCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetDiskAlignmentCommand.java
index c87f990..2c8fb77 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetDiskAlignmentCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetDiskAlignmentCommand.java
@@ -19,6 +19,8 @@
 import org.ovirt.engine.core.common.businessentities.DiskImage;
 import org.ovirt.engine.core.common.businessentities.ImageStatus;
 import org.ovirt.engine.core.common.businessentities.LunDisk;
+import org.ovirt.engine.core.common.businessentities.StorageDomain;
+import org.ovirt.engine.core.common.businessentities.StorageDomainStatic;
 import org.ovirt.engine.core.common.businessentities.StoragePool;
 import org.ovirt.engine.core.common.businessentities.VDS;
 import org.ovirt.engine.core.common.businessentities.VDSStatus;
@@ -100,18 +102,25 @@
             return 
failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_DISK_NOT_EXIST);
         }
 
+        if (getVm() == null) {
+            addCanDoActionMessage(String.format("$diskAliases %1$s", 
getDiskAlias()));
+            return 
failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_DISK_IS_NOT_VM_DISK);
+        }
+
         if (getDiskType() == DiskStorageType.IMAGE) {
             DiskImagesValidator diskImagesValidator = new 
DiskImagesValidator(Arrays.asList((DiskImage) getDisk()));
             if (!validate(diskImagesValidator.diskImagesNotLocked()) ||
                     !validate(diskImagesValidator.diskImagesNotIllegal())) {
                 return false;
             }
+
+            StorageDomainStatic sds = 
getStorageDomainStaticDAO().get(((DiskImage)getDisk()).getStorageIds().get(0));
+            if (!sds.getStorageType().isBlockDomain()) {
+                return 
failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_ALIGNMENT_SCAN_STORAGE_TYPE);
+            }
         }
 
-        if (getVm() == null) {
-            addCanDoActionMessage(String.format("$diskAliases %1$s", 
getDiskAlias()));
-            return 
failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_DISK_IS_NOT_VM_DISK);
-        }
+
 
         if (isImageExclusiveLockNeeded() && getVm().isRunningOrPaused()) {
             return 
failCanDoAction(VdcBllMessages.ERROR_CANNOT_RUN_ALIGNMENT_SCAN_VM_IS_RUNNING);
@@ -124,10 +133,6 @@
         StoragePool sp = getStoragePoolDao().get(getStoragePoolId());
         if (!validate(new StoragePoolValidator(sp).isUp())) {
             return false;
-        }
-
-        if (!sp.getStorageType().isBlockDomain()) {
-            return 
failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_ALIGNMENT_SCAN_STORAGE_TYPE);
         }
 
         return true;
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
index dd5f708..55a0827 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
@@ -52,6 +52,7 @@
 import org.ovirt.engine.core.common.businessentities.Snapshot.SnapshotStatus;
 import org.ovirt.engine.core.common.businessentities.Snapshot.SnapshotType;
 import org.ovirt.engine.core.common.businessentities.StorageDomain;
+import org.ovirt.engine.core.common.businessentities.StorageDomainStatic;
 import org.ovirt.engine.core.common.businessentities.StorageDomainType;
 import org.ovirt.engine.core.common.businessentities.VDSGroup;
 import org.ovirt.engine.core.common.businessentities.VM;
@@ -715,6 +716,7 @@
 
     private MoveOrCopyImageGroupParameters 
buildMoveOrCopyImageGroupParametersForMemoryDumpImage(Guid containerID,
             Guid storageId, Guid imageId, Guid volumeId) {
+
         MoveOrCopyImageGroupParameters params = new 
MoveOrCopyImageGroupParameters(containerID,
                 imageId, volumeId, imageId, volumeId, storageId, 
getMoveOrCopyImageOperation());
         params.setParentCommand(getActionType());
@@ -726,7 +728,8 @@
         params.setEntityInfo(new EntityInfo(VdcObjectType.VM, 
getVm().getId()));
         params.setParentParameters(getParameters());
 
-        if (getStoragePool().getStorageType().isBlockDomain()) {
+        StorageDomainStatic storageDomain = 
getStorageDomainStaticDAO().get(storageId);
+        if (storageDomain != null && 
storageDomain.getStorageType().isBlockDomain()) {
             params.setUseCopyCollapse(true);
             params.setVolumeType(VolumeType.Preallocated);
             params.setVolumeFormat(VolumeFormat.RAW);
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVdsCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVdsCommand.java
index 324c405..0e5614a 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVdsCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVdsCommand.java
@@ -84,7 +84,7 @@
         boolean returnValue = canRemoveVds(getVdsId(), 
getReturnValue().getCanDoActionMessages());
         StoragePool storagePool = 
getStoragePoolDAO().getForVds(getParameters().getVdsId());
 
-        if (returnValue && storagePool != null && storagePool.getStorageType() 
== StorageType.LOCALFS) {
+        if (returnValue && storagePool != null && storagePool.isLocal()) {
             if 
(!getStorageDomainDAO().getAllForStoragePool(storagePool.getId()).isEmpty()) {
                 returnValue = 
failCanDoAction(VdcBllMessages.VDS_CANNOT_REMOVE_HOST_WITH_LOCAL_STORAGE);
             }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVdsGroupCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVdsGroupCommand.java
index 8dfdfa4..29ebcd9 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVdsGroupCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVdsGroupCommand.java
@@ -290,7 +290,7 @@
         }
         if (result && getVdsGroup().getStoragePoolId() != null) {
             StoragePool storagePool = 
getStoragePoolDAO().get(getVdsGroup().getStoragePoolId());
-            if (oldGroup.getStoragePoolId() == null && 
storagePool.getStorageType() == StorageType.LOCALFS) {
+            if (oldGroup.getStoragePoolId() == null && storagePool.isLocal()) {
                 // we allow only one cluster in localfs data center
                 if 
(!getVdsGroupDAO().getAllForStoragePool(getVdsGroup().getStoragePoolId()).isEmpty())
 {
                     getReturnValue()
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/memory/LiveSnapshotMemoryImageBuilder.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/memory/LiveSnapshotMemoryImageBuilder.java
index e2676ca..f1b83a6 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/memory/LiveSnapshotMemoryImageBuilder.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/memory/LiveSnapshotMemoryImageBuilder.java
@@ -4,6 +4,7 @@
 import org.ovirt.engine.core.bll.HibernateVmCommand;
 import org.ovirt.engine.core.bll.tasks.TaskHandlerCommand;
 import org.ovirt.engine.core.common.VdcObjectType;
+import org.ovirt.engine.core.common.businessentities.StorageDomain;
 import org.ovirt.engine.core.common.businessentities.StoragePool;
 import org.ovirt.engine.core.common.businessentities.VM;
 import org.ovirt.engine.core.common.businessentities.VolumeFormat;
@@ -22,7 +23,7 @@
     private static final String CREATE_IMAGE_FOR_VM_TASK_KEY = 
"CREATE_IMAGE_FOR_VM_TASK_KEY";
     private static final String CREATE_IMAGE_FOR_MEMORY_DUMP_TASK_KEY = 
"CREATE_IMAGE_FOR_MEMORY_DUMP_TASK_KEY";
 
-    private Guid storageDomainId;
+    private StorageDomain storageDomain;
     private Guid memoryDumpImageGroupId;
     private Guid memoryDumpVolumeId;
     private Guid vmConfImageGroupId;
@@ -31,11 +32,11 @@
     private TaskHandlerCommand<?> enclosingCommand;
     private StoragePool storagePool;
 
-    public LiveSnapshotMemoryImageBuilder(VM vm, Guid storageDomainId,
+    public LiveSnapshotMemoryImageBuilder(VM vm, StorageDomain storageDomain,
             StoragePool storagePool, TaskHandlerCommand<?> enclosingCommand) {
         this.vm = vm;
         this.enclosingCommand = enclosingCommand;
-        this.storageDomainId = storageDomainId;
+        this.storageDomain = storageDomain;
         this.storagePool = storagePool;
         this.memoryDumpImageGroupId = Guid.newGuid();
         this.memoryDumpVolumeId = Guid.newGuid();
@@ -57,7 +58,7 @@
                         VDSCommandType.CreateImage,
                         new CreateImageVDSCommandParameters(
                                 storagePool.getId(),
-                                storageDomainId,
+                                storageDomain.getId(),
                                 vmConfImageGroupId,
                                 HibernateVmCommand.META_DATA_SIZE_IN_BYTES,
                                 VolumeType.Sparse,
@@ -87,10 +88,10 @@
                         VDSCommandType.CreateImage,
                         new CreateImageVDSCommandParameters(
                                 storagePool.getId(),
-                                storageDomainId,
+                                storageDomain.getId(),
                                 memoryDumpImageGroupId,
                                 vm.getTotalMemorySizeInBytes(),
-                                
HibernateVmCommand.getMemoryVolumeTypeForPool(storagePool.getStorageType()),
+                                
HibernateVmCommand.getMemoryVolumeTypeForPool(storageDomain.getStorageType()),
                                 VolumeFormat.RAW,
                                 memoryDumpVolumeId,
                                 ""));
@@ -106,13 +107,13 @@
                         retVal.getCreationInfo(),
                         enclosingCommand.getActionType(),
                         VdcObjectType.Storage,
-                        storageDomainId);
+                        storageDomain.getId());
         enclosingCommand.getTaskIdList().add(guid);
     }
 
     public String getVolumeStringRepresentation() {
         return MemoryUtils.createMemoryStateString(
-                storageDomainId,
+                storageDomain.getId(),
                 storagePool.getId(),
                 memoryDumpImageGroupId,
                 memoryDumpVolumeId,
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddLocalStorageDomainCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddLocalStorageDomainCommand.java
index 91d0688..47763b1 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddLocalStorageDomainCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddLocalStorageDomainCommand.java
@@ -47,7 +47,7 @@
 
             if (retVal &&
                     getStorageDomain().getStorageType() == StorageType.LOCALFS 
&&
-                    storagePool.getStorageType() != StorageType.LOCALFS) {
+                    !storagePool.isLocal()) {
                 
addCanDoActionMessage(VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_POOL_IS_NOT_LOCAL);
                 retVal = false;
             }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ConnectAllHostsToLunCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ConnectAllHostsToLunCommand.java
index bdabf10..131eef2 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ConnectAllHostsToLunCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ConnectAllHostsToLunCommand.java
@@ -10,6 +10,7 @@
 import org.ovirt.engine.core.common.action.ExtendSANStorageDomainParameters;
 import org.ovirt.engine.core.common.action.VdcReturnValueBase;
 import org.ovirt.engine.core.common.businessentities.LUNs;
+import org.ovirt.engine.core.common.businessentities.StorageType;
 import org.ovirt.engine.core.common.businessentities.VDS;
 import org.ovirt.engine.core.common.businessentities.VdsSpmStatus;
 import org.ovirt.engine.core.common.errors.VdcBLLException;
@@ -100,7 +101,7 @@
             for (Map.Entry<String, List<Guid>> entry : processed.entrySet()) {
                 for (Guid vdsId : entry.getValue()) {
                     LUNs lun = lunsMap.get(entry.getKey());
-                    
StorageHelperDirector.getInstance().getItem(getStoragePool().getStorageType())
+                    
StorageHelperDirector.getInstance().getItem(StorageType.ISCSI)
                             
.disconnectStorageFromLunByVdsId(getStorageDomain(), vdsId, lun);
                 }
             }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/FenceVdsManualyCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/FenceVdsManualyCommand.java
index cfbdbb4..ce4873f 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/FenceVdsManualyCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/FenceVdsManualyCommand.java
@@ -73,7 +73,7 @@
         // check problematic vds status
         if (IsLegalStatus(_problematicVds.getStatus())) {
             if (_problematicVds.getSpmStatus() == VdsSpmStatus.SPM) {
-                if(getStoragePool().getStorageType() != StorageType.LOCALFS) {
+                if(!getStoragePool().isLocal()) {
                     returnValue = returnValue && initializeVds();
                 }
                 if (returnValue && getStoragePool().getStatus() != 
StoragePoolStatus.NotOperational
@@ -178,7 +178,7 @@
                 && masterDomain.getStatus() != null
                 && (masterDomain.getStatus() == StorageDomainStatus.Active
                         || masterDomain.getStatus() == 
StorageDomainStatus.Unknown || masterDomain.getStatus() == 
StorageDomainStatus.InActive)) {
-            if (getStoragePool().getStorageType() != StorageType.LOCALFS) {
+            if (!getStoragePool().isLocal()) {
                 for (VDS vds : getAllRunningVdssInPool()) {
                     try {
                         SpmStatusResult statusResult = (SpmStatusResult) 
Backend
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/RemoveStoragePoolCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/RemoveStoragePoolCommand.java
index 4fb1ef8..0907702 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/RemoveStoragePoolCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/RemoveStoragePoolCommand.java
@@ -199,7 +199,7 @@
         });
 
         setSucceeded(true);
-        if (getStoragePool().getStorageType() != StorageType.LOCALFS) {
+        if (!getStoragePool().isLocal()) {
             for (VDS vds : vdss) {
                 
StorageHelperDirector.getInstance().getItem(getStoragePool().getStorageType())
                         .disconnectStorageFromDomainByVdsId(masterDomain, 
vds.getId());
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 ed51ebb..57a27a3 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
@@ -108,7 +108,7 @@
 
     protected boolean isNotLocalData(final boolean isInternal) {
         boolean returnValue = true;
-        if (this.getStoragePool().getStorageType() == StorageType.LOCALFS
+        if (this.getStoragePool().isLocal()
                 && getStorageDomain().getStorageDomainType() == 
StorageDomainType.Data
                 && !isInternal) {
             returnValue = false;
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/StoragePool.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/StoragePool.java
index 57d1179..710f59a 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/StoragePool.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/StoragePool.java
@@ -113,6 +113,13 @@
         storageType = value;
     }
 
+    /**
+     * @return True is the Storage Pool is local, false if it's shared
+     */
+    public boolean isLocal() {
+        return storageType == StorageType.LOCALFS;
+    }
+
     public StorageFormatType getStoragePoolFormatType() {
         return storagePoolFormatType;
     }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterGuideModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterGuideModel.java
index 0d48713..a9e8ed8 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterGuideModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterGuideModel.java
@@ -229,7 +229,7 @@
                             model.dataCenter = (StoragePool) returnValue;
 
                             if (model.dataCenter == null
-                                    || model.dataCenter.getStorageType() != 
StorageType.LOCALFS)
+                                    || !model.dataCenter.isLocal())
                             {
                                 model.updateOptionsNonLocalFSData();
                             }
@@ -280,7 +280,7 @@
                     public void onSuccess(Object target, Object returnValue) {
                         dataCenter = (StoragePool) returnValue;
 
-                        boolean isMultiHostDC = dataCenter.getStorageType() == 
StorageType.LOCALFS;
+                        boolean isMultiHostDC = dataCenter.isLocal();
                         if (isMultiHostDC) {
                             model.setMultiSelection(false);
                         }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterModel.java
index aa1d758..f265c41 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterModel.java
@@ -1330,7 +1330,7 @@
         {
             return;
         }
-        if (selectedDataCenter.getStorageType() == StorageType.LOCALFS)
+        if (selectedDataCenter.isLocal())
         {
             setIsResiliencePolicyTabAvailable(false);
         }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterGuideModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterGuideModel.java
index da06b8c..919a0ab 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterGuideModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterGuideModel.java
@@ -537,7 +537,7 @@
         {
             startProgress(null);
 
-            if (getEntity().getStorageType() != StorageType.LOCALFS)
+            if (!getEntity().isLocal())
             {
                 updateOptionsNonLocalFSData();
             }
@@ -1429,7 +1429,7 @@
 
         // In case of local storage, do not show the cluster selection in host 
select menu as there can be only one cluster in that case
         //also only one host is allowed in the cluster so we should disable 
multi selection
-        boolean isMultiHostDC = getEntity().getStorageType() == 
StorageType.LOCALFS;
+        boolean isMultiHostDC = getEntity().isLocal();
         if (isMultiHostDC) {
             model.getCluster().setIsAvailable(false);
             model.setMultiSelection(false);
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterListModel.java
index 8ccce21..a4e1ac2 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterListModel.java
@@ -855,7 +855,7 @@
         }
 
         getRecoveryStorageCommand().setIsExecutionAllowed(items != null && 
items.size() == 1
-                && 
!items.iterator().next().getStorageType().equals(StorageType.LOCALFS));
+                && !items.iterator().next().isLocal());
 
         // System tree dependent actions.
         boolean isAvailable =
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterStorageListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterStorageListModel.java
index db69e50..ded60aa 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterStorageListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterStorageListModel.java
@@ -692,7 +692,7 @@
 
         if (getEntity() != null)
         {
-            
getAttachStorageCommand().setIsExecutionAllowed(getEntity().getStorageType() != 
StorageType.LOCALFS);
+            
getAttachStorageCommand().setIsExecutionAllowed(getEntity().isLocal());
         }
 
         boolean isMasterPresents = false;
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/ConfigureLocalStorageModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/ConfigureLocalStorageModel.java
index bed1f29..ffd974d 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/ConfigureLocalStorageModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/ConfigureLocalStorageModel.java
@@ -235,7 +235,7 @@
                 useCurrentSettings = true;
             } else {
 
-                if (tempCandidate != null && tempCandidate.getStorageType() == 
StorageType.LOCALFS) {
+                if (tempCandidate != null && tempCandidate.isLocal()) {
                     setMessage(ConstantsManager.getInstance()
                             .getConstants()
                             .noteLocalStorageAlreadyConfiguredForThisHostMsg()
@@ -571,7 +571,7 @@
 
     private boolean isLocalDataCenterEmpty(StoragePool dataCenter) {
 
-        if (dataCenter != null && dataCenter.getStorageType() == 
StorageType.LOCALFS
+        if (dataCenter != null && dataCenter.isLocal()
                 && dataCenter.getStatus() == StoragePoolStatus.Uninitialized) {
             return true;
         }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageModelBehavior.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageModelBehavior.java
index d004a99..4a76b3a 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageModelBehavior.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageModelBehavior.java
@@ -114,6 +114,6 @@
     }
 
     protected boolean isLocalDataCenter(StoragePool dataCenter) {
-        return dataCenter.getStorageType() == StorageType.LOCALFS;
+        return dataCenter.isLocal();
     }
 }


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

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

Reply via email to