The cinder.api.extensions Module¶
- 
class ControllerExtension(extension, collection, controller)¶
- Bases: - object- Extend core controllers of cinder OpenStack API. - Provide a way to extend existing cinder OpenStack API core controllers. 
- 
class 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¶
 
- 
- 
class 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)¶
 
- 
- 
class ExtensionsResource(extension_manager)¶
- Bases: - cinder.api.openstack.wsgi.Resource- 
create(req)¶
 - 
delete(req, id)¶
 - 
index(req)¶
 - 
show(req, id)¶
 
- 
- 
class 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.