aries_cloudagent.connections.models package

Submodules

aries_cloudagent.connections.models.connection_record module

Handle connection information interface with non-secrets storage.

class aries_cloudagent.connections.models.connection_record.ConnectionRecord(*, connection_id: str = None, my_did: str = None, their_did: str = None, their_label: str = None, their_role: str = None, initiator: str = None, invitation_key: str = None, request_id: str = None, state: str = None, inbound_connection_id: str = None, error_msg: str = None, routing_state: str = None, accept: str = None, invitation_mode: str = None, alias: str = None, **kwargs)[source]

Bases: aries_cloudagent.messaging.models.base_record.BaseRecord

Represents a single pairwise connection.

ACCEPT_AUTO = 'auto'
ACCEPT_MANUAL = 'manual'
CACHE_ENABLED = True
DIRECTION_RECEIVED = 'received'
DIRECTION_SENT = 'sent'
INITIATOR_EXTERNAL = 'external'
INITIATOR_MULTIUSE = 'multiuse'
INITIATOR_SELF = 'self'
INVITATION_MODE_MULTI = 'multi'
INVITATION_MODE_ONCE = 'once'
INVITATION_MODE_STATIC = 'static'
LOG_STATE_FLAG = 'debug.connections'
class Meta[source]

Bases: object

ConnectionRecord metadata.

schema_class = 'ConnectionRecordSchema'
RECORD_ID_NAME = 'connection_id'
RECORD_TYPE = 'connection'
RECORD_TYPE_INVITATION = 'connection_invitation'
RECORD_TYPE_REQUEST = 'connection_request'
ROUTING_STATE_ACTIVE = 'active'
ROUTING_STATE_ERROR = 'error'
ROUTING_STATE_NONE = 'none'
ROUTING_STATE_REQUEST = 'request'
STATE_ACTIVE = 'active'
STATE_ERROR = 'error'
STATE_INACTIVE = 'inactive'
STATE_INIT = 'init'
STATE_INVITATION = 'invitation'
STATE_REQUEST = 'request'
STATE_RESPONSE = 'response'
TAG_NAMES = {'invitation_key', 'my_did', 'request_id', 'their_did'}
WEBHOOK_TOPIC = 'connections'
attach_invitation(context: aries_cloudagent.config.injection_context.InjectionContext, invitation: aries_cloudagent.protocols.connections.messages.connection_invitation.ConnectionInvitation)[source]

Persist the related connection invitation to storage.

Parameters:
  • context – The injection context to use
  • invitation – The invitation to relate to this connection record
attach_request(context: aries_cloudagent.config.injection_context.InjectionContext, request: aries_cloudagent.protocols.connections.messages.connection_request.ConnectionRequest)[source]

Persist the related connection request to storage.

Parameters:
  • context – The injection context to use
  • request – The request to relate to this connection record
connection_id

Accessor for the ID associated with this connection.

is_multiuse_invitation

Accessor for multi use invitation mode.

is_ready

Accessor for connection readiness.

post_save(context: aries_cloudagent.config.injection_context.InjectionContext, *args, **kwargs)[source]

Perform post-save actions.

Parameters:context – The injection context to use
record_value

Accessor to for the JSON record value properties for this connection.

classmethod retrieve_by_did(context: aries_cloudagent.config.injection_context.InjectionContext, their_did: str = None, my_did: str = None, initiator: str = None) → aries_cloudagent.connections.models.connection_record.ConnectionRecord[source]

Retrieve a connection record by target DID.

Parameters:
  • context – The injection context to use
  • their_did – The target DID to filter by
  • my_did – One of our DIDs to filter by
  • initiator – Filter connections by the initiator value
classmethod retrieve_by_invitation_key(context: aries_cloudagent.config.injection_context.InjectionContext, invitation_key: str, initiator: str = None) → aries_cloudagent.connections.models.connection_record.ConnectionRecord[source]

Retrieve a connection record by invitation key.

Parameters:
  • context – The injection context to use
  • invitation_key – The key on the originating invitation
  • initiator – Filter by the initiator value
classmethod retrieve_by_request_id(context: aries_cloudagent.config.injection_context.InjectionContext, request_id: str) → aries_cloudagent.connections.models.connection_record.ConnectionRecord[source]

Retrieve a connection record from our previous request ID.

Parameters:
  • context – The injection context to use
  • request_id – The ID of the originating connection request
retrieve_invitation(context: aries_cloudagent.config.injection_context.InjectionContext) → aries_cloudagent.protocols.connections.messages.connection_invitation.ConnectionInvitation[source]

Retrieve the related connection invitation.

Parameters:context – The injection context to use
retrieve_request(context: aries_cloudagent.config.injection_context.InjectionContext) → aries_cloudagent.protocols.connections.messages.connection_request.ConnectionRequest[source]

Retrieve the related connection invitation.

Parameters:context – The injection context to use
class aries_cloudagent.connections.models.connection_record.ConnectionRecordSchema(*args, **kwargs)[source]

Bases: aries_cloudagent.messaging.models.base_record.BaseRecordSchema

Schema to allow serialization/deserialization of connection records.

class Meta[source]

Bases: object

ConnectionRecordSchema metadata.

model_class

alias of ConnectionRecord

accept = <fields.String(default=<marshmallow.missing>, attribute=None, validate=<OneOf(choices=['manual', 'auto'], 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.'})>
alias = <fields.String(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.'})>
connection_id = <fields.String(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.'})>
error_msg = <fields.String(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.'})>
inbound_connection_id = <fields.String(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.'})>
initiator = <fields.String(default=<marshmallow.missing>, attribute=None, validate=<OneOf(choices=['self', 'external', 'multiuse'], 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.'})>
invitation_key = <fields.String(default=<marshmallow.missing>, attribute=None, validate=<aries_cloudagent.messaging.valid.IndyRawPublicKey object>, 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.'})>
invitation_mode = <fields.String(default=<marshmallow.missing>, attribute=None, validate=<OneOf(choices=['once', 'multi', 'static'], 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.'})>
my_did = <fields.String(default=<marshmallow.missing>, attribute=None, validate=<aries_cloudagent.messaging.valid.IndyDID object>, 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.'})>
request_id = <fields.String(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.'})>
routing_state = <fields.String(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.'})>
their_did = <fields.String(default=<marshmallow.missing>, attribute=None, validate=<aries_cloudagent.messaging.valid.IndyDID object>, 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.'})>
their_label = <fields.String(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.'})>
their_role = <fields.String(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.'})>

aries_cloudagent.connections.models.connection_target module

Record used to handle routing of messages to another agent.

class aries_cloudagent.connections.models.connection_target.ConnectionTarget(*, did: str = None, endpoint: str = None, label: str = None, recipient_keys: Sequence[str] = None, routing_keys: Sequence[str] = None, sender_key: str = None)[source]

Bases: aries_cloudagent.messaging.models.base.BaseModel

Record used to handle routing of messages to another agent.

class Meta[source]

Bases: object

ConnectionTarget metadata.

schema_class = 'ConnectionTargetSchema'
class aries_cloudagent.connections.models.connection_target.ConnectionTargetSchema(*args, **kwargs)[source]

Bases: aries_cloudagent.messaging.models.base.BaseModelSchema

ConnectionTarget schema.

class Meta[source]

Bases: object

ConnectionTargetSchema metadata.

model_class

alias of ConnectionTarget

did

Used by autodoc_mock_imports.

endpoint

Used by autodoc_mock_imports.

label

Used by autodoc_mock_imports.

recipient_keys

Used by autodoc_mock_imports.

routing_keys

Used by autodoc_mock_imports.

sender_key

Used by autodoc_mock_imports.