# a bundle is the combination of
# (*) an api that reacts on the incoming requests to trigger the API methods
# (*) a manager that implements the function of the service,
-# either aggregate, registry, or slicemgr
+# either aggregate or registry
# (*) a driver that controls the underlying testbed
#
#
def registry_class(self): pass
- def slicemgr_class(self): pass
-
def aggregate_class(self): pass
- def component_class(self): pass
-
# build an API object
# insert a manager instance
def make_api(self, *args, **kwargs):
def make_manager(self, interface):
"""
- interface expected in ['registry', 'aggregate', 'slicemgr', 'component']
+ interface expected in ['registry', 'aggregate']
flavour is e.g. 'pl' or 'max' or whatever
"""
flavour = self.flavour
# or use the module as is if it's a module
# so bottom line is, don't try the constructor here
return module_or_class
- except:
- logger.log_exc_critical(message)
+ except Exception:
+ logger.log_exc(message)
+ exit(1)
# need interface to select the right driver
def make_driver(self, api):
message = "Generic.make_driver for flavour=%s and interface=%s" % (
flavour, interface)
- if interface == "component":
- classname = "component_driver_class"
- else:
- classname = "driver_class"
+ classname = "driver_class"
try:
class_obj = getattr(self, classname)()
logger.debug("%s : %s" % (message, class_obj))
return class_obj(api)
- except:
- logger.log_exc_critical(message)
+ except Exception:
+ logger.log_exc(message)
+ exit(1)