Added CreateSliver
[sfa.git] / sfa / methods / GetVersion.py
1 from sfa.util.faults import *
2 from sfa.util.namespace import *
3 from sfa.util.method import Method
4 from sfa.util.parameter import Parameter, Mixed
5 from sfa.trust.auth import Auth
6 from sfa.trust.gid import GID
7 from sfa.trust.certificate import Certificate
8
9 class GetVersion(Method):
10     """
11     Returns this GENI Aggregate Manager's Version Information
12     @return version
13     """
14     interfaces = ['geni_am']
15     accepts = []
16     returns = Parameter(dict, "Version information")
17
18     def call(self):
19         self.api.logger.info("interface: %s\tmethod-name: %s" % (self.api.interface, self.name))
20
21         manager_base = 'sfa.managers'
22
23         if self.api.interface in ['geni_am']:
24             mgr_type = self.api.config.SFA_GENI_AGGREGATE_TYPE
25             manager_module = manager_base + ".geni_am_%s" % mgr_type
26             manager = __import__(manager_module, fromlist=[manager_base])
27             return manager.GetVersion()
28         return {}
29