Struct orca::models::latency_measurer::ActorLatencyMeasurer
source · pub struct ActorLatencyMeasurer {
state: State,
randomised_backoff_time: Duration,
additional_clients: Vec<KanidmClient>,
group_index: u64,
personal_group_name: String,
groups_creation_time: HashMap<u64, Instant>,
unreplicated_groups_by_client: Vec<IDLBitRange>,
}
Fields§
§state: State
§randomised_backoff_time: Duration
§additional_clients: Vec<KanidmClient>
§group_index: u64
§personal_group_name: String
§groups_creation_time: HashMap<u64, Instant>
§unreplicated_groups_by_client: Vec<IDLBitRange>
Implementations§
source§impl ActorLatencyMeasurer
impl ActorLatencyMeasurer
fn generate_new_group_name(&mut self)
fn commit_new_group_name(&mut self)
fn rollback_new_group_name(&mut self)
fn get_group_name(&self) -> String
async fn get_replicated_groups_by_client( &self, client_index: usize, ) -> Result<Vec<String>, EventRecord>
fn parse_replicated_groups_into_replication_event_records( &mut self, replicated_group_names: &[String], client_index: usize, groups_read_time: Instant, ) -> Vec<EventRecord>
fn create_replication_delay_event_record( &self, creation_time: Instant, read_time: Instant, ) -> EventRecord
fn next_transition(&mut self) -> Transition
fn next_state(&mut self, action: TransitionAction, result: TransitionResult)
Trait Implementations§
source§impl ActorModel for ActorLatencyMeasurer
impl ActorModel for ActorLatencyMeasurer
fn transition<'life0, 'life1, 'life2, 'async_trait>(
&'life0 mut self,
client: &'life1 KanidmClient,
person: &'life2 Person,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventRecord>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Auto Trait Implementations§
impl Freeze for ActorLatencyMeasurer
impl !RefUnwindSafe for ActorLatencyMeasurer
impl Send for ActorLatencyMeasurer
impl Sync for ActorLatencyMeasurer
impl Unpin for ActorLatencyMeasurer
impl !UnwindSafe for ActorLatencyMeasurer
Blanket Implementations§
§impl<'a, T> AsTaggedExplicit<'a> for Twhere
T: 'a,
impl<'a, T> AsTaggedExplicit<'a> for Twhere
T: 'a,
§impl<'a, T> AsTaggedImplicit<'a> for Twhere
T: 'a,
impl<'a, T> AsTaggedImplicit<'a> for Twhere
T: 'a,
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