evoq_snapshot_adapter behaviour (evoq v1.14.1)
View SourceSnapshot store adapter behavior for evoq
Defines the interface for snapshot operations. Snapshots are used to optimize aggregate reconstruction by storing periodic state.
Summary
Callbacks
-callback delete_at_version(StoreId :: atom(), StreamId :: binary(), Version :: non_neg_integer()) -> ok | {error, term()}.
-callback list_versions(StoreId :: atom(), StreamId :: binary()) -> {ok, [non_neg_integer()]} | {error, term()}.
-callback read_at_version(StoreId :: atom(), StreamId :: binary(), Version :: non_neg_integer()) -> {ok, evoq_snapshot()} | {error, not_found | term()}.