neutron_lib.utils.runtime module¶
-
class
neutron_lib.utils.runtime.NamespacedPlugins(namespace)¶ Bases:
objectWraps a stevedore plugin namespace to load/access its plugins.
-
get_plugin_class(plugin_name)¶ Gets a reference to a loaded plugin’s class.
- Parameters
plugin_name – The name of the plugin to get the class for.
- Returns
A reference to the loaded plugin’s class.
- Raises
KeyError if plugin_name is not loaded.
-
property
loaded_plugin_names¶
-
new_plugin_instance(plugin_name, *args, **kwargs)¶ Create a new instance of a plugin.
- Parameters
plugin_name – The name of the plugin to instantiate.
args – Any args to pass onto the constructor.
kwargs – Any kwargs to pass onto the constructor.
- Returns
A new instance of plugin_name.
- Raises
KeyError if plugin_name is not loaded.
-
reload()¶ Force a reload of the plugins for this instances namespace.
- Returns
None.
-
-
neutron_lib.utils.runtime.list_package_modules(package_name)¶ Get a list of the modules for a given package.
- Parameters
package_name – The package name to get modules for.
- Returns
A list of module objects for the said package name.
-
neutron_lib.utils.runtime.load_class_by_alias_or_classname(namespace, name)¶ Load a class using stevedore alias or the class name.
- Parameters
namespace – The namespace where the alias is defined.
name – The alias or class name of the class to be loaded.
- Returns
Class if it can be loaded.
- Raises
ImportError – if class cannot be loaded.