Crate event_sourcing

Crate event_sourcing 

Source
Expand description

§Event Sourcing

[dependencies]
event-sourcing = "0.1"

Compiler support: requires rustc 1.56+

The event sourcing crate contains the core logic for implementing a event sourced backend logic, preferably combined with CQRS.

The main struct in this project is the EventStore. This struct is used for persisting, fetching and streaming aggregates and events.

§License
Licensed under either of Apache License, Version 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Modules§

adapter
The adapter modules contains both types used for implementing an adapter, and prebuilt adapters ready for use
error
This module contains different errors used throughout the crate

Structs§

Event
Represents a single event
EventListBuilder
A utility for creating a sequence of events
EventStore
The event store used to persisting events. Besides from using the store, to well, store events, it can also be used to fetch them, and to stream updates synced between different instances
EventStoreBuilder
Utility for building a new event store
RealtimeStreamData

Traits§

Aggregate
Trait used for implementing an aggregate root. The most interesting part being the apple() method that is used for replaying the events onto the aggregate
IntoEventList
Utility trait for making it easier to return events