pub struct ActiveBinding {
pub participant_id: ParticipantId,
pub conversation_id: ConversationId,
pub binding_epoch: BindingEpoch,
}Expand description
Active binding authority.
Fields§
§participant_id: ParticipantIdBound participant; in v1 this value is also its permanent participant index.
conversation_id: ConversationIdBound conversation.
binding_epoch: BindingEpochImmutable current binding epoch.
Implementations§
Source§impl ActiveBinding
impl ActiveBinding
Sourcepub const fn clean_deregister(
self,
disposition: BindingTerminalDisposition,
) -> DetachedBindingTransition
pub const fn clean_deregister( self, disposition: BindingTerminalDisposition, ) -> DetachedBindingTransition
Ends authority for explicit detach or clean protocol Disconnect.
Sourcepub const fn commit_clean_deregister(
self,
position: CommittedBindingTerminalPosition,
) -> CommittedDetachedTerminal
pub const fn commit_clean_deregister( self, position: CommittedBindingTerminalPosition, ) -> CommittedDetachedTerminal
Commits an explicit detach terminal at its assigned durable position.
Sourcepub const fn pending_clean_deregister(
self,
position: PendingBindingTerminalPosition,
) -> PendingDetachedFinalization
pub const fn pending_clean_deregister( self, position: PendingBindingTerminalPosition, ) -> PendingDetachedFinalization
Ends explicit-detach authority while retaining its exact pending terminal.
Sourcepub const fn clean_disconnect(
self,
disposition: BindingTerminalDisposition,
) -> DetachedBindingTransition
pub const fn clean_disconnect( self, disposition: BindingTerminalDisposition, ) -> DetachedBindingTransition
Ends every binding still active when a clean protocol Disconnect arrives.
Sourcepub const fn superseded(
self,
position: CommittedBindingTerminalPosition,
) -> CommittedDetachedTerminal
pub const fn superseded( self, position: CommittedBindingTerminalPosition, ) -> CommittedDetachedTerminal
Commits the old terminal in an authorized superseding attach handoff.
Supersession is an optional new-major producer and cannot leave only the
old terminal pending; the enclosing attach transaction either appends
the ordered Detached(Superseded)/Attached pair or commits nothing.
Sourcepub const fn server_shutdown(
self,
disposition: BindingTerminalDisposition,
) -> DetachedBindingTransition
pub const fn server_shutdown( self, disposition: BindingTerminalDisposition, ) -> DetachedBindingTransition
Ends authority during an orderly server shutdown.
Sourcepub const fn connection_lost(
self,
disposition: BindingTerminalDisposition,
) -> DiedBindingTransition
pub const fn connection_lost( self, disposition: BindingTerminalDisposition, ) -> DiedBindingTransition
Ends authority after TCP/keepalive/read/write connection loss.
Sourcepub const fn process_killed(
self,
disposition: BindingTerminalDisposition,
) -> DiedBindingTransition
pub const fn process_killed( self, disposition: BindingTerminalDisposition, ) -> DiedBindingTransition
Ends authority after trapped linked-EXIT or known forced termination.
Sourcepub const fn protocol_error(
self,
disposition: BindingTerminalDisposition,
) -> DiedBindingTransition
pub const fn protocol_error( self, disposition: BindingTerminalDisposition, ) -> DiedBindingTransition
Ends authority after a terminating decode or protocol-state refusal.
Sourcepub const fn unclean_server_restart(
self,
disposition: BindingTerminalDisposition,
) -> DiedBindingTransition
pub const fn unclean_server_restart( self, disposition: BindingTerminalDisposition, ) -> DiedBindingTransition
Recovers a durably active epoch owned by a prior server incarnation.
The prior incarnation in the Died cause is derived from the exact old
binding epoch, so callers cannot pair the state with a different value.
Source§impl ActiveBinding
impl ActiveBinding
Sourcepub fn verify_detach_request<V>(
&self,
request: DetachRequest,
request_verifier: V,
) -> Result<VerifiedDetachRequest<V>, DetachVerificationError>
pub fn verify_detach_request<V>( &self, request: DetachRequest, request_verifier: V, ) -> Result<VerifiedDetachRequest<V>, DetachVerificationError>
Verifies a detach request against this exact binding epoch.
§Errors
Returns DetachVerificationError for the first mismatching authority
component. The caller supplies the canonical request verifier computed
by the consuming server’s cryptographic layer.
Trait Implementations§
Source§impl Clone for ActiveBinding
impl Clone for ActiveBinding
Source§fn clone(&self) -> ActiveBinding
fn clone(&self) -> ActiveBinding
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more