keystone.limit.backends.sql module¶
- class keystone.limit.backends.sql.LimitModel(*args, **kwargs)[source]¶
 Bases:
sqlalchemy.orm.decl_api.Base,keystone.common.sql.core.ModelDictMixin- attributes = ['internal_id', 'id', 'project_id', 'domain_id', 'service_id', 'region_id', 'resource_name', 'resource_limit', 'description', 'registered_limit_id']¶
 
- description¶
 
- domain_id¶
 
- id¶
 
- internal_id¶
 
- project_id¶
 
- region_id¶
 
- registered_limit¶
 
- registered_limit_id¶
 
- resource_limit¶
 
- resource_name¶
 
- service_id¶
 
- class keystone.limit.backends.sql.RegisteredLimitModel(*args, **kwargs)[source]¶
 Bases:
sqlalchemy.orm.decl_api.Base,keystone.common.sql.core.ModelDictMixin- attributes = ['internal_id', 'id', 'service_id', 'region_id', 'resource_name', 'default_limit', 'description']¶
 
- default_limit¶
 
- description¶
 
- id¶
 
- internal_id¶
 
- region_id¶
 
- resource_name¶
 
- service_id¶
 
- class keystone.limit.backends.sql.UnifiedLimit[source]¶
 Bases:
keystone.limit.backends.base.UnifiedLimitDriverBase- create_limits(limits)[source]¶
 Create new limits.
- Parameters
 limits – a list of dictionaries representing limits to create.
- Returns
 all the newly created limits.
- Raises
 keystone.exception.Conflict – If a duplicate limit exists.
keystone.exception.NoLimitReference – If no reference registered limit exists.
- create_registered_limits(registered_limits)[source]¶
 Create new registered limits.
- Parameters
 registered_limits – a list of dictionaries representing limits to create.
- Returns
 all the newly created registered limits.
- Raises
 keystone.exception.Conflict – If a duplicate registered limit exists.
- delete_limit(limit_id)[source]¶
 Delete an existing limit.
- Parameters
 limit_id – the limit id to delete.
- Raises
 keystone.exception.LimitNotFound – If limit doesn’t exist.
- delete_limits_for_project(project_id)[source]¶
 Delete the existing limits which belong to the specified project.
- Parameters
 project_id – the limits’ project id.
- Returns
 a dictionary representing the deleted limits id. Used for cache invalidating.
- delete_registered_limit(registered_limit_id)[source]¶
 Delete an existing registered limit.
- Parameters
 registered_limit_id – the registered limit id to delete.
- Raises
 keystone.exception.RegisteredLimitNotFound – If registered limit doesn’t exist.
- get_limit(limit_id)[source]¶
 Get a limit.
- Parameters
 limit_id – the limit id to get.
- Returns
 a dictionary representing a limit reference.
- Raises
 keystone.exception.LimitNotFound – If limit doesn’t exist.
- get_registered_limit(registered_limit_id)[source]¶
 Get a registered limit.
- Parameters
 registered_limit_id – the registered limit id to get.
- Returns
 a dictionary representing a registered limit reference.
- Raises
 keystone.exception.RegisteredLimitNotFound – If registered limit doesn’t exist.
- list_limits(hints)[source]¶
 List all limits.
- Parameters
 hints – contains the list of filters yet to be satisfied. Any filters satisfied here will be removed so that the caller will know if any filters remain.
- Returns
 a list of dictionaries or an empty list.
- list_registered_limits(hints)[source]¶
 List all registered limits.
- Parameters
 hints – contains the list of filters yet to be satisfied. Any filters satisfied here will be removed so that the caller will know if any filters remain.
- Returns
 a list of dictionaries or an empty registered limit.
- update_limit(limit_id, limit)[source]¶
 Update existing limits.
- Parameters
 limit_id – the id of the limit.
limit – a dict containing the limit attributes to update.
- Returns
 the updated limit.
- Raises
 keystone.exception.LimitNotFound – If limit doesn’t exist.
keystone.exception.Conflict – If update to a duplicate limit.
- update_registered_limit(registered_limit_id, registered_limit)[source]¶
 Update existing registered limits.
- Parameters
 registered_limit_id – the id of the registered limit.
registered_limit – a dict containing the registered limit attributes to update.
- Returns
 the updated registered limit.
- Raises
 keystone.exception.RegisteredLimitNotFound – If registered limit doesn’t exist.
keystone.exception.Conflict – If update to a duplicate registered limit.