pub trait Sequencer: Send + Sync {
// Required methods
fn next(&self) -> i64;
fn publish(&self, sequence: i64);
fn get_cursor(&self) -> i64;
fn add_gating_sequences(&self, sequences: Vec<Arc<Sequence>>);
fn get_highest_published_sequence(
&self,
next_sequence: i64,
available_sequence: i64,
) -> i64;
}Expand description
Sequencer trait for claiming and publishing slots.
Required Methods§
Sourcefn get_cursor(&self) -> i64
fn get_cursor(&self) -> i64
Gets the current cursor value (highest published sequence).
Sourcefn add_gating_sequences(&self, sequences: Vec<Arc<Sequence>>)
fn add_gating_sequences(&self, sequences: Vec<Arc<Sequence>>)
Adds gating sequences.
Sourcefn get_highest_published_sequence(
&self,
next_sequence: i64,
available_sequence: i64,
) -> i64
fn get_highest_published_sequence( &self, next_sequence: i64, available_sequence: i64, ) -> i64
Gets the highest published sequence that is safe to read.