pub enum ProxyDrain<W, P>{
InitializationRejected {
failure: WorkerInitializationFailure,
activation: P,
shutdown: Option<EstablishedShutdownResolved<W::Protocol>>,
stopped: ChildStopped<BehaviorAddr<W>>,
},
InitializationStopped {
activation: P,
observed: Option<ChildStopped<BehaviorAddr<W>>>,
returned: ChildStopped<BehaviorAddr<W>>,
},
InitializationCompleted {
permit: ActivationPermit<W>,
activation: P,
stopped: ChildStopped<BehaviorAddr<W>>,
},
ActivationStartRejected {
request: BeginActivation<W, P>,
reason: ActivationStartRejection,
shutdown: Option<EstablishedShutdownResolved<W::Protocol>>,
stopped: ChildStopped<BehaviorAddr<W>>,
},
ActivationRejected {
rejection: P::Rejection,
shutdown: Option<EstablishedShutdownResolved<W::Protocol>>,
stopped: ChildStopped<BehaviorAddr<W>>,
},
ActivationCompleted {
readiness: P::Ready,
stopped: ChildStopped<BehaviorAddr<W>>,
},
}Expand description
Complete retained values proving how one unavailable worker was returned.
Variants§
InitializationRejected
Pure initialization rejected after the worker was committed.
Fields
§
failure: WorkerInitializationFailure§
activation: P§
shutdown: Option<EstablishedShutdownResolved<W::Protocol>>§
stopped: ChildStopped<BehaviorAddr<W>>InitializationStopped
Initialization stopped after the worker was committed.
Fields
§
activation: P§
observed: Option<ChildStopped<BehaviorAddr<W>>>§
returned: ChildStopped<BehaviorAddr<W>>InitializationCompleted
Initialization completed, but an exact worker stop prevented activation.
ActivationStartRejected
The activation request was rejected before the plan ran.
Fields
§
request: BeginActivation<W, P>§
reason: ActivationStartRejection§
shutdown: Option<EstablishedShutdownResolved<W::Protocol>>§
stopped: ChildStopped<BehaviorAddr<W>>ActivationRejected
The activation plan rejected after its request was accepted.
Fields
§
shutdown: Option<EstablishedShutdownResolved<W::Protocol>>§
stopped: ChildStopped<BehaviorAddr<W>>ActivationCompleted
Activation completed, but an exact worker stop prevented availability.
Auto Trait Implementations§
impl<W, P> Freeze for ProxyDrain<W, P>
impl<W, P> RefUnwindSafe for ProxyDrain<W, P>where
<<W as Behavior>::Protocol as Protocol>::Addr: Sized + RefUnwindSafe,
P: RefUnwindSafe,
<P as ActivationPlan>::Rejection: RefUnwindSafe,
<P as ActivationPlan>::Ready: RefUnwindSafe,
<<<W as Behavior>::Protocol as Protocol>::Addr as EndpointAddress>::Established<<W as Behavior>::Protocol>: RefUnwindSafe,
impl<W, P> Send for ProxyDrain<W, P>
impl<W, P> Sync for ProxyDrain<W, P>
impl<W, P> Unpin for ProxyDrain<W, P>
impl<W, P> UnsafeUnpin for ProxyDrain<W, P>where
<<W as Behavior>::Protocol as Protocol>::Addr: Sized + UnsafeUnpin,
P: UnsafeUnpin,
<P as ActivationPlan>::Rejection: UnsafeUnpin,
<P as ActivationPlan>::Ready: UnsafeUnpin,
<<<W as Behavior>::Protocol as Protocol>::Addr as EndpointAddress>::Established<<W as Behavior>::Protocol>: UnsafeUnpin,
impl<W, P> UnwindSafe for ProxyDrain<W, P>where
<<W as Behavior>::Protocol as Protocol>::Addr: Sized + UnwindSafe,
P: UnwindSafe,
<P as ActivationPlan>::Rejection: UnwindSafe,
<P as ActivationPlan>::Ready: UnwindSafe,
<<<W as Behavior>::Protocol as Protocol>::Addr as EndpointAddress>::Established<<W as Behavior>::Protocol>: UnwindSafe,
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