pub trait PrimaryReplicator: Replicator + Send {
    // Required methods
    fn on_data_loss(&self) -> impl Future<Output = Result<u8>> + Send;
    fn update_catch_up_replica_set_configuration(
        &self,
        currentconfiguration: &ReplicaSetConfig,
        previousconfiguration: &ReplicaSetConfig
    ) -> Result<()>;
    fn wait_for_catch_up_quorum(
        &self,
        catchupmode: ReplicaSetQuarumMode
    ) -> impl Future<Output = Result<()>> + Send;
    fn update_current_replica_set_configuration(
        &self,
        currentconfiguration: &ReplicaSetConfig
    ) -> Result<()>;
    fn build_replica(
        &self,
        replica: &ReplicaInfo
    ) -> impl Future<Output = Result<()>> + Send;
    fn remove_replica(&self, replicaid: i64) -> Result<()>;
}

Required Methods§

source

fn on_data_loss(&self) -> impl Future<Output = Result<u8>> + Send

source

fn update_catch_up_replica_set_configuration( &self, currentconfiguration: &ReplicaSetConfig, previousconfiguration: &ReplicaSetConfig ) -> Result<()>

source

fn wait_for_catch_up_quorum( &self, catchupmode: ReplicaSetQuarumMode ) -> impl Future<Output = Result<()>> + Send

source

fn update_current_replica_set_configuration( &self, currentconfiguration: &ReplicaSetConfig ) -> Result<()>

source

fn build_replica( &self, replica: &ReplicaInfo ) -> impl Future<Output = Result<()>> + Send

source

fn remove_replica(&self, replicaid: i64) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§