← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1211513] Re: neutron.api.extensions should resolve full module path when importing extensions so that proper base class comparison is done

 

[Expired for neutron because there has been no activity for 60 days.]

** Changed in: neutron
       Status: Incomplete => Expired

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1211513

Title:
  neutron.api.extensions should resolve full module path when importing
  extensions so that proper base class comparison is done

Status in neutron:
  Expired

Bug description:
  neutron.api.extensions should resolve full module path when importing
  extensions so that proper base class comparison is done.

  
  isinstance(plugin, extension.get_plugin_interface())
         --- Fails because extension was imported with stunted module name.

  Resolving full module name should resolve this comparison.

  This also means these lines should be marked for removal (as probably
  being used as workarounds).

  def _plugins_implement_interface(self, extension):
          #This check should be deprecated, but leaving until its not needed
    --> if(not hasattr(extension, "get_plugin_interface") or
             extension.get_plugin_interface() is None):
    --->    return True
          for plugin in self.plugins.values():
              if isinstance(plugin, extension.get_plugin_interface()):
                  return True
          LOG.warn(_("Loaded plugins do not implement extension %s interface"),
                   extension.get_alias())
          return False

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1211513/+subscriptions