pub struct InMemoryDeduplicationStore { /* private fields */ }Expand description
In-memory deduplication store backed by a DashMap.
Each entry carries an AbortHandle for its 5-minute TTL expiry task.
DashMap guards are never held across .await points.
Implementations§
Trait Implementations§
Source§impl DeduplicationStore for InMemoryDeduplicationStore
impl DeduplicationStore for InMemoryDeduplicationStore
Source§fn check_and_insert<'life0, 'life1, 'async_trait>(
&'life0 self,
wamid: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<bool, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn check_and_insert<'life0, 'life1, 'async_trait>(
&'life0 self,
wamid: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<bool, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Checks whether
wamid has been seen before and records it if not. Read moreAuto Trait Implementations§
impl Freeze for InMemoryDeduplicationStore
impl !RefUnwindSafe for InMemoryDeduplicationStore
impl Send for InMemoryDeduplicationStore
impl Sync for InMemoryDeduplicationStore
impl Unpin for InMemoryDeduplicationStore
impl UnsafeUnpin for InMemoryDeduplicationStore
impl !UnwindSafe for InMemoryDeduplicationStore
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> 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