Struct dynamo_es::DynamoEventRepository
source · [−]pub struct DynamoEventRepository { /* private fields */ }Expand description
A snapshot backed event repository for use in backing a PersistedSnapshotStore.
Implementations
sourceimpl DynamoEventRepository
impl DynamoEventRepository
sourcepub fn new(client: Client) -> Self
pub fn new(client: Client) -> Self
Creates a new DynamoEventRepository from the provided dynamo client using default
table names.
use aws_sdk_dynamodb::Client;
use dynamo_es::DynamoEventRepository;
fn configure_repo(client: Client) -> DynamoEventRepository {
DynamoEventRepository::new(client)
}sourcepub fn with_tables(self, event_table: &str, snapshot_table: &str) -> Self
pub fn with_tables(self, event_table: &str, snapshot_table: &str) -> Self
Configures a DynamoEventRepository to use the provided table names.
use aws_sdk_dynamodb::Client;
use dynamo_es::DynamoEventRepository;
fn configure_repo(client: Client) -> DynamoEventRepository {
let store = DynamoEventRepository::new(client);
store.with_tables("my_event_table", "my_snapshot_table")
}Trait Implementations
sourceimpl PersistedEventRepository for DynamoEventRepository
impl PersistedEventRepository for DynamoEventRepository
sourcefn get_events<'life0, 'life1, 'async_trait, A>(
&'life0 self,
aggregate_id: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<Vec<SerializedEvent>, PersistenceError>> + Send + 'async_trait>> where
A: 'async_trait + Aggregate,
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_events<'life0, 'life1, 'async_trait, A>(
&'life0 self,
aggregate_id: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<Vec<SerializedEvent>, PersistenceError>> + Send + 'async_trait>> where
A: 'async_trait + Aggregate,
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Returns all events for a single aggregate instance.
sourcefn get_last_events<'life0, 'life1, 'async_trait, A>(
&'life0 self,
aggregate_id: &'life1 str,
number_events: usize
) -> Pin<Box<dyn Future<Output = Result<Vec<SerializedEvent>, PersistenceError>> + Send + 'async_trait>> where
A: 'async_trait + Aggregate,
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_last_events<'life0, 'life1, 'async_trait, A>(
&'life0 self,
aggregate_id: &'life1 str,
number_events: usize
) -> Pin<Box<dyn Future<Output = Result<Vec<SerializedEvent>, PersistenceError>> + Send + 'async_trait>> where
A: 'async_trait + Aggregate,
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Returns the last events for a single aggregate instance.
sourcefn get_snapshot<'life0, 'life1, 'async_trait, A>(
&'life0 self,
aggregate_id: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<Option<SerializedSnapshot>, PersistenceError>> + Send + 'async_trait>> where
A: 'async_trait + Aggregate,
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_snapshot<'life0, 'life1, 'async_trait, A>(
&'life0 self,
aggregate_id: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<Option<SerializedSnapshot>, PersistenceError>> + Send + 'async_trait>> where
A: 'async_trait + Aggregate,
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Returns the current snapshot for an aggregate instance.
sourcefn persist<'life0, 'life1, 'async_trait, A>(
&'life0 self,
events: &'life1 [SerializedEvent],
snapshot_update: Option<(String, Value, usize)>
) -> Pin<Box<dyn Future<Output = Result<(), PersistenceError>> + Send + 'async_trait>> where
A: 'async_trait + Aggregate,
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn persist<'life0, 'life1, 'async_trait, A>(
&'life0 self,
events: &'life1 [SerializedEvent],
snapshot_update: Option<(String, Value, usize)>
) -> Pin<Box<dyn Future<Output = Result<(), PersistenceError>> + Send + 'async_trait>> where
A: 'async_trait + Aggregate,
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Commits the updated aggregate and accompanying events.
Auto Trait Implementations
impl !RefUnwindSafe for DynamoEventRepository
impl Send for DynamoEventRepository
impl Sync for DynamoEventRepository
impl Unpin for DynamoEventRepository
impl !UnwindSafe for DynamoEventRepository
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a
WithDispatch wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber to this type, returning a
WithDispatch wrapper. Read more