Expand description
Common persistence mechanisms.
This module is used alongside one of the available repository crates:
Structs§
- Holds context for the pure event store implementation PostgresStore. This is only used internally within the
EventStore
. - A simple query and view repository. This is used both to act as a
Query
for processing events and to return materialized views. - Storage engine using a database backing. This defaults to an event-sourced store (i.e., events are the single source of truth), but can be configured to be aggregate-sourced or use snapshots when a large number of events are associated with a single aggregate instance.
- A utility for replaying committed events to a
Query
. - Used to send events to a
ReplayStream
for replaying events. - Accesses a domain event stream for a particular aggregate.
- A representation of a semantic version used in a
SemanticVersionEventUpcaster
. - Type can not be converted to a
Semantic Version
. - This upcasts any event that has the same
event_type
and anevent_version
that is less than the version configured on the upcaster. - A serialized version of an event with metadata. Used by repositories to store and load events from a database.
- A serialized version of a snapshot. Used by repositories to store and load snapshots from a database.
- A data structure maintaining context when updating views.
Enums§
- Errors for implementations of a persistent event store.
Traits§
- Used to upcast and event from an older type or version to the current form. This is needed to modify the structure of events older versions are already persisted.
- Handles the database access needed for operation of a PersistedSnapshotStore.
- Handles the database access needed for a GenericQuery.
Type Aliases§
- A convenience type for query error handlers.
- A helper type for creating the upcaster function for a
SemanticVersionEventUpcaster
.