ControllerExtension
(extension, collection, controller)¶Bases: object
Extend core controllers of cinder OpenStack API.
Provide a way to extend existing cinder OpenStack API core controllers.
ExtensionDescriptor
(ext_mgr)¶Bases: object
Base class that defines the contract for extensions.
Note that you don’t have to derive from this class to have a valid extension; it is purely a convenience.
alias
= None¶get_controller_extensions
()¶List of extensions.ControllerExtension extension objects.
Controller extensions are used to extend existing controllers.
get_resources
()¶List of extensions.ResourceExtension extension objects.
Resources define new nouns, and are accessible through URLs.
name
= None¶updated
= None¶ExtensionManager
¶Bases: object
Load extensions from the configured extension path.
See cinder/tests/api/extensions/foxinsocks/extension.py for an example extension implementation.
get_controller_extensions
()¶Returns a list of ControllerExtension objects.
get_resources
()¶Returns a list of ResourceExtension objects.
is_loaded
(alias)¶load_extension
(ext_factory)¶Execute an extension factory.
Loads an extension. The ‘ext_factory’ is the name of a callable that will be imported and called with one argument–the extension manager. The factory callable is expected to call the register() method at least once.
register
(ext)¶ExtensionsResource
(extension_manager)¶Bases: cinder.api.openstack.wsgi.Resource
create
(req)¶delete
(req, id)¶index
(req)¶show
(req, id)¶ResourceExtension
(collection, controller, parent=None, collection_actions=None, member_actions=None, custom_routes_fn=None)¶Bases: object
Add top level resources to the OpenStack API in cinder.
load_standard_extensions
(ext_mgr, logger, path, package, ext_list=None)¶Registers all standard API extensions.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.