Table Of Contents

Previous topic

keystone Package

Next topic

backends Package

This Page

catalog Package

catalog Package

core Module

Main entry point into the Catalog service.

class keystone.catalog.core.Driver

Bases: object

Interface description for an Catalog driver.

create_endpoint(endpoint_id, endpoint_ref)
create_service(service_id, service_ref)
delete_endpoint(endpoint_id)
delete_service(service_id)
get_catalog(user_id, tenant_id, metadata=None)

Retreive and format the current service catalog.

Returns: A nested dict representing the service catalog or an
empty dict.

Example:

{ ‘RegionOne’:
{‘compute’: {
‘adminURL’: u’http://host:8774/v1.1/tenantid‘, ‘internalURL’: u’http://host:8774/v1.1/tenant_id‘, ‘name’: ‘Compute Service’, ‘publicURL’: u’http://host:8774/v1.1/tenantid‘},
‘ec2’: {
‘adminURL’: ‘http://host:8773/services/Admin‘, ‘internalURL’: ‘http://host:8773/services/Cloud‘, ‘name’: ‘EC2 Service’, ‘publicURL’: ‘http://host:8773/services/Cloud‘}}
get_endpoint(endpoint_id)

Get endpoint by id.

Returns: endpoint_ref dict or None.

get_service(service_id)

Get service by id.

Returns: service_ref dict or None.

list_endpoints()

List all endpoint ids in catalog.

Returns: list of endpoint_ids or an empty list.

list_services()

List all service ids in catalog.

Returns: list of service_ids or an empty list.

class keystone.catalog.core.EndpointController

Bases: keystone.common.wsgi.Application

create_endpoint(context, endpoint)
delete_endpoint(context, endpoint_id)
get_endpoints(context)
class keystone.catalog.core.Manager

Bases: keystone.common.manager.Manager

Default pivot point for the Catalog backend.

See keystone.common.manager.Manager for more details on how this dynamically calls the backend.

class keystone.catalog.core.ServiceController

Bases: keystone.common.wsgi.Application

create_service(context, OS_KSADM_service)
delete_service(context, service_id)
get_service(context, service_id)
get_services(context)