Trait CloudSyncRotationStateAccess
Source pub trait CloudSyncRotationStateAccess: Send + Sync {
// Required methods
fn mark_candidate(
&self,
generation: u64,
mutation: ObjectHash,
) -> Result<(), RotationStateError>;
fn mark_committed_mutation(
&self,
generation: u64,
mutation: ObjectHash,
) -> Result<(), RotationStateError>;
fn remove_candidate(
&self,
generation: u64,
mutation: ObjectHash,
) -> Result<(), RotationStateError>;
fn replace_candidate_mutation(
&self,
generation: u64,
previous: ObjectHash,
replacement: ObjectHash,
) -> Result<(), RotationStateError>;
fn gate(&self) -> Option<RotationGate>;
fn install_durable_gate(&self, gate: Option<RotationGate>);
fn check(&self, live_generation: Option<u64>) -> Result<(), RotationPending>;
}