pub struct IntegratorBinding { /* private fields */ }Expand description
One integrator’s standing claim to drive a ceremony or a system run.
Fenced rather than merely replaced: a host that was swapped out keeps its old fence, and every call it makes afterwards is refused by comparison instead of racing the host that took its place.
Implementations§
Source§impl IntegratorBinding
impl IntegratorBinding
Sourcepub const fn new(
id: IntegratorBindingId,
scope: IntegratorScope,
role_id: RoleId,
destination: HostDestination,
incarnation: HostAgentIncarnation,
bound_at: OffsetDateTime,
) -> Self
pub const fn new( id: IntegratorBindingId, scope: IntegratorScope, role_id: RoleId, destination: HostDestination, incarnation: HostAgentIncarnation, bound_at: OffsetDateTime, ) -> Self
A first binding for a scope, at the opening fence.
pub const fn id(&self) -> &IntegratorBindingId
pub const fn scope(&self) -> &IntegratorScope
pub fn scope_key(&self) -> IntegratorScopeKey
pub const fn role_id(&self) -> &RoleId
pub const fn destination(&self) -> &HostDestination
pub const fn incarnation(&self) -> &HostAgentIncarnation
pub const fn fence(&self) -> IntegratorFence
pub const fn bound_at(&self) -> OffsetDateTime
pub const fn revoked_at(&self) -> Option<OffsetDateTime>
Sourcepub const fn progress(&self) -> LoopProgressMark
pub const fn progress(&self) -> LoopProgressMark
What this binding’s loop saw the last time it asked.
Sourcepub fn observing(&self, progress: LoopProgressMark) -> Self
pub fn observing(&self, progress: LoopProgressMark) -> Self
The same binding, having asked once more.
pub const fn is_live(&self) -> bool
Sourcepub fn admits(
&self,
incarnation: &HostAgentIncarnation,
fence: IntegratorFence,
) -> bool
pub fn admits( &self, incarnation: &HostAgentIncarnation, fence: IntegratorFence, ) -> bool
Whether a caller’s claimed generation is the current one.
Sourcepub fn delivery_target(&self) -> HostDeliveryTarget
pub fn delivery_target(&self) -> HostDeliveryTarget
Where deliveries for this binding are addressed.
Sourcepub fn replacing(&self, replacement: &Self) -> Self
pub fn replacing(&self, replacement: &Self) -> Self
The binding that takes this one’s place, one fence higher.
Sourcepub fn revoked(&self, at: OffsetDateTime) -> Self
pub fn revoked(&self, at: OffsetDateTime) -> Self
The same binding, no longer in force.
Trait Implementations§
Source§impl Clone for IntegratorBinding
impl Clone for IntegratorBinding
Source§impl Debug for IntegratorBinding
impl Debug for IntegratorBinding
Source§impl<'de> Deserialize<'de> for IntegratorBinding
impl<'de> Deserialize<'de> for IntegratorBinding
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for IntegratorBinding
Source§impl PartialEq for IntegratorBinding
impl PartialEq for IntegratorBinding
Source§impl Serialize for IntegratorBinding
impl Serialize for IntegratorBinding
impl StructuralPartialEq for IntegratorBinding
Auto Trait Implementations§
impl Freeze for IntegratorBinding
impl RefUnwindSafe for IntegratorBinding
impl Send for IntegratorBinding
impl Sync for IntegratorBinding
impl Unpin for IntegratorBinding
impl UnsafeUnpin for IntegratorBinding
impl UnwindSafe for IntegratorBinding
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