X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fopenstack%2Fosxrn.py;h=8584b3975cd2b87a7805aa26a4a46c4b46a25e83;hb=50cd5673cc7f0cbf64ea24790153a1b289d5f40a;hp=f2bd288eae76fded2c350f100b59c9570568a82e;hpb=11d6fde6e6553c9b5ff2f46ed304bf68b717e1dc;p=sfa.git diff --git a/sfa/openstack/osxrn.py b/sfa/openstack/osxrn.py index f2bd288e..8584b397 100644 --- a/sfa/openstack/osxrn.py +++ b/sfa/openstack/osxrn.py @@ -2,6 +2,7 @@ import re from sfa.util.xrn import Xrn from sfa.util.config import Config + def hrn_to_os_slicename(hrn): return OSXrn(xrn=hrn, type='slice').get_slicename() @@ -9,28 +10,31 @@ def hrn_to_os_slicename(hrn): def hrn_to_os_tenant_name(hrn): return OSXrn(xrn=hrn, type='slice').get_tenant_name() + def cleanup_name(name): - return name.replace(".", "_").replace("+", "_") + return name.replace(".", "_").replace("+", "_") + class OSXrn(Xrn): def __init__(self, name=None, auth=None, **kwds): - + config = Config() self.id = id if name is not None: + Xrn.__init__(self, **kwds) if 'type' in kwds: self.type = kwds['type'] if auth is not None: - self.hrn='.'.join([auth, cleanup_name(name)]) + self.hrn = '.'.join([auth, cleanup_name(name)]) else: - self.hrn = config.SFA_INTERFACE_HRN + "." + cleanup_name(name) + self.hrn = name.replace('_', '.') self.hrn_to_urn() else: - Xrn.__init__(self, **kwds) - - self.name = self.get_name() - + Xrn.__init__(self, **kwds) + + self.name = self.get_name() + def get_name(self): self._normalize() leaf = self.leaf @@ -39,7 +43,6 @@ class OSXrn(Xrn): name = re.sub('[^a-zA-Z0-9_]', '', name) return name - def get_slicename(self): self._normalize() slicename = self.hrn @@ -51,4 +54,3 @@ class OSXrn(Xrn): self._normalize() tenant_name = self.hrn.replace('\.', '') return tenant_name -