pub trait ReadJournal:
Send
+ Sync
+ 'static {
// Required method
fn events_by_persistence_id<'life0, 'life1, 'async_trait>(
&'life0 self,
persistence_id: &'life1 str,
from_sequence_nr: u64,
to_sequence_nr: u64,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventEnvelope>, JournalError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
// Provided methods
fn current_events_by_persistence_id<'life0, 'life1, 'async_trait>(
&'life0 self,
persistence_id: &'life1 str,
from: u64,
to: u64,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventEnvelope>, JournalError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait { ... }
fn events_by_tag<'life0, 'life1, 'async_trait>(
&'life0 self,
_tag: &'life1 str,
_offset: Offset,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventEnvelope>, JournalError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait { ... }
fn current_events_by_tag<'life0, 'life1, 'async_trait>(
&'life0 self,
tag: &'life1 str,
offset: Offset,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventEnvelope>, JournalError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait { ... }
fn all_persistence_ids<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>, JournalError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait { ... }
fn current_persistence_ids<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>, JournalError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait { ... }
}Expand description
Read-journal surface. current_* variants take a snapshot at call
time; the non-current variants are tail-following (live) — backends
that only support snapshots return the snapshot and let callers
re-poll.
Required Methods§
Sourcefn events_by_persistence_id<'life0, 'life1, 'async_trait>(
&'life0 self,
persistence_id: &'life1 str,
from_sequence_nr: u64,
to_sequence_nr: u64,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventEnvelope>, JournalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn events_by_persistence_id<'life0, 'life1, 'async_trait>(
&'life0 self,
persistence_id: &'life1 str,
from_sequence_nr: u64,
to_sequence_nr: u64,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventEnvelope>, JournalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Replay events for a single persistence id, sequence-number bounded.
Provided Methods§
Sourcefn current_events_by_persistence_id<'life0, 'life1, 'async_trait>(
&'life0 self,
persistence_id: &'life1 str,
from: u64,
to: u64,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventEnvelope>, JournalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn current_events_by_persistence_id<'life0, 'life1, 'async_trait>(
&'life0 self,
persistence_id: &'life1 str,
from: u64,
to: u64,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventEnvelope>, JournalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Snapshot variant of Self::events_by_persistence_id —
default impl is identical (in-memory journals don’t tail).
Sourcefn events_by_tag<'life0, 'life1, 'async_trait>(
&'life0 self,
_tag: &'life1 str,
_offset: Offset,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventEnvelope>, JournalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn events_by_tag<'life0, 'life1, 'async_trait>(
&'life0 self,
_tag: &'life1 str,
_offset: Offset,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventEnvelope>, JournalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
All events with a given tag, returned in offset order. Default impl is empty so backends without tag indexing don’t silently mis-behave.
fn current_events_by_tag<'life0, 'life1, 'async_trait>(
&'life0 self,
tag: &'life1 str,
offset: Offset,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventEnvelope>, JournalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Sourcefn all_persistence_ids<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>, JournalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn all_persistence_ids<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>, JournalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Distinct persistence ids known to the backend. Default impl returns empty (backends without an id index opt in).