New patch submitted by Eduardo Warszawski (ewarszaw(a)redhat.com)
You can review this change at:
http://gerrit.usersys.redhat.com/644
commit 2251ee5307d71a8a34896172552cea8b548f0bc4
Author: Eduardo Warszawski <ewarszaw(a)redhat.com>
Date: Fri Jul 1 10:11:47 2011 +0300
BZ#717658 - Remove sdf.py
Change-Id: I19d178e3b37fa119dc8a44815bb5055535c95241
diff --git a/vdsm.spec.in b/vdsm.spec.in
index f1a3473..00f0b25 100644
--- a/vdsm.spec.in
+++ b/vdsm.spec.in
@@ -296,7 +296,6 @@ machines without running real guests.
%{_datadir}/%{vdsm_name}/storage/devicemapper.py*
%{_datadir}/%{vdsm_name}/storage/multipath.py*
%{_datadir}/%{vdsm_name}/storage/sdc.py*
-%{_datadir}/%{vdsm_name}/storage/sdf.py*
%{_datadir}/%{vdsm_name}/storage/persistentDict.py*
%{_libexecdir}/%{vdsm_name}/safelease
%{_libexecdir}/%{vdsm_name}/spmprotect.sh
diff --git a/vdsm/storage/Makefile.am b/vdsm/storage/Makefile.am
index 766687a..22ed2a3 100644
--- a/vdsm/storage/Makefile.am
+++ b/vdsm/storage/Makefile.am
@@ -34,7 +34,6 @@ dist_vdsmstorage_DATA = \
resourceManager.py \
safelease.py \
sdc.py \
- sdf.py \
sd.py \
spm.py \
sp.py \
diff --git a/vdsm/storage/blockVolume.py b/vdsm/storage/blockVolume.py
index 9b51d99..1d00dc9 100644
--- a/vdsm/storage/blockVolume.py
+++ b/vdsm/storage/blockVolume.py
@@ -33,7 +33,7 @@ import task
import lvm
import resourceManager as rm
from threadLocal import vars
-from sdf import StorageDomainFactory as SDF
+from sdc import StorageDomainFactory as SDF
from resourceFactories import LVM_ACTIVATION_NAMESPACE
import fileUtils
diff --git a/vdsm/storage/fileVolume.py b/vdsm/storage/fileVolume.py
index f9e3841..a8d71c5 100644
--- a/vdsm/storage/fileVolume.py
+++ b/vdsm/storage/fileVolume.py
@@ -22,7 +22,7 @@ import os
import uuid
import storage_exception as se
-from sdf import StorageDomainFactory as SDF
+from sdc import StorageDomainFactory as SDF
import outOfProcess as oop
import volume
import image
diff --git a/vdsm/storage/hsm.py b/vdsm/storage/hsm.py
index 5d398e0..9678fe7 100644
--- a/vdsm/storage/hsm.py
+++ b/vdsm/storage/hsm.py
@@ -40,7 +40,7 @@ import spm
import lvm
import fileUtils
import multipath
-from sdf import StorageDomainFactory as SDF
+from sdc import StorageDomainFactory as SDF
import volume
import iscsi
import misc
@@ -1385,7 +1385,7 @@ class HSM:
domains = domList.keys()
else:
#getSharedLock(connectionsResource...)
- domains = SDF.getAllUUIDs()
+ domains = SDF.getUUIDs()
for sdUUID in domains[:]:
try:
diff --git a/vdsm/storage/image.py b/vdsm/storage/image.py
index a68f168..e86f6a7 100644
--- a/vdsm/storage/image.py
+++ b/vdsm/storage/image.py
@@ -25,7 +25,7 @@ import uuid
from contextlib import contextmanager
import volume
-from sdf import StorageDomainFactory as SDF
+from sdc import StorageDomainFactory as SDF
import sd
import misc
import fileUtils
diff --git a/vdsm/storage/resourceFactories.py b/vdsm/storage/resourceFactories.py
index 3d71edf..150f057 100644
--- a/vdsm/storage/resourceFactories.py
+++ b/vdsm/storage/resourceFactories.py
@@ -24,7 +24,7 @@ import logging
import lvm
import resourceManager as rm
import storage_exception as se
-from sdf import StorageDomainFactory as SDF
+from sdc import StorageDomainFactory as SDF
import sd
import image
diff --git a/vdsm/storage/sdc.py b/vdsm/storage/sdc.py
index bf9c8df..bf3ce7e 100644
--- a/vdsm/storage/sdc.py
+++ b/vdsm/storage/sdc.py
@@ -25,6 +25,7 @@ for keeping storage related data that is expensive to harvest, but
needed often
import logging
import threading
import weakref
+from config import config
import multipath
import lvm
@@ -71,7 +72,7 @@ class StorageDomainCache:
del self.__weakCache[sdUUID]
- def lookup(self, sdUUID):
+ def produce(self, sdUUID):
dom = self._getDomainFromCache(sdUUID)
if dom:
return dom
@@ -134,3 +135,8 @@ class StorageDomainCache:
def manuallyRemoveDomain(self, sdUUID):
with self._syncroot:
del self.__cache[sdUUID]
+
+
+storage_repository = config.get('irs', 'repository')
+StorageDomainFactory = StorageDomainCache(storage_repository)
+
diff --git a/vdsm/storage/sdf.py b/vdsm/storage/sdf.py
deleted file mode 100644
index bd49edf..0000000
--- a/vdsm/storage/sdf.py
+++ /dev/null
@@ -1,68 +0,0 @@
-#
-# Copyright 2009-2011 Red Hat, Inc.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#
-# Refer to the README and COPYING files for full details of the license
-#
-
-from config import config
-import logging
-
-import sdc
-
-
-class StorageDomainFactory:
- log = logging.getLogger("Storage.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)
-
- @classmethod
- def produce(cls, sdUUID):
- """
- Produce a new Storage domain
- """
-
- return cls.__sdc.lookup(sdUUID)
-
-
- @classmethod
- def getAllUUIDs(cls):
- return cls.__sdc.getUUIDs()
-
-
- @classmethod
- def refresh(cls):
- cls.__sdc.refresh()
-
-
- @classmethod
- def invalidateStorage(cls):
- cls.__sdc.invalidateStorage()
-
-
- @classmethod
- def refreshStorage(cls):
- cls.__sdc.refreshStorage()
-
diff --git a/vdsm/storage/sp.py b/vdsm/storage/sp.py
index ef1b314..2e43cdd 100644
--- a/vdsm/storage/sp.py
+++ b/vdsm/storage/sp.py
@@ -36,7 +36,7 @@ import misc
from misc import Event
import fileUtils
from config import config
-from sdf import StorageDomainFactory as SDF
+from sdc import StorageDomainFactory as SDF
import storage_exception as se
from persistentDict import DictValidator
from processPool import Timeout
diff --git a/vdsm/storage/spm.py b/vdsm/storage/spm.py
index 849b9d2..74d1d00 100644
--- a/vdsm/storage/spm.py
+++ b/vdsm/storage/spm.py
@@ -42,7 +42,7 @@ import sd
import hsm
import blockSD
import image
-from sdf import StorageDomainFactory as SDF
+from sdc import StorageDomainFactory as SDF
import volume
import misc
import logging
diff --git a/vdsm/storage/volume.py b/vdsm/storage/volume.py
index d50204b..14a8f04 100644
--- a/vdsm/storage/volume.py
+++ b/vdsm/storage/volume.py
@@ -26,7 +26,7 @@ import signal
import constants
import storage_exception as se
import sd
-from sdf import StorageDomainFactory as SDF
+from sdc import StorageDomainFactory as SDF
import misc
import fileUtils
import task