congress.api.policy_model module

class congress.api.policy_model.PolicyModel(name, bus=None)

Bases: congress.api.base.APIModel

Model for handling API requests about Policies.

add_item(item, params, id_=None, context=None)

Add item to model.

Param

item: The item to add to the model

Param

params: A dict-like object containing parameters from the request query string and body.

Param

id_: The ID of the item, or None if an ID should be generated

Param

context: Key-values providing frame of reference of request

Returns

Tuple of (ID, newly_created_item)

Raises
  • KeyError – ID already exists.

  • DataModelException – Addition cannot be performed.

  • BadRequest – library_policy parameter and request body both present

delete_item(id_, params, context=None)

Remove item from model.

Param

id_: The ID or name of the item to be removed

Param

params:

Param

context: Key-values providing frame of reference of request

Returns

The removed item.

Raises

KeyError – Item with specified id_ not present.

execute_action(params, context=None, request=None)

Execute the action.

get_item(id_, params, context=None)

Retrieve item with id id_ from model.

Param

id_: The ID of the item to retrieve

Param

params: A dict-like object containing parameters from the request query string and body.

Param

context: Key-values providing frame of reference of request

Returns

The matching item or None if id_ does not exist.

get_items(params, context=None)

Get items in model.

Param

params: A dict-like object containing parameters from the request query string and body.

Param

context: Key-values providing frame of reference of request

Returns

A dict containing at least a ‘results’ key whose value is a list of items in the model. Additional keys set in the dict will also be rendered for the user.

simulate_action(params, context=None, request=None)

Simulate the effects of executing a sequence of updates.

Returns

the result of a query.