From: Tony Mack Date: Tue, 1 Dec 2009 18:03:42 +0000 (+0000) Subject: use interface managers X-Git-Tag: sfa-0.9-7~257 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=b6d96cfe8c57bac835a6b6105a702d74ab0e64f7;p=sfa.git use interface managers --- diff --git a/sfa/methods/create_slice.py b/sfa/methods/create_slice.py index 6c142f59..9913e002 100644 --- a/sfa/methods/create_slice.py +++ b/sfa/methods/create_slice.py @@ -63,12 +63,27 @@ class create_slice(Method): incoming_rules.set_context(request_context) rspec = incoming_rules.apply(requested_rspec) - if (sfa_aggregate_type == 'pl'): - slices = Slices(self.api, caller_cred=caller_cred) - slices.create_slice(hrn, rspec) - else: - # To clean up after July 21 - SB + # send the call to the right manager + if sfa_aggregate_type not in ['pl']: + # To clean up after July 21 - SB rspec = rspec_manager.create_slice(self.api, hrn, rspec) + return 1 + + manager_base = 'sfa.managers' + if self.api.interface in ['component']: + man_type = self.api.config.SFA_CM_TYPE + manager_module = manger_base+= ".component_manager_%s" % man_type + manager = __import__(manager_module, manager_base) + manager.create_slice(self.api, hrn) + elif self.api.interface in ['aggregate']: + man_type = self.api.config.SFA_AGGREGATE_TYPE + manager_module = manger_base+= ".agregate_manager_%s" % man_type + manager = __import__(manager_module, manager_base) + manager.create_slice(self.api, hrn) + elif self.api.interface in ['slicemngr']: + man_type = self.api.config.SFA_SM_TYPE + manager_module = manger_base+= ".slice_manager_%s" % man_type + manager = __import__(manager_module, manager_base) + manager.create_slice(self.api, hrn) - return 1 diff --git a/sfa/methods/delete_slice.py b/sfa/methods/delete_slice.py index b9dbdb72..e3baf2f6 100644 --- a/sfa/methods/delete_slice.py +++ b/sfa/methods/delete_slice.py @@ -8,8 +8,6 @@ from sfa.util.parameter import Parameter, Mixed from sfa.trust.auth import Auth from sfa.trust.credential import Credential -from sfa.plc.slices import Slices - class delete_slice(Method): """ Remove the slice from all nodes. @@ -44,6 +42,24 @@ class delete_slice(Method): client_gid_str = client_gid.save_to_string(save_parents=True) self.api.auth.authenticateGid(client_gid_str, [cred, hrn], request_hash) self.api.auth.check(cred, 'deleteslice') - slices = Slices(self.api, caller_cred=caller_cred) - slices.delete_slice(hrn) + + + # send the call to the right manager + manager_base = 'sfa.managers' + if self.api.interface in ['component']: + man_type = self.api.config.SFA_CM_TYPE + manager_module = manger_base+= ".component_manager_%s" % man_type + manager = __import__(manager_module, manager_base) + manager.delete_slice(self.api, hrn) + elif self.api.interface in ['aggregate']: + man_type = self.api.config.SFA_AGGREGATE_TYPE + manager_module = manger_base+= ".agregate_manager_%s" % man_type + manager = __import__(manager_module, manager_base) + manager.delete_slice(self.api, hrn) + elif self.api.interface in ['slicemngr']: + man_type = self.api.config.SFA_SM_TYPE + manager_module = manger_base+= ".slice_manager_%s" % man_type + manager = __import__(manager_module, manager_base) + manager.delete_slice(self.api, hrn) + return 1