[NEW PATCH] BZ#717658 - Remove SDF.create() (via gerrit-bot)

Eduardo Warszawski ewarszaw at redhat.com
Sun Sep 18 07:22:22 UTC 2011


New patch submitted by Eduardo Warszawski (ewarszaw at redhat.com)

You can review this change at: http://gerrit.usersys.redhat.com/642

commit 1945cfa6f84381feaa8b6c8a001bd5df5efeeaee
Author: Eduardo Warszawski <ewarszaw at redhat.com>
Date:   Fri Jul 1 06:58:20 2011 +0300

    BZ#717658 - Remove SDF.create()
    
    Change-Id: I31b64def7aea87d4d3a94950abc8e96fbe3c4b8a

diff --git a/vdsm/storage/hsm.py b/vdsm/storage/hsm.py
index 84e688a..5d398e0 100644
--- a/vdsm/storage/hsm.py
+++ b/vdsm/storage/hsm.py
@@ -34,6 +34,8 @@ from collections import defaultdict
 import sp
 import sd
 import blockSD
+import nfsSD
+import localFsSD
 import spm
 import lvm
 import fileUtils
@@ -1209,8 +1211,15 @@ class HSM:
 
         #getSharedLock(connectionsResource...)
         #getExclusiveLock(sdUUID...)
-        SDF.create(sdUUID=sdUUID, storageType=storageType, domainName=domainName,
-                domClass=domClass, typeSpecificArg=typeSpecificArg, version=domVersion)
+        if storageType in sd.BLOCK_DOMAIN_TYPES:
+            newSD = blockSD.BlockStorageDomain.create(sdUUID, domainName, domClass, typeSpecificArg, storageType, domVersion)
+        elif storageType == sd.NFS_DOMAIN:
+            newSD = nfsSD.NfsStorageDomain.create(sdUUID, domainName, domClass, typeSpecificArg, storageType, domVersion)
+        elif storageType == sd.LOCALFS_DOMAIN:
+            newSD = localFsSD.LocalFsStorageDomain.create(sdUUID, domainName, domClass, typeSpecificArg, storageType, domVersion)
+        else:
+            raise se.StorageDomainTypeError(storageType)
+        SDF.manuallyAddDomain(newSD)
 
 
     def public_validateStorageDomain(self, sdUUID, options = None):
diff --git a/vdsm/storage/sdf.py b/vdsm/storage/sdf.py
index c2587d8..6fa56f8 100644
--- a/vdsm/storage/sdf.py
+++ b/vdsm/storage/sdf.py
@@ -22,7 +22,6 @@ from config import config
 import logging
 
 import sdc
-import sd
 import storage_exception as se
 
 
@@ -31,6 +30,11 @@ class StorageDomainFactory:
     storage_repository = config.get('irs', 'repository')
     __sdc = sdc.StorageDomainCache(storage_repository)
 
+    #WARNING! The parameters of the following two methods are not symmetric.
+    @classmethod
+    def manuallyAddDomain(cls, sd):
+        cls.__sdc.manuallyAddDomain(sd)
+
     @classmethod
     def manuallyRemoveDomain(cls, sdUUID):
         cls.__sdc.manuallyRemoveDomain(sdUUID)
@@ -48,38 +52,6 @@ class StorageDomainFactory:
 
 
     @classmethod
-    def create(cls, sdUUID, storageType, domainName, domClass, typeSpecificArg, version):
-        """
-        Create a new Storage domain
-        """
-        import nfsSD
-        import localFsSD
-        import blockSD
-
-        newSD = None
-        if storageType in [sd.NFS_DOMAIN]:
-            newSD = nfsSD.NfsStorageDomain.create(sdUUID=sdUUID,
-                domainName=domainName, domClass=domClass,
-                remotePath=typeSpecificArg, storageType=storageType,
-                version=version)
-        elif storageType in [sd.LOCALFS_DOMAIN]:
-            newSD = localFsSD.LocalFsStorageDomain.create(sdUUID=sdUUID,
-                domainName=domainName, domClass=domClass,
-                remotePath=typeSpecificArg, storageType=storageType,
-                version=version)
-        elif storageType in [sd.ISCSI_DOMAIN, sd.FCP_DOMAIN]:
-            newSD = blockSD.BlockStorageDomain.create(sdUUID=sdUUID,
-                domainName=domainName, domClass=domClass,
-                vgUUID=typeSpecificArg, storageType=storageType,
-                version=version)
-        else:
-            raise se.StorageDomainTypeError(storageType)
-
-        cls.__sdc.manuallyAddDomain(newSD)
-        return newSD
-
-
-    @classmethod
     def getAllUUIDs(cls):
         return cls.__sdc.getUUIDs()
 




More information about the vdsm-patches mailing list