pub struct PgSnapshotter { /* private fields */ }
Expand description
PostgreSQL implementation for the Snapshotter
trait.
The PgSnapshotter
struct implements the Snapshotter
trait for PostgreSQL databases.
It allows for stroring and retrieving snapshots of StateQuery
from PostgreSQL database.
Implementations§
Source§impl PgSnapshotter
impl PgSnapshotter
Sourcepub async fn new(pool: PgPool, every: u64) -> Result<Self, Error>
pub async fn new(pool: PgPool, every: u64) -> Result<Self, Error>
Creates a new instance of PgSnapshotter
with the specified PostgreSQL connection pool and snapshot frequency.
§Arguments
pool
: A PostgreSQL connection pool (PgPool
) representing the database connection.every
: The frequency of snapshot creation, specified as the number of events between consecutive snapshots.
§Returns
A new PgSnapshotter
instance.
Trait Implementations§
Source§impl Clone for PgSnapshotter
impl Clone for PgSnapshotter
Source§fn clone(&self) -> PgSnapshotter
fn clone(&self) -> PgSnapshotter
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl StateSnapshotter<i64> for PgSnapshotter
impl StateSnapshotter<i64> for PgSnapshotter
Source§fn load_snapshot<'life0, 'async_trait, S>(
&'life0 self,
default: StatePart<PgEventId, S>,
) -> Pin<Box<dyn Future<Output = StatePart<PgEventId, S>> + Send + 'async_trait>>where
S: Send + Sync + DeserializeOwned + StateQuery + 'static + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
fn load_snapshot<'life0, 'async_trait, S>(
&'life0 self,
default: StatePart<PgEventId, S>,
) -> Pin<Box<dyn Future<Output = StatePart<PgEventId, S>> + Send + 'async_trait>>where
S: Send + Sync + DeserializeOwned + StateQuery + 'static + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
Loads a snapshot of a state part. If the snapshot is not present of invalid, it returns the provided
default
. Read moreSource§fn store_snapshot<'life0, 'life1, 'async_trait, S>(
&'life0 self,
state: &'life1 StatePart<PgEventId, S>,
) -> Pin<Box<dyn Future<Output = Result<(), BoxDynError>> + Send + 'async_trait>>where
S: Send + Sync + Serialize + StateQuery + 'static + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn store_snapshot<'life0, 'life1, 'async_trait, S>(
&'life0 self,
state: &'life1 StatePart<PgEventId, S>,
) -> Pin<Box<dyn Future<Output = Result<(), BoxDynError>> + Send + 'async_trait>>where
S: Send + Sync + Serialize + StateQuery + 'static + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Stores a snapshot of the provided state part. Read more
Auto Trait Implementations§
impl Freeze for PgSnapshotter
impl !RefUnwindSafe for PgSnapshotter
impl Send for PgSnapshotter
impl Sync for PgSnapshotter
impl Unpin for PgSnapshotter
impl !UnwindSafe for PgSnapshotter
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more