glanceclient.v1.apiclient.base module¶
Base utilities to build API operation managers and objects on top of.
- class glanceclient.v1.apiclient.base.BaseManager(client)¶
- Bases: - HookableMixin- Basic manager type providing common operations. - Managers interact with a particular type of API (servers, flavors, images, etc.) and provide CRUD operations for them. - resource_class = None¶
 
- class glanceclient.v1.apiclient.base.CrudManager(client)¶
- Bases: - BaseManager- Base manager class for manipulating entities. - Children of this class are expected to define a collection_key and key. - collection_key: Usually a plural noun by convention (e.g. entities); used to refer collections in both URL’s (e.g. /v3/entities) and JSON objects containing a list of member resources (e.g. {‘entities’: [{}, {}, {}]}). 
- key: Usually a singular noun by convention (e.g. entity); used to refer to an individual member of the collection. 
 - build_url(base_url=None, **kwargs)¶
- Builds a resource URL for the given kwargs. - Given an example collection where collection_key = ‘entities’ and key = ‘entity’, the following URL’s could be generated. - By default, the URL will represent a collection of entities, e.g.: - /entities - If kwargs contains an entity_id, then the URL will represent a specific member, e.g.: - /entities/{entity_id} - Parameters:
- base_url – if provided, the generated URL will be appended to it 
 
 - collection_key = None¶
 - create(**kwargs)¶
 - delete(**kwargs)¶
 - find(base_url=None, **kwargs)¶
- Find a single item with attributes matching - **kwargs.- Parameters:
- base_url – if provided, the generated URL will be appended to it 
 
 - get(**kwargs)¶
 - head(**kwargs)¶
 - key = None¶
 - list(base_url=None, **kwargs)¶
- List the collection. - Parameters:
- base_url – if provided, the generated URL will be appended to it 
 
 - put(base_url=None, **kwargs)¶
- Update an element. - Parameters:
- base_url – if provided, the generated URL will be appended to it 
 
 - update(**kwargs)¶
 
- class glanceclient.v1.apiclient.base.Extension(name, module)¶
- Bases: - HookableMixin- Extension descriptor. - SUPPORTED_HOOKS = ('__pre_parse_args__', '__post_parse_args__')¶
 - manager_class = None¶
 
- class glanceclient.v1.apiclient.base.HookableMixin¶
- Bases: - object- Mixin so classes can register and run hooks. - classmethod add_hook(hook_type, hook_func)¶
- Add a new hook of specified type. - Parameters:
- cls – class that registers hooks 
- hook_type – hook type, e.g., ‘__pre_parse_args__’ 
- hook_func – hook function 
 
 
 - classmethod run_hooks(hook_type, *args, **kwargs)¶
- Run all hooks of specified type. - Parameters:
- cls – class that registers hooks 
- hook_type – hook type, e.g., ‘__pre_parse_args__’ 
- args – args to be passed to every hook function 
- kwargs – kwargs to be passed to every hook function 
 
 
 
- class glanceclient.v1.apiclient.base.ManagerWithFind(client)¶
- Bases: - BaseManager- Manager with additional find()/findall() methods. - find(**kwargs)¶
- Find a single item with attributes matching - **kwargs.- This isn’t very efficient: it loads the entire list then filters on the Python side. 
 - findall(**kwargs)¶
- Find all items with attributes matching - **kwargs.- This isn’t very efficient: it loads the entire list then filters on the Python side. 
 - abstractmethod list()¶
 
- class glanceclient.v1.apiclient.base.Resource(manager, info, loaded=False)¶
- Bases: - object- Base class for OpenStack resources (tenant, user, etc.). - This is pretty much just a bag for attributes. - HUMAN_ID = False¶
 - NAME_ATTR = 'name'¶
 - get()¶
- Support for lazy loading details. - Some clients, such as novaclient have the option to lazy load the details, details which can be loaded with this function. 
 - property human_id¶
- Human-readable ID which can be used for bash completion. 
 - is_loaded()¶
 - set_loaded(val)¶
 - to_dict()¶
 
- glanceclient.v1.apiclient.base.getid(obj)¶
- Return id if argument is a Resource. - Abstracts the common pattern of allowing both an object or an object’s ID (UUID) as a parameter when dealing with relationships. 
