pub struct LiminalCompletionSource { /* private fields */ }Expand description
Receives one worker result over liminal and re-enters it into aion.
Holds the installed OutboxDeliveryCallback (the same prod
ServerOutboxDeliveryCallback the gRPC completion path uses) and maps a
DispatchResponse onto it, threading run_id so the continue-as-new run
gates apply unchanged.
Implementations§
Source§impl LiminalCompletionSource
impl LiminalCompletionSource
Sourcepub fn new(callback: Arc<dyn OutboxDeliveryCallback>) -> Self
pub fn new(callback: Arc<dyn OutboxDeliveryCallback>) -> Self
Build a completion source over the shared outbox delivery callback.
Sourcepub fn with_completion_fences(self, completion_fences: CompletionFences) -> Self
pub fn with_completion_fences(self, completion_fences: CompletionFences) -> Self
Share the authoritative generation registry used by dispatch.
Sourcepub fn deliver(&self, response: &DispatchResponse) -> Result<bool, ServerError>
pub fn deliver(&self, response: &DispatchResponse) -> Result<bool, ServerError>
Re-enter one worker result into aion through the delivery callback.
Returns the callback’s bool: true when delivered to a live run,
false when no run is live (the expected stale-completion drop that
recovery re-arms). A success outcome routes to deliver_completion; a
failure outcome to deliver_failure.
§Errors
Returns ServerError when the response carries an unparseable id or
the engine rejects the delivery.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for LiminalCompletionSource
impl !UnwindSafe for LiminalCompletionSource
impl Freeze for LiminalCompletionSource
impl Send for LiminalCompletionSource
impl Sync for LiminalCompletionSource
impl Unpin for LiminalCompletionSource
impl UnsafeUnpin for LiminalCompletionSource
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