pub struct PostgresIdempotencyStore { /* private fields */ }Implementations§
Trait Implementations§
Source§impl Clone for PostgresIdempotencyStore
impl Clone for PostgresIdempotencyStore
Source§fn clone(&self) -> PostgresIdempotencyStore
fn clone(&self) -> PostgresIdempotencyStore
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PostgresIdempotencyStore
impl Debug for PostgresIdempotencyStore
Source§impl IdempotencyStore for PostgresIdempotencyStore
impl IdempotencyStore for PostgresIdempotencyStore
fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 IdempotencyKey,
) -> Pin<Box<dyn Future<Output = Result<Option<IdempotencyRecord>, IdempotencyError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn begin<'life0, 'async_trait>(
&'life0 self,
key: IdempotencyKey,
fingerprint: RequestFingerprint,
now: DateTime<Utc>,
stale_after: TimeDelta,
) -> Pin<Box<dyn Future<Output = Result<BeginOutcome, IdempotencyError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn begin<'life0, 'async_trait>(
&'life0 self,
key: IdempotencyKey,
fingerprint: RequestFingerprint,
now: DateTime<Utc>,
stale_after: TimeDelta,
) -> Pin<Box<dyn Future<Output = Result<BeginOutcome, IdempotencyError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Atomically acquires an execution lease or returns the existing state.
Source§fn complete<'life0, 'async_trait>(
&'life0 self,
lease: IdempotencyLease,
response: Value,
completed_at: DateTime<Utc>,
) -> Pin<Box<dyn Future<Output = Result<IdempotencyRecord, IdempotencyError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn complete<'life0, 'async_trait>(
&'life0 self,
lease: IdempotencyLease,
response: Value,
completed_at: DateTime<Utc>,
) -> Pin<Box<dyn Future<Output = Result<IdempotencyRecord, IdempotencyError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Atomically replaces the matching in-progress lease with a completed response.
Source§fn abort<'life0, 'life1, 'async_trait>(
&'life0 self,
lease: &'life1 IdempotencyLease,
) -> Pin<Box<dyn Future<Output = Result<bool, IdempotencyError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn abort<'life0, 'life1, 'async_trait>(
&'life0 self,
lease: &'life1 IdempotencyLease,
) -> Pin<Box<dyn Future<Output = Result<bool, IdempotencyError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Releases only the matching in-progress lease after the application side effect failed.
Auto Trait Implementations§
impl !RefUnwindSafe for PostgresIdempotencyStore
impl !UnwindSafe for PostgresIdempotencyStore
impl Freeze for PostgresIdempotencyStore
impl Send for PostgresIdempotencyStore
impl Sync for PostgresIdempotencyStore
impl Unpin for PostgresIdempotencyStore
impl UnsafeUnpin for PostgresIdempotencyStore
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