]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Merge "Remove handle_network/handle_subnet from l2 agent extensions" into feature/qos
authorJenkins <jenkins@review.openstack.org>
Tue, 4 Aug 2015 13:44:31 +0000 (13:44 +0000)
committerGerrit Code Review <review@openstack.org>
Tue, 4 Aug 2015 13:44:31 +0000 (13:44 +0000)
1  2 
neutron/agent/l2/agent_extensions_manager.py
neutron/tests/unit/agent/l2/test_agent_extensions_manager.py

index 54d17adcf0261967ba3b927a00ea9ef5495f9440,f8204a0c4d5116503117c0a24da4469e2889825d..6e1aa63709410cfb06467cd36b800ca288418ea2
@@@ -22,39 -21,24 +22,27 @@@ from neutron.i18n import _LE, _L
  LOG = log.getLogger(__name__)
  
  
 -class AgentExtensionsManager(stevedore.named.NamedExtensionManager):
 -    """Manage agent extensions."""
 +L2_AGENT_EXT_MANAGER_NAMESPACE = 'neutron.agent.l2.extensions'
 +L2_AGENT_EXT_MANAGER_OPTS = [
 +    cfg.ListOpt('extensions',
 +                default=[],
 +                help=_('Extensions list to use')),
 +]
 +
  
 -    def __init__(self):
 -        # Ordered list of agent extensions, defining
 -        # the order in which the agent extensions are called.
 +def register_opts(conf):
 +    conf.register_opts(L2_AGENT_EXT_MANAGER_OPTS, 'agent')
  
 -        #TODO(QoS): get extensions from config
 -        agent_extensions = ('qos', )
  
 -        LOG.info(_LI("Configured agent extensions names: %s"),
 -                 agent_extensions)
 +class AgentExtensionsManager(stevedore.named.NamedExtensionManager):
 +    """Manage agent extensions."""
  
 +    def __init__(self, conf):
          super(AgentExtensionsManager, self).__init__(
 -            'neutron.agent.l2.extensions', agent_extensions,
 +            L2_AGENT_EXT_MANAGER_NAMESPACE, conf.agent.extensions,
              invoke_on_load=True, name_order=True)
 -        LOG.info(_LI("Loaded agent extensions names: %s"), self.names())
 +        LOG.info(_LI("Loaded agent extensions: %s"), self.names())
  
-     def _call_on_agent_extensions(self, method_name, context, data):
-         """Helper method for calling a method across all agent extensions."""
-         for extension in self:
-             try:
-                 getattr(extension.obj, method_name)(context, data)
-             # TODO(QoS) add agent extensions exception and catch them here
-             except AttributeError:
-                 LOG.exception(
-                     _LE("Agent Extension '%(name)s' failed in %(method)s"),
-                     {'name': extension.name, 'method': method_name}
-                 )
      def initialize(self):
          # Initialize each agent extension in the list.
          for extension in self: