OpenStack Study: cinder
OpenStack IndexNext
\OpenStack\cinder-2014.1\cinder\api\auth.py
class CinderKeystoneContext(auth.CinderKeystoneContext):
def __init__(self, application):
def pipeline_factory(loader, global_conf, **local_conf):
\OpenStack\cinder-2014.1\cinder\api\common.py
def validate_key_names(key_names_list):
def get_pagination_params(request):
def _get_limit_param(request):
def _get_marker_param(request):
def limited(items, request, max_limit=CONF.osapi_max_limit):
def limited_by_marker(items, request, max_limit=CONF.osapi_max_limit):
def remove_version_from_href(href):
def dict_to_query_str(params):
class ViewBuilder(object):
def _get_links(self, request, identifier):
def _get_next_link(self, request, identifier):
def _get_href_link(self, request, identifier):
def _get_bookmark_link(self, request, identifier):
def _get_collection_links(self, request, items, id_key="uuid"):
def _update_link_prefix(self, orig_url, prefix):
class MetadataDeserializer(wsgi.MetadataXMLDeserializer):
def deserialize(self, text):
class MetaItemDeserializer(wsgi.MetadataXMLDeserializer):
def deserialize(self, text):
class MetadataXMLDeserializer(wsgi.XMLDeserializer):
def extract_metadata(self, metadata_node):
def _extract_metadata_container(self, datastring):
def create(self, datastring):
def update_all(self, datastring):
def update(self, datastring):
class MetaItemTemplate(xmlutil.TemplateBuilder):
def construct(self):
class MetadataTemplateElement(xmlutil.TemplateElement):
def will_render(self, datum):
class MetadataTemplate(xmlutil.TemplateBuilder):
def construct(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\admin_actions.py
class AdminController(wsgi.Controller):
def __init__(self, *args, **kwargs):
def _update(self, *args, **kwargs):
def _get(self, *args, **kwargs):
def _delete(self, *args, **kwargs):
def validate_update(self, body):
def authorize(self, context, action_name):
def _reset_status(self, req, id, body):
def _force_delete(self, req, id, body):
class VolumeAdminController(AdminController):
def _update(self, *args, **kwargs):
def _get(self, *args, **kwargs):
def _delete(self, *args, **kwargs):
def validate_update(self, body):
def _force_detach(self, req, id, body):
def _migrate_volume(self, req, id, body):
def _migrate_volume_completion(self, req, id, body):
class SnapshotAdminController(AdminController):
def _update(self, *args, **kwargs):
def _get(self, *args, **kwargs):
def _delete(self, *args, **kwargs):
class Admin_actions(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\availability_zones.py
def make_availability_zone(elem):
class ListTemplate(xmlutil.TemplateBuilder):
def construct(self):
class Controller(wsgi.Controller):
def __init__(self, *args, **kwargs):
def index(self, req):
class Availability_zones(extensions.ExtensionDescriptor):
def get_resources(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\backups.py
def make_backup(elem):
def make_backup_restore(elem):
def make_backup_export_import_record(elem):
class BackupTemplate(xmlutil.TemplateBuilder):
def construct(self):
class BackupsTemplate(xmlutil.TemplateBuilder):
def construct(self):
class BackupRestoreTemplate(xmlutil.TemplateBuilder):
def construct(self):
class BackupExportImportTemplate(xmlutil.TemplateBuilder):
def construct(self):
class CreateDeserializer(wsgi.MetadataXMLDeserializer):
def default(self, string):
def _extract_backup(self, node):
class RestoreDeserializer(wsgi.MetadataXMLDeserializer):
def default(self, string):
def _extract_restore(self, node):
class BackupImportDeserializer(wsgi.MetadataXMLDeserializer):
def default(self, string):
def _extract_backup(self, node):
class BackupsController(wsgi.Controller):
def __init__(self):
def show(self, req, id):
def delete(self, req, id):
def index(self, req):
def detail(self, req):
def _get_backups(self, req, is_detail):
def create(self, req, body):
def restore(self, req, id, body):
def export_record(self, req, id):
def import_record(self, req, body):
class Backups(extensions.ExtensionDescriptor):
def get_resources(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\extended_services.py
class Extended_services(extensions.ExtensionDescriptor):
\OpenStack\cinder-2014.1\cinder\api\contrib\extended_snapshot_attributes.py
class ExtendedSnapshotAttributesController(wsgi.Controller):
def __init__(self, *args, **kwargs):
def _get_snapshots(self, context):
def _extend_snapshot(self, snapshot, data):
def show(self, req, resp_obj, id):
def detail(self, req, resp_obj):
class Extended_snapshot_attributes(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
def make_snapshot(elem):
class ExtendedSnapshotAttributeTemplate(xmlutil.TemplateBuilder):
def construct(self):
class ExtendedSnapshotAttributesTemplate(xmlutil.TemplateBuilder):
def construct(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\hosts.py
class HostIndexTemplate(xmlutil.TemplateBuilder):
def construct(self):
class HostUpdateTemplate(xmlutil.TemplateBuilder):
def construct(self):
class HostActionTemplate(xmlutil.TemplateBuilder):
def construct(self):
class HostShowTemplate(xmlutil.TemplateBuilder):
def construct(self):
class HostDeserializer(wsgi.XMLDeserializer):
def default(self, string):
def _list_hosts(req, service=None):
def check_host(fn):
def wrapped(self, req, id, service=None, *args, **kwargs):
class HostController(wsgi.Controller):
def __init__(self):
def index(self, req):
def update(self, req, id, body):
def _set_enabled_status(self, req, host, enabled):
def show(self, req, id):
class Hosts(extensions.ExtensionDescriptor):
def get_resources(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\image_create.py
class Image_create(extensions.ExtensionDescriptor):
\OpenStack\cinder-2014.1\cinder\api\contrib\qos_specs_manage.py
def make_qos_specs(elem):
def make_associations(elem):
class SpecsTemplate(xmlutil.TemplateBuilder):
def construct(self):
class QoSSpecsTemplate(xmlutil.TemplateBuilder):
def construct(self):
class AssociationsTemplate(xmlutil.TemplateBuilder):
def construct(self):
def _check_specs(context, specs_id):
class QoSSpecsController(wsgi.Controller):
def _notify_qos_specs_error(context, method, payload):
def index(self, req):
def create(self, req, body=None):
def update(self, req, id, body=None):
def show(self, req, id):
def delete(self, req, id):
def delete_keys(self, req, id, body):
def associations(self, req, id):
def associate(self, req, id):
def disassociate(self, req, id):
def disassociate_all(self, req, id):
class Qos_specs_manage(extensions.ExtensionDescriptor):
def get_resources(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\quotas.py
class QuotaTemplate(xmlutil.TemplateBuilder):
def construct(self):
class QuotaSetsController(wsgi.Controller):
def _format_quota_set(self, project_id, quota_set):
def _validate_quota_limit(self, limit):
def _get_quotas(self, context, id, usages=False):
def show(self, req, id):
def update(self, req, id, body):
def defaults(self, req, id):
def delete(self, req, id):
class Quotas(extensions.ExtensionDescriptor):
def get_resources(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\quota_classes.py
class QuotaClassTemplate(xmlutil.TemplateBuilder):
def construct(self):
class QuotaClassSetsController(wsgi.Controller):
def _format_quota_set(self, quota_class, quota_set):
def show(self, req, id):
def update(self, req, id, body):
class Quota_classes(extensions.ExtensionDescriptor):
def get_resources(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\scheduler_hints.py
class SchedulerHintsController(wsgi.Controller):
def _extract_scheduler_hints(body):
def create(self, req, body):
class Scheduler_hints(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\services.py
class ServicesIndexTemplate(xmlutil.TemplateBuilder):
def construct(self):
class ServicesUpdateTemplate(xmlutil.TemplateBuilder):
def construct(self):
class ServiceController(wsgi.Controller):
def __init__(self, ext_mgr=None):
def index(self, req):
def _is_valid_as_reason(self, reason):
def update(self, req, id, body):
class Services(extensions.ExtensionDescriptor):
def get_resources(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\snapshot_actions.py
def authorize(context, action_name):
class SnapshotActionsController(wsgi.Controller):
def __init__(self, *args, **kwargs):
def _update_snapshot_status(self, req, id, body):
class Snapshot_actions(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\types_extra_specs.py
class VolumeTypeExtraSpecsTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumeTypeExtraSpecTemplate(xmlutil.TemplateBuilder):
def construct(self):
def extraspec_sel(obj, do_raise=False):
class VolumeTypeExtraSpecsController(wsgi.Controller):
def _get_extra_specs(self, context, type_id):
def _check_type(self, context, type_id):
def index(self, req, type_id):
def create(self, req, type_id, body=None):
def update(self, req, type_id, id, body=None):
def show(self, req, type_id, id):
def delete(self, req, type_id, id):
def _check_key_names(self, keys):
class Types_extra_specs(extensions.ExtensionDescriptor):
def get_resources(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\types_manage.py
class VolumeTypesManageController(wsgi.Controller):
def _notify_volume_type_error(self, context, method, payload):
def _create(self, req, body):
def _delete(self, req, id):
class Types_manage(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\used_limits.py
class UsedLimitsController(wsgi.Controller):
def index(self, req, resp_obj):
class Used_limits(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\volume_actions.py
def authorize(context, action_name):
class VolumeToImageSerializer(xmlutil.TemplateBuilder):
def construct(self):
class VolumeToImageDeserializer(wsgi.XMLDeserializer):
def default(self, string):
class VolumeActionsController(wsgi.Controller):
def __init__(self, *args, **kwargs):
def _attach(self, req, id, body):
def _detach(self, req, id, body):
def _reserve(self, req, id, body):
def _unreserve(self, req, id, body):
def _begin_detaching(self, req, id, body):
def _roll_detaching(self, req, id, body):
def _initialize_connection(self, req, id, body):
def _terminate_connection(self, req, id, body):
def _volume_upload_image(self, req, id, body):
def _extend(self, req, id, body):
def _volume_readonly_update(self, req, id, body):
def _retype(self, req, id, body):
class Volume_actions(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\volume_encryption_metadata.py
class VolumeEncryptionMetadataTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumeEncryptionMetadataController(wsgi.Controller):
def _get_volume_encryption_metadata(self, context, volume_id):
def _is_volume_type_encrypted(self, context, volume_id):
def _get_metadata(self, req, volume_id):
def index(self, req, volume_id):
def show(self, req, volume_id, id):
class Volume_encryption_metadata(extensions.ExtensionDescriptor):
def get_resources(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\volume_host_attribute.py
class VolumeHostAttributeController(wsgi.Controller):
def __init__(self, *args, **kwargs):
def _add_volume_host_attribute(self, context, req, resp_volume):
def show(self, req, resp_obj, id):
def detail(self, req, resp_obj):
class Volume_host_attribute(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
def make_volume(elem):
class VolumeHostAttributeTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumeListHostAttributeTemplate(xmlutil.TemplateBuilder):
def construct(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\volume_image_metadata.py
class VolumeImageMetadataController(wsgi.Controller):
def __init__(self, *args, **kwargs):
def _get_all_images_metadata(self, context):
def _add_image_metadata(self, context, resp_volume, image_meta=None):
def show(self, req, resp_obj, id):
def detail(self, req, resp_obj):
class Volume_image_metadata(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
class VolumeImageMetadataMetadataTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumeImageMetadataTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumesImageMetadataTemplate(xmlutil.TemplateBuilder):
def construct(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\volume_manage.py
class VolumeManageController(wsgi.Controller):
def __init__(self, *args, **kwargs):
def create(self, req, body):
class Volume_manage(extensions.ExtensionDescriptor):
def get_resources(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\volume_mig_status_attribute.py
class VolumeMigStatusAttributeController(wsgi.Controller):
def __init__(self, *args, **kwargs):
def _add_volume_mig_status_attribute(self, context, resp_volume):
def show(self, req, resp_obj, id):
def detail(self, req, resp_obj):
class Volume_mig_status_attribute(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
def make_volume(elem):
class VolumeMigStatusAttributeTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumeListMigStatusAttributeTemplate(xmlutil.TemplateBuilder):
def construct(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\volume_tenant_attribute.py
class VolumeTenantAttributeController(wsgi.Controller):
def __init__(self, *args, **kwargs):
def _add_volume_tenant_attribute(self, context, req, resp_volume):
def show(self, req, resp_obj, id):
def detail(self, req, resp_obj):
class Volume_tenant_attribute(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
def make_volume(elem):
class VolumeTenantAttributeTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumeListTenantAttributeTemplate(xmlutil.TemplateBuilder):
def construct(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\volume_transfer.py
def make_transfer(elem):
class TransferTemplate(xmlutil.TemplateBuilder):
def construct(self):
class TransfersTemplate(xmlutil.TemplateBuilder):
def construct(self):
class CreateDeserializer(wsgi.MetadataXMLDeserializer):
def default(self, string):
def _extract_transfer(self, node):
class AcceptDeserializer(wsgi.MetadataXMLDeserializer):
def default(self, string):
def _extract_transfer(self, node):
class VolumeTransferController(wsgi.Controller):
def __init__(self):
def show(self, req, id):
def index(self, req):
def detail(self, req):
def _get_transfers(self, req, is_detail):
def create(self, req, body):
def accept(self, req, id, body):
def delete(self, req, id):
class Volume_transfer(extensions.ExtensionDescriptor):
def get_resources(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\volume_type_encryption.py
class VolumeTypeEncryptionTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumeTypeEncryptionController(wsgi.Controller):
def _get_volume_type_encryption(self, context, type_id):
def _check_type(self, context, type_id):
def _check_encryption_input(self, encryption, create=True):
def _encrypted_type_in_use(self, context, volume_type_id):
def index(self, req, type_id):
def create(self, req, type_id, body=None):
def update(self, req, type_id, id, body=None):
def show(self, req, type_id, id):
def delete(self, req, type_id, id):
class Volume_type_encryption(extensions.ExtensionDescriptor):
def get_resources(self):
def get_controller_extensions(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\volume_unmanage.py
class VolumeUnmanageController(wsgi.Controller):
def __init__(self, *args, **kwargs):
def unmanage(self, req, id, body):
class Volume_unmanage(extensions.ExtensionDescriptor):
def get_controller_extensions(self):
\OpenStack\cinder-2014.1\cinder\api\contrib\__init__.py
def standard_extensions(ext_mgr):
def select_extensions(ext_mgr):
\OpenStack\cinder-2014.1\cinder\api\extensions.py
class ExtensionDescriptor(object):
def __init__(self, ext_mgr):
def get_resources(self):
def get_controller_extensions(self):
def nsmap(cls):
def xmlname(cls, name):
def make_ext(elem):
class ExtensionTemplate(xmlutil.TemplateBuilder):
def construct(self):
class ExtensionsTemplate(xmlutil.TemplateBuilder):
def construct(self):
class ExtensionsResource(wsgi.Resource):
def __init__(self, extension_manager):
def _translate(self, ext):
def index(self, req):
def show(self, req, id):
def delete(self, req, id):
def create(self, req):
class ExtensionManager(object):
def __init__(self):
def is_loaded(self, alias):
def register(self, ext):
def get_resources(self):
def get_controller_extensions(self):
def _check_extension(self, extension):
def load_extension(self, ext_factory):
def _load_extensions(self):
class ControllerExtension(object):
def __init__(self, extension, collection, controller):
class ResourceExtension(object):
def __init__(self, collection, controller, parent=None, collection_actions=None, member_actions=None, custom_routes_fn=None):
def load_standard_extensions(ext_mgr, logger, path, package, ext_list=None):
def extension_authorizer(api_name, extension_name):
def authorize(context, target=None):
def soft_extension_authorizer(api_name, extension_name):
def authorize(context):
\OpenStack\cinder-2014.1\cinder\api\middleware\auth.py
def pipeline_factory(loader, global_conf, **local_conf):
class InjectContext(base_wsgi.Middleware):
def __init__(self, context, *args, **kwargs):
def __call__(self, req):
class CinderKeystoneContext(base_wsgi.Middleware):
def __call__(self, req):
class NoAuthMiddleware(base_wsgi.Middleware):
def __call__(self, req):
\OpenStack\cinder-2014.1\cinder\api\middleware\fault.py
class FaultWrapper(base_wsgi.Middleware):
def status_to_type(status):
def _error(self, inner, req):
def __call__(self, req):
\OpenStack\cinder-2014.1\cinder\api\middleware\sizelimit.py
class LimitingReader(object):
def __init__(self, data, limit):
def __iter__(self):
def read(self, i=None):
class RequestBodySizeLimiter(wsgi.Middleware):
def __init__(self, *args, **kwargs):
def __call__(self, req):
\OpenStack\cinder-2014.1\cinder\api\middleware\__init__.py
\OpenStack\cinder-2014.1\cinder\api\openstack\urlmap.py
def urlmap_factory(loader, global_conf, **local_conf):
\OpenStack\cinder-2014.1\cinder\api\openstack\volume\versions.py
class Versions(versions.Versions):
def __init__(self):
\OpenStack\cinder-2014.1\cinder\api\openstack\volume\__init__.py
class APIRouter(v1_router):
def __init__(self, ext_mgr=None):
\OpenStack\cinder-2014.1\cinder\api\openstack\wsgi.py
class Request(webob.Request):
def __init__(self, *args, **kwargs):
def cache_resource(self, resource_to_cache, id_attribute='id', name=None):
def cached_resource(self, name=None):
def cached_resource_by_id(self, resource_id, name=None):
def best_match_content_type(self):
def get_content_type(self):
def best_match_language(self):
class ActionDispatcher(object):
def dispatch(self, *args, **kwargs):
def default(self, data):
class TextDeserializer(ActionDispatcher):
def deserialize(self, datastring, action='default'):
def default(self, datastring):
class JSONDeserializer(TextDeserializer):
def _from_json(self, datastring):
def default(self, datastring):
class XMLDeserializer(TextDeserializer):
def __init__(self, metadata=None):
def _from_xml(self, datastring):
def _from_xml_node(self, node, listnames):
def find_first_child_named_in_namespace(self, parent, namespace, name):
def find_first_child_named(self, parent, name):
def find_children_named(self, parent, name):
def extract_text(self, node):
def find_attribute_or_element(self, parent, name):
def default(self, datastring):
class MetadataXMLDeserializer(XMLDeserializer):
def extract_metadata(self, metadata_node):
class DictSerializer(ActionDispatcher):
def serialize(self, data, action='default'):
def default(self, data):
class JSONDictSerializer(DictSerializer):
def default(self, data):
class XMLDictSerializer(DictSerializer):
def __init__(self, metadata=None, xmlns=None):
def default(self, data):
def to_xml_string(self, node, has_atom=False):
def _add_xmlns(self, node, has_atom=False):
def _to_xml_node(self, doc, metadata, nodename, data):
def _create_link_nodes(self, xml_doc, links):
def _to_xml(self, root):
def serializers(**serializers):
def decorator(func):
def deserializers(**deserializers):
def decorator(func):
def response(code):
def decorator(func):
class ResponseObject(object):
def __init__(self, obj, code=None, **serializers):
def __getitem__(self, key):
def __setitem__(self, key, value):
def __delitem__(self, key):
def _bind_method_serializers(self, meth_serializers):
def get_serializer(self, content_type, default_serializers=None):
def preserialize(self, content_type, default_serializers=None):
def attach(self, **kwargs):
def serialize(self, request, content_type, default_serializers=None):
def code(self):
def headers(self):
def action_peek_json(body):
def action_peek_xml(body):
class ResourceExceptionHandler(object):
def __enter__(self):
def __exit__(self, ex_type, ex_value, ex_traceback):
class Resource(wsgi.Application):
def __init__(self, controller, action_peek=None, **deserializers):
def register_actions(self, controller):
def register_extensions(self, controller):
def get_action_args(self, request_environment):
def get_body(self, request):
def deserialize(self, meth, content_type, body):
def pre_process_extensions(self, extensions, request, action_args):
def post_process_extensions(self, extensions, resp_obj, request, action_args):
def __call__(self, request):
def _process_stack(self, request, action, action_args, content_type, body, accept):
def get_method(self, request, action, content_type, body):
def dispatch(self, method, request, action_args):
def action(name):
def decorator(func):
def index(...):
def _action_resize(...):
def decorator(func):
class ControllerMetaclass(type):
def __new__(mcs, name, bases, cls_dict):
class Controller(object):
def __init__(self, view_builder=None):
def is_valid_body(body, entity_name):
def is_dict(d):
class Fault(webob.exc.HTTPException):
def __init__(self, exception):
def __call__(self, req):
def __str__(self):
def _set_request_id_header(req, headers):
class OverLimitFault(webob.exc.HTTPException):
def __init__(self, message, details, retry_time):
def _retry_after(retry_time):
def __call__(self, request):
def translate(msg):
\OpenStack\cinder-2014.1\cinder\api\openstack\__init__.py
class APIMapper(routes.Mapper):
def routematch(self, url=None, environ=None):
class ProjectMapper(APIMapper):
def resource(self, member_name, collection_name, **kwargs):
class APIRouter(base_wsgi.Router):
def factory(cls, global_config, **local_config):
def __init__(self, ext_mgr=None):
def _setup_ext_routes(self, mapper, ext_mgr):
def _setup_extensions(self, ext_mgr):
def _setup_routes(self, mapper, ext_mgr):
class FaultWrapper(base_wsgi.Middleware):
def __init__(self, application):
\OpenStack\cinder-2014.1\cinder\api\sizelimit.py
class RequestBodySizeLimiter(sizelimit.RequestBodySizeLimiter):
def __init__(self, *args, **kwargs):
\OpenStack\cinder-2014.1\cinder\api\urlmap.py
def unquote_header_value(value):
def parse_list_header(value):
def parse_options_header(value):
def _tokenize(string):
class Accept(object):
def __init__(self, value):
def best_match(self, supported_content_types):
def content_type_params(self, best_content_type):
def _match_mask(self, mask, content_type):
def urlmap_factory(loader, global_conf, **local_conf):
class URLMap(paste.urlmap.URLMap):
def _match(self, host, port, path_info):
def _set_script_name(self, app, app_url):
def wrap(environ, start_response):
def _munge_path(self, app, path_info, app_url):
def wrap(environ, start_response):
def _path_strategy(self, host, port, path_info):
def _content_type_strategy(self, host, port, environ):
def _accept_strategy(self, host, port, environ, supported_content_types):
def __call__(self, environ, start_response):
\OpenStack\cinder-2014.1\cinder\api\v1\limits.py
class LimitsTemplate(xmlutil.TemplateBuilder):
def construct(self):
class LimitsController(wsgi.Controller):
def index(self, req):
def _get_view_builder(self, req):
def create_resource():
class Limit(object):
def __init__(self, verb, uri, regex, value, unit):
def __call__(self, verb, url):
def _get_time(self):
def display_unit(self):
def display(self):
class RateLimitingMiddleware(base_wsgi.Middleware):
def __init__(self, application, limits=None, limiter=None, **kwargs):
def __call__(self, req):
class Limiter(object):
def __init__(self, limits, **kwargs):
def get_limits(self, username=None):
def check_for_delay(self, verb, url, username=None):
def parse_limits(limits):
class WsgiLimiter(object):
def __init__(self, limits=None):
def __call__(self, request):
class WsgiLimiterProxy(object):
def __init__(self, limiter_address):
def check_for_delay(self, verb, path, username=None):
def parse_limits(limits):
\OpenStack\cinder-2014.1\cinder\api\v1\router.py
class APIRouter(cinder.api.openstack.APIRouter):
def _setup_routes(self, mapper, ext_mgr):
\OpenStack\cinder-2014.1\cinder\api\v1\snapshots.py
def _translate_snapshot_detail_view(context, snapshot):
def _translate_snapshot_summary_view(context, snapshot):
def make_snapshot(elem):
class SnapshotTemplate(xmlutil.TemplateBuilder):
def construct(self):
class SnapshotsTemplate(xmlutil.TemplateBuilder):
def construct(self):
class SnapshotsController(wsgi.Controller):
def __init__(self, ext_mgr=None):
def show(self, req, id):
def delete(self, req, id):
def index(self, req):
def detail(self, req):
def _items(self, req, entity_maker):
def create(self, req, body):
def update(self, req, id, body):
def create_resource(ext_mgr):
\OpenStack\cinder-2014.1\cinder\api\v1\snapshot_metadata.py
class Controller(wsgi.Controller):
def __init__(self):
def _get_metadata(self, context, snapshot_id):
def index(self, req, snapshot_id):
def create(self, req, snapshot_id, body):
def update(self, req, snapshot_id, id, body):
def update_all(self, req, snapshot_id, body):
def _update_snapshot_metadata(self, context, snapshot_id, metadata, delete=False):
def show(self, req, snapshot_id, id):
def delete(self, req, snapshot_id, id):
def create_resource():
\OpenStack\cinder-2014.1\cinder\api\v1\types.py
def make_voltype(elem):
class VolumeTypeTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumeTypesTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumeTypesController(wsgi.Controller):
def index(self, req):
def show(self, req, id):
def create_resource():
\OpenStack\cinder-2014.1\cinder\api\v1\volumes.py
def _translate_attachment_detail_view(_context, vol):
def _translate_attachment_summary_view(_context, vol):
def _translate_volume_detail_view(context, vol, image_id=None):
def _translate_volume_summary_view(context, vol, image_id=None):
def make_attachment(elem):
def make_volume(elem):
class VolumeTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumesTemplate(xmlutil.TemplateBuilder):
def construct(self):
class CommonDeserializer(wsgi.MetadataXMLDeserializer):
def _extract_volume(self, node):
class CreateDeserializer(CommonDeserializer):
def default(self, string):
class VolumeController(wsgi.Controller):
def __init__(self, ext_mgr):
def _add_visible_admin_metadata(self, context, volume):
def show(self, req, id):
def delete(self, req, id):
def index(self, req):
def detail(self, req):
def _items(self, req, entity_maker):
def _image_uuid_from_href(self, image_href):
def create(self, req, body):
def _get_volume_search_options(self):
def update(self, req, id, body):
def create_resource(ext_mgr):
def remove_invalid_options(context, search_options, allowed_search_options):
\OpenStack\cinder-2014.1\cinder\api\v1\volume_metadata.py
class Controller(wsgi.Controller):
def __init__(self):
def _get_metadata(self, context, volume_id):
def index(self, req, volume_id):
def create(self, req, volume_id, body):
def update(self, req, volume_id, id, body):
def update_all(self, req, volume_id, body):
def _update_volume_metadata(self, context, volume_id, metadata, delete=False):
def show(self, req, volume_id, id):
def delete(self, req, volume_id, id):
def create_resource():
\OpenStack\cinder-2014.1\cinder\api\v1\__init__.py
\OpenStack\cinder-2014.1\cinder\api\v2\limits.py
class LimitsTemplate(xmlutil.TemplateBuilder):
def construct(self):
class LimitsController(wsgi.Controller):
def index(self, req):
def _get_view_builder(self, req):
def create_resource():
class Limit(object):
def __init__(self, verb, uri, regex, value, unit):
def __call__(self, verb, url):
def _get_time(self):
def display_unit(self):
def display(self):
class RateLimitingMiddleware(base_wsgi.Middleware):
def __init__(self, application, limits=None, limiter=None, **kwargs):
def __call__(self, req):
class Limiter(object):
def __init__(self, limits, **kwargs):
def get_limits(self, username=None):
def check_for_delay(self, verb, url, username=None):
def parse_limits(limits):
class WsgiLimiter(object):
def __init__(self, limits=None):
def __call__(self, request):
class WsgiLimiterProxy(object):
def __init__(self, limiter_address):
def check_for_delay(self, verb, path, username=None):
def parse_limits(limits):
\OpenStack\cinder-2014.1\cinder\api\v2\router.py
class APIRouter(cinder.api.openstack.APIRouter):
def _setup_routes(self, mapper, ext_mgr):
\OpenStack\cinder-2014.1\cinder\api\v2\snapshots.py
def _translate_snapshot_detail_view(context, snapshot):
def _translate_snapshot_summary_view(context, snapshot):
def make_snapshot(elem):
class SnapshotTemplate(xmlutil.TemplateBuilder):
def construct(self):
class SnapshotsTemplate(xmlutil.TemplateBuilder):
def construct(self):
class SnapshotsController(wsgi.Controller):
def __init__(self, ext_mgr=None):
def show(self, req, id):
def delete(self, req, id):
def index(self, req):
def detail(self, req):
def _items(self, req, entity_maker):
def create(self, req, body):
def update(self, req, id, body):
def create_resource(ext_mgr):
\OpenStack\cinder-2014.1\cinder\api\v2\snapshot_metadata.py
class Controller(wsgi.Controller):
def __init__(self):
def _get_metadata(self, context, snapshot_id):
def index(self, req, snapshot_id):
def create(self, req, snapshot_id, body):
def update(self, req, snapshot_id, id, body):
def update_all(self, req, snapshot_id, body):
def _update_snapshot_metadata(self, context, snapshot_id, metadata, delete=False):
def show(self, req, snapshot_id, id):
def delete(self, req, snapshot_id, id):
def create_resource():
\OpenStack\cinder-2014.1\cinder\api\v2\types.py
def make_voltype(elem):
class VolumeTypeTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumeTypesTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumeTypesController(wsgi.Controller):
def index(self, req):
def show(self, req, id):
def create_resource():
\OpenStack\cinder-2014.1\cinder\api\v2\views\volumes.py
class ViewBuilder(common.ViewBuilder):
def __init__(self):
def summary_list(self, request, volumes):
def detail_list(self, request, volumes):
def summary(self, request, volume):
def detail(self, request, volume):
def _is_volume_encrypted(self, volume):
def _get_attachments(self, volume):
def _get_volume_metadata(self, volume):
def _get_volume_type(self, volume):
def _list_view(self, func, request, volumes):
\OpenStack\cinder-2014.1\cinder\api\v2\views\__init__.py
\OpenStack\cinder-2014.1\cinder\api\v2\volumes.py
def make_attachment(elem):
def make_volume(elem):
class VolumeTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VolumesTemplate(xmlutil.TemplateBuilder):
def construct(self):
class CommonDeserializer(wsgi.MetadataXMLDeserializer):
def _extract_scheduler_hints(self, volume_node):
def _extract_volume(self, node):
class CreateDeserializer(CommonDeserializer):
def default(self, string):
class VolumeController(wsgi.Controller):
def __init__(self, ext_mgr):
def show(self, req, id):
def delete(self, req, id):
def index(self, req):
def detail(self, req):
def _get_volumes(self, req, is_detail):
def _image_uuid_from_href(self, image_href):
def create(self, req, body):
def _get_volume_filter_options(self):
def update(self, req, id, body):
def create_resource(ext_mgr):
def remove_invalid_options(context, filters, allowed_search_options):
\OpenStack\cinder-2014.1\cinder\api\v2\volume_metadata.py
class Controller(wsgi.Controller):
def __init__(self):
def _get_metadata(self, context, volume_id):
def index(self, req, volume_id):
def create(self, req, volume_id, body):
def update(self, req, volume_id, id, body):
def update_all(self, req, volume_id, body):
def _update_volume_metadata(self, context, volume_id, metadata, delete=False):
def show(self, req, volume_id, id):
def delete(self, req, volume_id, id):
def create_resource():
\OpenStack\cinder-2014.1\cinder\api\v2\__init__.py
\OpenStack\cinder-2014.1\cinder\api\versions.py
def get_supported_versions():
class MediaTypesTemplateElement(xmlutil.TemplateElement):
def will_render(self, datum):
def make_version(elem):
class VersionTemplate(xmlutil.TemplateBuilder):
def construct(self):
class VersionsTemplate(xmlutil.TemplateBuilder):
def construct(self):
class ChoicesTemplate(xmlutil.TemplateBuilder):
def construct(self):
class AtomSerializer(wsgi.XMLDictSerializer):
def __init__(self, metadata=None, xmlns=None):
def _get_most_recent_update(self, versions):
def _get_base_url(self, link_href):
def _create_feed(self, versions, feed_title, feed_id):
def _create_version_entry(self, version):
class VersionsAtomSerializer(AtomSerializer):
def default(self, data):
class VersionAtomSerializer(AtomSerializer):
def default(self, data):
class Versions(wsgi.Resource):
def __init__(self):
def index(self, req):
def multi(self, req):
def get_action_args(self, request_environment):
class VolumeVersionV1(object):
def show(self, req):
def create_resource():
\OpenStack\cinder-2014.1\cinder\api\views\availability_zones.py
class ViewBuilder(cinder.api.common.ViewBuilder):
def list(self, request, availability_zones):
def fmt(az):
\OpenStack\cinder-2014.1\cinder\api\views\backups.py
class ViewBuilder(common.ViewBuilder):
def __init__(self):
def summary_list(self, request, backups):
def detail_list(self, request, backups):
def summary(self, request, backup):
def restore_summary(self, request, restore):
def detail(self, request, backup):
def _list_view(self, func, request, backups):
def export_summary(self, request, export):
\OpenStack\cinder-2014.1\cinder\api\views\limits.py
class ViewBuilder(object):
def build(self, rate_limits, absolute_limits):
def _build_absolute_limits(self, absolute_limits):
def _build_rate_limits(self, rate_limits):
def _build_rate_limit(self, rate_limit):
\OpenStack\cinder-2014.1\cinder\api\views\qos_specs.py
class ViewBuilder(common.ViewBuilder):
def __init__(self):
def summary_list(self, request, qos_specs):
OpenStack IndexNext
|