adk_memory_outbox_resolver behaviour (erlang_adk v0.10.0)

View Source

Runtime resolver for durable memory-outbox adapter identities.

The outbox persists only {AdapterModule, StableId}. A processor invokes this callback for each attempt to obtain the current runtime service reference. Resolver state and the returned handle are never written to Mnesia.

Summary

Types

service_ref/0

-type service_ref() :: {module(), term()}.

stable_id/0

-type stable_id() :: binary().

Callbacks

claimable_identities/1

(optional)
-callback claimable_identities(ResolverState :: term()) -> {ok, all | map()} | {error, term()}.

ready/1

(optional)
-callback ready(ResolverState :: term()) -> ready | not_ready | {error, term()}.

resolve/3

-callback resolve(AdapterModule :: module(), StableId :: stable_id(), ResolverState :: term()) ->
                     {ok, service_ref()} | {error, term()}.