pub struct ReceivedOutboxMessage<S> { /* private fields */ }Expand description
A claimed outbox row, settled back to the store on ack/nack.
Trait Implementations§
Source§impl<S> ReceivedMessage for ReceivedOutboxMessage<S>where
S: AsyncOutboxStore,
impl<S> ReceivedMessage for ReceivedOutboxMessage<S>where
S: AsyncOutboxStore,
Source§async fn ack(self) -> Result<(), TransportError>
async fn ack(self) -> Result<(), TransportError>
Complete the row (transport delivery succeeded).
Source§async fn nack(self, reason: &str) -> Result<(), TransportError>
async fn nack(self, reason: &str) -> Result<(), TransportError>
Release for retry, or fail once the attempt ceiling is reached.
Source§async fn dead_letter(self, reason: &str) -> Result<(), TransportError>
async fn dead_letter(self, reason: &str) -> Result<(), TransportError>
Fail the row terminally (the outbox Failed status is the DLQ/archive).
Auto Trait Implementations§
impl<S> Freeze for ReceivedOutboxMessage<S>
impl<S> RefUnwindSafe for ReceivedOutboxMessage<S>where
S: RefUnwindSafe,
impl<S> Send for ReceivedOutboxMessage<S>
impl<S> Sync for ReceivedOutboxMessage<S>
impl<S> Unpin for ReceivedOutboxMessage<S>
impl<S> UnsafeUnpin for ReceivedOutboxMessage<S>
impl<S> UnwindSafe for ReceivedOutboxMessage<S>where
S: RefUnwindSafe,
Blanket Implementations§
Source§impl<T> AggregateBuilder for T
impl<T> AggregateBuilder for T
fn aggregate<A: Aggregate>(self) -> AggregateRepository<Self, A>
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> Queueable for T
impl<T> Queueable for T
Source§fn queued(self) -> QueuedRepository<Self, InMemoryAsyncLockManager>
fn queued(self) -> QueuedRepository<Self, InMemoryAsyncLockManager>
Wrap with the default async lock manager. Pair with
.aggregate::<T>() for per-aggregate serialization over the async
repository surface.Source§fn queued_with<L: AsyncLockManager>(
self,
lock_manager: L,
) -> QueuedRepository<Self, L>
fn queued_with<L: AsyncLockManager>( self, lock_manager: L, ) -> QueuedRepository<Self, L>
Wrap with a custom async lock manager.