Trait nebula_fbthrift_raftex::client::RaftexService
source · pub trait RaftexService: Send {
fn askForVote(
&self,
arg_req: &AskForVoteRequest
) -> Pin<Box<dyn Future<Output = Result<AskForVoteResponse, NonthrowingFunctionError>> + Send + 'static, Global>>;
fn appendLog(
&self,
arg_req: &AppendLogRequest
) -> Pin<Box<dyn Future<Output = Result<AppendLogResponse, NonthrowingFunctionError>> + Send + 'static, Global>>;
fn sendSnapshot(
&self,
arg_req: &SendSnapshotRequest
) -> Pin<Box<dyn Future<Output = Result<SendSnapshotResponse, NonthrowingFunctionError>> + Send + 'static, Global>>;
}
Required Methods§
fn askForVote(
&self,
arg_req: &AskForVoteRequest
) -> Pin<Box<dyn Future<Output = Result<AskForVoteResponse, NonthrowingFunctionError>> + Send + 'static, Global>>
fn appendLog(
&self,
arg_req: &AppendLogRequest
) -> Pin<Box<dyn Future<Output = Result<AppendLogResponse, NonthrowingFunctionError>> + Send + 'static, Global>>
fn sendSnapshot(
&self,
arg_req: &SendSnapshotRequest
) -> Pin<Box<dyn Future<Output = Result<SendSnapshotResponse, NonthrowingFunctionError>> + Send + 'static, Global>>
Implementations§
source§impl dyn RaftexService + 'static
impl dyn RaftexService + 'static
To be called by user directly setting up a client. Avoids needing ClientFactory trait in scope, avoids unidiomatic make_Trait name.
use bgs::client::BuckGraphService;
let protocol = BinaryProtocol::new();
let transport = HttpClient::new();
let client = <dyn BuckGraphService>::new(protocol, transport);