pub enum LocalState {
Unknown,
Observation(Observation),
Leadership(Leadership),
}Expand description
Caller-owned state carried between successful outer transactions.
No variant is persisted or transferable to another process incarnation. Its
timing values belong to the caller’s monotonic clock. Replace it only with
PollResult::into_next_state after the enclosing
Database::run succeeds.
Variants§
Unknown
No durable state has been adopted by this caller.
Observation(Observation)
An exact durable owner record this caller is not authorized to renew.
The preserved observation time can permit a conditional takeover only if a later poll sees the same owner, revision, and lease duration.
Leadership(Leadership)
The exact durable owner record this caller may attempt to renew locally.
It does not prove current durable ownership. A later poll must still match the record and find this caller’s local lease interval unexpired.
Implementations§
Source§impl LocalState
impl LocalState
Sourcepub fn unknown() -> Self
pub fn unknown() -> Self
Returns the initial state for a caller that has not adopted a poll result.
Sourcepub fn observation(&self) -> Option<&Observation>
pub fn observation(&self) -> Option<&Observation>
Returns the adopted observation, if this caller is following an owner.
None means either no state has been adopted or this caller holds a
local leadership token. It does not query durable state.
Sourcepub fn leadership(&self) -> Option<&Leadership>
pub fn leadership(&self) -> Option<&Leadership>
Returns the adopted local leadership token, if any.
The returned token is input to a later super::LeaderElection::poll
or super::LeaderElection::resign call, not proof that the caller
remains the durable owner.
Trait Implementations§
Source§impl Clone for LocalState
impl Clone for LocalState
Source§fn clone(&self) -> LocalState
fn clone(&self) -> LocalState
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more