aries_cloudagent.protocols.coordinate_mediation.v1_0 package¶
Subpackages¶
- aries_cloudagent.protocols.coordinate_mediation.v1_0.handlers package
- Submodules
- aries_cloudagent.protocols.coordinate_mediation.v1_0.handlers.keylist_handler module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.handlers.keylist_query_handler module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.handlers.keylist_update_handler module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.handlers.keylist_update_response_handler module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.handlers.mediation_deny_handler module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.handlers.mediation_grant_handler module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.handlers.mediation_request_handler module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages package
- Subpackages
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.inner package
- Submodules
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.inner.keylist_key module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.inner.keylist_query_paginate module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.inner.keylist_update_rule module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.inner.keylist_updated module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.inner package
- Submodules
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.keylist module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.keylist_query module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.keylist_update module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.keylist_update_response module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.mediate_deny module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.mediate_grant module
- aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.mediate_request module
- Subpackages
- aries_cloudagent.protocols.coordinate_mediation.v1_0.models package
Submodules¶
aries_cloudagent.protocols.coordinate_mediation.v1_0.manager module¶
Manager for Mediation coordination.
-
exception
aries_cloudagent.protocols.coordinate_mediation.v1_0.manager.
MediationAlreadyExists
(*args, error_code: str = None, **kwargs)[source]¶ Bases:
aries_cloudagent.protocols.coordinate_mediation.v1_0.manager.MediationManagerError
Raised on mediation record already exists for given connection.
-
class
aries_cloudagent.protocols.coordinate_mediation.v1_0.manager.
MediationManager
(profile: aries_cloudagent.core.profile.Profile)[source]¶ Bases:
object
Class for handling Mediation.
MediationManager creates or retrieves a routing DID as a means to hand out a consistent routing key to mediation clients.
-
DEFAULT_MEDIATOR_RECORD_TYPE
= 'default_mediator'¶
-
ROUTING_DID_RECORD_TYPE
= 'routing_did'¶
-
SEND_REQ_AFTER_CONNECTION
= 'send_mediation_request_on_connection'¶
-
SET_TO_DEFAULT_ON_GRANTED
= 'set_to_default_on_granted'¶
-
add_key
(recipient_key: str, message: Optional[aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.keylist_update.KeylistUpdate] = None) → aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.keylist_update.KeylistUpdate[source]¶ Prepare a keylist update add.
Parameters: - recipient_key (str) – key to add
- message (Optional[KeylistUpdate]) – append update to message
Returns: Message to send to mediator to notify of key addition.
Return type:
-
create_keylist_query_response
(keylist: Sequence[aries_cloudagent.protocols.routing.v1_0.models.route_record.RouteRecord]) → aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.keylist.Keylist[source]¶ Prepare a keylist message from keylist.
Parameters: keylist (Sequence[RouteRecord]) – keylist to format into message Returns: message to return to client Return type: Keylist
-
deny_request
(mediation_id: str, *, mediator_terms: Sequence[str] = None, recipient_terms: Sequence[str] = None) → Tuple[aries_cloudagent.protocols.coordinate_mediation.v1_0.models.mediation_record.MediationRecord, aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.mediate_deny.MediationDeny][source]¶ Deny a mediation request and prepare a deny message.
Parameters: Returns: message to return to denied client.
Return type:
-
get_default_mediator
() → Optional[aries_cloudagent.protocols.coordinate_mediation.v1_0.models.mediation_record.MediationRecord][source]¶ Retrieve default mediator from the store.
Returns: retrieved default mediator or None if not set Return type: Optional[MediationRecord]
-
get_default_mediator_id
() → Optional[str][source]¶ Retrieve default mediator ID from the store.
Returns: retrieved default mediator ID or None if not set Return type: Optional[str]
-
get_keylist
(record: aries_cloudagent.protocols.coordinate_mediation.v1_0.models.mediation_record.MediationRecord) → Sequence[aries_cloudagent.protocols.routing.v1_0.models.route_record.RouteRecord][source]¶ Retrieve keylist for mediation client.
Parameters: record (MediationRecord) – record associated with client keylist Returns: sequence of routes (the keylist) Return type: Sequence[RouteRecord]
-
get_my_keylist
(connection_id: Optional[str] = None) → Sequence[aries_cloudagent.protocols.routing.v1_0.models.route_record.RouteRecord][source]¶ Get my routed keys.
Parameters: connection_id (Optional[str]) – connection id of mediator Returns: list of routes (the keylist) Return type: Sequence[RouteRecord]
-
grant_request
(mediation_id: str) → Tuple[aries_cloudagent.protocols.coordinate_mediation.v1_0.models.mediation_record.MediationRecord, aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.mediate_grant.MediationGrant][source]¶ Grant a mediation request and prepare grant message.
Parameters: mediation_id – mediation record ID to grant Returns: updated mediation record and message to return to grantee Return type: (MediationRecord, MediationGrant)
-
prepare_keylist_query
(filter_: dict = None, paginate_limit: int = -1, paginate_offset: int = 0) → aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.keylist_query.KeylistQuery[source]¶ Prepare keylist query message.
Parameters: Returns: message to send to mediator
Return type:
-
prepare_request
(connection_id: str, mediator_terms: Sequence[str] = None, recipient_terms: Sequence[str] = None) → Tuple[aries_cloudagent.protocols.coordinate_mediation.v1_0.models.mediation_record.MediationRecord, aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.mediate_request.MediationRequest][source]¶ Prepare a MediationRequest Message, saving a new mediation record.
Parameters: Returns: message to send to mediator
Return type:
-
receive_request
(connection_id: str, request: aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.mediate_request.MediationRequest) → aries_cloudagent.protocols.coordinate_mediation.v1_0.models.mediation_record.MediationRecord[source]¶ Create a new mediation record to track this request.
Parameters: request (MediationRequest) – request message Returns: record created during receipt of request. Return type: MediationRecord
-
remove_key
(recipient_key: str, message: Optional[aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.keylist_update.KeylistUpdate] = None) → aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.keylist_update.KeylistUpdate[source]¶ Prepare keylist update remove.
Parameters: - recipient_key (str) – key to remove
- message (Optional[KeylistUpdate]) – append update to message
Returns: Message to send to mediator to notify of key removal.
Return type:
-
request_denied
(record: aries_cloudagent.protocols.coordinate_mediation.v1_0.models.mediation_record.MediationRecord, deny: aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.mediate_deny.MediationDeny)[source]¶ Process mediation denied message.
Parameters: record (MediationRecord) – record representing the denied mediation request
-
request_granted
(record: aries_cloudagent.protocols.coordinate_mediation.v1_0.models.mediation_record.MediationRecord, grant: aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.mediate_grant.MediationGrant)[source]¶ Process mediation grant message.
Parameters: record (MediationRecord) – record representing the granted mediation request
-
set_default_mediator
(record: aries_cloudagent.protocols.coordinate_mediation.v1_0.models.mediation_record.MediationRecord)[source]¶ Set default mediator from record.
-
store_update_results
(connection_id: str, results: Sequence[aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.inner.keylist_updated.KeylistUpdated])[source]¶ Store results of keylist update from keylist update response message.
Parameters: - connection_id (str) – connection ID of mediator sending results
- results (Sequence[KeylistUpdated]) – keylist update results
- session – An active profile session
-
update_keylist
(record: aries_cloudagent.protocols.coordinate_mediation.v1_0.models.mediation_record.MediationRecord, updates: Sequence[aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.inner.keylist_update_rule.KeylistUpdateRule]) → aries_cloudagent.protocols.coordinate_mediation.v1_0.messages.keylist_update_response.KeylistUpdateResponse[source]¶ Update routes defined in keylist update rules.
Parameters: - record (MediationRecord) – record associated with client updating keylist
- updates (Sequence[KeylistUpdateRule]) – updates to apply
Returns: message to return to client
Return type:
-
-
exception
aries_cloudagent.protocols.coordinate_mediation.v1_0.manager.
MediationManagerError
(*args, error_code: str = None, **kwargs)[source]¶ Bases:
aries_cloudagent.core.error.BaseError
Generic Mediation error.
-
exception
aries_cloudagent.protocols.coordinate_mediation.v1_0.manager.
MediationNotGrantedError
(*args, error_code: str = None, **kwargs)[source]¶ Bases:
aries_cloudagent.protocols.coordinate_mediation.v1_0.manager.MediationManagerError
Raised when mediation state should be granted and is not.
aries_cloudagent.protocols.coordinate_mediation.v1_0.message_types module¶
Message type identifiers for Coordinate Mediation protocol.
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes module¶
coordinate mediation admin routes.
-
class
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
AdminMediationDenySchema
(*args, **kwargs)[source]¶ Bases:
aries_cloudagent.messaging.models.openapi.OpenAPISchema
Parameters and validators for Mediation deny admin request query string.
-
mediator_terms
= <fields.List(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid list.'})>¶
-
recipient_terms
= <fields.List(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid list.'})>¶
-
-
class
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
GetKeylistQuerySchema
(*args, **kwargs)[source]¶ Bases:
aries_cloudagent.messaging.models.openapi.OpenAPISchema
Get keylist query string paramaters.
-
conn_id
= <fields.UUID(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid string.', 'invalid_utf8': 'Not a valid utf-8 string.', 'invalid_uuid': 'Not a valid UUID.'})>¶
-
role
= <fields.String(default=<marshmallow.missing>, attribute=None, validate=<OneOf(choices=['client', 'server'], labels=[], error='Must be one of: {choices}.')>, required=False, load_only=False, dump_only=False, missing=server, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid string.', 'invalid_utf8': 'Not a valid utf-8 string.'})>¶
-
-
class
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
KeylistQueryFilterRequestSchema
(*args, **kwargs)[source]¶ Bases:
aries_cloudagent.messaging.models.openapi.OpenAPISchema
Request schema for keylist query filtering.
-
filter
= <fields.Dict(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid mapping type.'})>¶
-
-
class
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
KeylistQueryPaginateQuerySchema
(*args, **kwargs)[source]¶ Bases:
aries_cloudagent.messaging.models.openapi.OpenAPISchema
Query string schema for keylist query pagination.
-
paginate_limit
= <fields.Integer(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=-1, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid integer.', 'too_large': 'Number too large.'})>¶
-
paginate_offset
= <fields.Integer(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=0, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid integer.', 'too_large': 'Number too large.'})>¶
-
-
class
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
KeylistSchema
(*args, **kwargs)[source]¶ Bases:
aries_cloudagent.messaging.models.openapi.OpenAPISchema
Result schema for mediation list query.
-
results
= <fields.List(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid list.'})>¶
-
-
class
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
KeylistUpdateRequestSchema
(*args, **kwargs)[source]¶ Bases:
aries_cloudagent.messaging.models.openapi.OpenAPISchema
keylist update request schema.
-
updates
= <fields.List(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid list.'})>¶
-
-
class
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
MediationCreateRequestSchema
(*args, **kwargs)[source]¶ Bases:
aries_cloudagent.messaging.models.openapi.OpenAPISchema
Parameters and validators for create Mediation request query string.
-
mediator_terms
= <fields.List(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid list.'})>¶
-
recipient_terms
= <fields.List(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid list.'})>¶
-
-
class
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
MediationIdMatchInfoSchema
(*args, **kwargs)[source]¶ Bases:
aries_cloudagent.messaging.models.openapi.OpenAPISchema
Path parameters and validators for request taking mediation request id.
-
mediation_id
= <fields.UUID(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid string.', 'invalid_utf8': 'Not a valid utf-8 string.', 'invalid_uuid': 'Not a valid UUID.'})>¶
-
-
class
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
MediationListQueryStringSchema
(*args, **kwargs)[source]¶ Bases:
aries_cloudagent.messaging.models.openapi.OpenAPISchema
Parameters and validators for mediation record list request query string.
-
conn_id
= <fields.UUID(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid string.', 'invalid_utf8': 'Not a valid utf-8 string.', 'invalid_uuid': 'Not a valid UUID.'})>¶
-
mediator_terms
= <fields.List(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid list.'})>¶
-
recipient_terms
= <fields.List(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid list.'})>¶
-
state
= <fields.String(default=<marshmallow.missing>, attribute=None, validate=<OneOf(choices=['request', 'granted', 'denied'], labels=[], error='Must be one of: {choices}.')>, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid string.', 'invalid_utf8': 'Not a valid utf-8 string.'})>¶
-
-
class
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
MediationListSchema
(*args, **kwargs)[source]¶ Bases:
aries_cloudagent.messaging.models.openapi.OpenAPISchema
Result schema for mediation list query.
-
results
= <fields.List(default=<marshmallow.missing>, attribute=None, validate=None, required=False, load_only=False, dump_only=False, missing=<marshmallow.missing>, allow_none=False, error_messages={'required': 'Missing data for required field.', 'null': 'Field may not be null.', 'validator_failed': 'Invalid value.', 'invalid': 'Not a valid list.'})>¶
-
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
clear_default_mediator
(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ Clear set default mediator.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
delete_mediation_request
(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ Delete a mediation request by ID.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
get_default_mediator
(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ Get default mediator.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
get_keylist
(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ Retrieve keylists by connection or role.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
list_mediation_requests
(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ List mediation requests for either client or server role.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
mediation_request_deny
(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ Deny a stored mediation request.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
mediation_request_grant
(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ Grant a stored mediation request.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
mediation_sort_key
(mediation: dict)[source]¶ Get the sorting key for a particular serialized mediation record.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
post_process_routes
(app: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ Amend swagger API.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
register
(app: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ Register routes.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
request_mediation
(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ Request mediation from connection.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
retrieve_mediation_request
(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ Retrieve a single mediation request.
-
aries_cloudagent.protocols.coordinate_mediation.v1_0.routes.
send_keylist_query
(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7fb0540b4950>)[source]¶ Send keylist query to mediator.