pub struct OutboxClaim { /* private fields */ }Expand description
The outbox pass’s intent: it wants the delivery while the deployment is not draining, it still holds the row’s claim, and the chosen worker is still registered.
The claim is the half no transport can ask about — see the module docs.
§Why the registration term is here and not left to the transport
An intent answers the caller’s whole question. If a transport also applied
terms of its own, still_wanted() would be a partial answer whose real
meaning depended on which transport asked it, and the two halves could drift
apart with nothing to catch it. So every term the outbox arm’s original
closure asked lives here — including the registration re-check, which that
closure did ask (liminal_transport.rs:1209-1220) and which would otherwise
be silently lost in the move.
Implementations§
Source§impl OutboxClaim
impl OutboxClaim
Sourcepub fn new(
gate: DeliveryGate,
dispatch_key: String,
registry: ConnectedWorkerRegistry,
worker: WorkerId,
) -> Self
pub fn new( gate: DeliveryGate, dispatch_key: String, registry: ConnectedWorkerRegistry, worker: WorkerId, ) -> Self
Bind this intent to the gate, the dispatch key of the row being delivered, and the worker the pass selected.
Trait Implementations§
Source§impl Debug for OutboxClaim
impl Debug for OutboxClaim
Source§impl DeliveryIntent for OutboxClaim
impl DeliveryIntent for OutboxClaim
Source§fn still_wanted(&self) -> bool
fn still_wanted(&self) -> bool
true while the caller still wants this delivery to complete.Auto Trait Implementations§
impl !RefUnwindSafe for OutboxClaim
impl !UnwindSafe for OutboxClaim
impl Freeze for OutboxClaim
impl Send for OutboxClaim
impl Sync for OutboxClaim
impl Unpin for OutboxClaim
impl UnsafeUnpin for OutboxClaim
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> IntoMaybeUndefined<T> for T
impl<T> IntoMaybeUndefined<T> for T
Source§fn into_maybe_undefined(self) -> MaybeUndefined<T>
fn into_maybe_undefined(self) -> MaybeUndefined<T>
Source§impl<T> IntoOption<T> for T
impl<T> IntoOption<T> for T
Source§fn into_option(self) -> Option<T>
fn into_option(self) -> Option<T>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request