-from sfa.util.faults import *
-from sfa.util.namespace import *
from sfa.util.method import Method
-from sfa.util.parameter import Parameter
+
+from sfa.storage.parameter import Parameter
class GetVersion(Method):
Returns this GENI Aggregate Manager's Version Information
@return version
"""
- interfaces = ['geni_am','registry']
- accepts = []
+ interfaces = ['registry','aggregate', 'slicemgr', 'component']
+ accepts = [
+ Parameter(dict, "Options")
+ ]
returns = Parameter(dict, "Version information")
- def call(self):
+ # API v2 specifies options is optional, so..
+ def call(self, options={}):
self.api.logger.info("interface: %s\tmethod-name: %s" % (self.api.interface, self.name))
-
- manager_base = 'sfa.managers'
-
- if self.api.interface in ['geni_am']:
- mgr_type = self.api.config.SFA_GENI_AGGREGATE_TYPE
- manager_module = manager_base + ".geni_am_%s" % mgr_type
- manager = __import__(manager_module, fromlist=[manager_base])
- return manager.GetVersion()
- if self.api.interface in ['registry']:
- mgr_type = self.api.config.SFA_REGISTRY_TYPE
- manager_module = manager_base + ".slice_manager_%s" % mgr_type
- manager = __import__(manager_module, fromlist=[manager_base])
- return manager.GetVersion()
-
- return {}
-
+ return self.api.manager.GetVersion(self.api, options)