pub struct RemoteOutcomes<C> { /* private fields */ }Expand description
Stage 8 over HooksService.Outcome: any 2xx acknowledges, everything else
leaves the outcome queued for kind 8’s backoff.
Implementations§
Source§impl<C> RemoteOutcomes<C>
impl<C> RemoteOutcomes<C>
Sourcepub fn new(client: Arc<HookClient<C>>) -> Self
pub fn new(client: Arc<HookClient<C>>) -> Self
The role over a shared client, with the default 5 s timeout.
Sourcepub fn with_timeout(self, timeout: Duration) -> Self
pub fn with_timeout(self, timeout: Duration) -> Self
Bound each call by timeout.
Trait Implementations§
Source§impl<C> Clone for RemoteOutcomes<C>
impl<C> Clone for RemoteOutcomes<C>
Source§impl<C> Debug for RemoteOutcomes<C>
impl<C> Debug for RemoteOutcomes<C>
Source§impl<C: HookChannel> OutcomeSink for RemoteOutcomes<C>
impl<C: HookChannel> OutcomeSink for RemoteOutcomes<C>
Source§async fn deliver(&self, outcome: &Outcome) -> Result<(), DeliveryError>
async fn deliver(&self, outcome: &Outcome) -> Result<(), DeliveryError>
Deliver one terminal outcome. Every error leaves it queued for retry.
Source§fn deliver_batch(
&self,
outcomes: &[Outcome],
) -> impl Future<Output = Vec<Result<(), DeliveryError>>> + MaybeSend
fn deliver_batch( &self, outcomes: &[Outcome], ) -> impl Future<Output = Vec<Result<(), DeliveryError>>> + MaybeSend
Deliver a batch sequentially by default; each result is independent.
Auto Trait Implementations§
impl<C> !RefUnwindSafe for RemoteOutcomes<C>
impl<C> !UnwindSafe for RemoteOutcomes<C>
impl<C> Freeze for RemoteOutcomes<C>
impl<C> Send for RemoteOutcomes<C>
impl<C> Sync for RemoteOutcomes<C>
impl<C> Unpin for RemoteOutcomes<C>
impl<C> UnsafeUnpin for RemoteOutcomes<C>
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