aries_cloudagent.resolver package
Interfaces and base classes for DID Resolution.
- async aries_cloudagent.resolver.setup(context: aries_cloudagent.config.injection_context.InjectionContext)[source]
Set up default resolvers.
Subpackages
Submodules
aries_cloudagent.resolver.base module
Base Class for DID Resolvers.
- class aries_cloudagent.resolver.base.BaseDIDResolver(type_: Optional[aries_cloudagent.resolver.base.ResolverType] = None)[source]
Bases:
abc.ABC
Base Class for DID Resolvers.
- property native
Return if this resolver is native.
- async resolve(profile: aries_cloudagent.core.profile.Profile, did: Union[str, pydid.DID]) dict [source]
Resolve a DID using this resolver.
- abstract async setup(context: aries_cloudagent.config.injection_context.InjectionContext)[source]
Do asynchronous resolver setup.
- property supported_did_regex: Pattern
Supported DID regex for matching this resolver to DIDs it can resolve.
Override this property with a class var or similar to use regex matching on DIDs to determine if this resolver supports a given DID.
- property supported_methods: Sequence[str]
Return supported methods.
DEPRECATED: Use supported_did_regex instead.
- async supports(profile: aries_cloudagent.core.profile.Profile, did: str) bool [source]
Return if this resolver supports the given DID.
Override this method to determine if this resolver supports a DID based on information other than just a regular expression; i.e. check a value in storage, query a resolver connection record, etc.
- exception aries_cloudagent.resolver.base.DIDMethodNotSupported(*args, error_code: Optional[str] = None, **kwargs)[source]
Bases:
aries_cloudagent.resolver.base.ResolverError
Raised when no resolver is registered for a given did method.
- exception aries_cloudagent.resolver.base.DIDNotFound(*args, error_code: Optional[str] = None, **kwargs)[source]
Bases:
aries_cloudagent.resolver.base.ResolverError
Raised when DID is not found in verifiable data registry.
- class aries_cloudagent.resolver.base.ResolutionMetadata(resolver_type: aries_cloudagent.resolver.base.ResolverType, resolver: str, retrieved_time: str, duration: int)[source]
Bases:
tuple
Resolution Metadata.
- property duration
Alias for field number 3
- property resolver
Alias for field number 1
- property resolver_type
Alias for field number 0
- property retrieved_time
Alias for field number 2
- class aries_cloudagent.resolver.base.ResolutionResult(did_document: dict, metadata: aries_cloudagent.resolver.base.ResolutionMetadata)[source]
Bases:
object
Resolution Class to pack the DID Doc and the resolution information.
- exception aries_cloudagent.resolver.base.ResolverError(*args, error_code: Optional[str] = None, **kwargs)[source]
Bases:
aries_cloudagent.core.error.BaseError
Base class for resolver exceptions.
aries_cloudagent.resolver.did_resolver module
the did resolver.
responsible for keeping track of all resolvers. more importantly retrieving did’s from different sources provided by the method type.
- class aries_cloudagent.resolver.did_resolver.DIDResolver(registry: aries_cloudagent.resolver.did_resolver_registry.DIDResolverRegistry)[source]
Bases:
object
did resolver singleton.
- async dereference(profile: aries_cloudagent.core.profile.Profile, did_url: str, *, cls: Type[aries_cloudagent.resolver.did_resolver.ResourceType] = pydid.Resource) aries_cloudagent.resolver.did_resolver.ResourceType [source]
Dereference a DID URL to its corresponding DID Doc object.
- async resolve(profile: aries_cloudagent.core.profile.Profile, did: Union[str, pydid.DID]) dict [source]
Resolve a DID.
- async resolve_with_metadata(profile: aries_cloudagent.core.profile.Profile, did: Union[str, pydid.DID]) aries_cloudagent.resolver.base.ResolutionResult [source]
Resolve a DID and return the ResolutionResult.
aries_cloudagent.resolver.did_resolver_registry module
In memmory storage for registering did resolvers.