# neutron_lib.utils.runtime module

class neutron_lib.utils.runtime.NamespacedPlugins(namespace)

  Bases: `object`

  Wraps 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.

this page last updated: 2026-03-26 12:58:28

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.

found an error? report a bug