pub trait ClusterManagementService:
Send
+ Sync
+ 'static {
// Required methods
fn update_cluster_conf<'life0, 'async_trait>(
&'life0 self,
request: Request<ClusterConfChangeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ClusterConfUpdateResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_cluster_metadata<'life0, 'async_trait>(
&'life0 self,
request: Request<MetadataRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ClusterMembership>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn join_cluster<'life0, 'async_trait>(
&'life0 self,
request: Request<JoinRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<JoinResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn discover_leader<'life0, 'async_trait>(
&'life0 self,
request: Request<LeaderDiscoveryRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LeaderDiscoveryResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}
Expand description
Generated trait containing gRPC methods that should be implemented for use with ClusterManagementServiceServer.
Required Methods§
fn update_cluster_conf<'life0, 'async_trait>(
&'life0 self,
request: Request<ClusterConfChangeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ClusterConfUpdateResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_cluster_metadata<'life0, 'async_trait>(
&'life0 self,
request: Request<MetadataRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ClusterMembership>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Sourcefn join_cluster<'life0, 'async_trait>(
&'life0 self,
request: Request<JoinRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<JoinResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn join_cluster<'life0, 'async_trait>(
&'life0 self,
request: Request<JoinRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<JoinResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Request to join the cluster as a new learner node
Sourcefn discover_leader<'life0, 'async_trait>(
&'life0 self,
request: Request<LeaderDiscoveryRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LeaderDiscoveryResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn discover_leader<'life0, 'async_trait>(
&'life0 self,
request: Request<LeaderDiscoveryRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<LeaderDiscoveryResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
New RPC for leader discovery