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.