linera_rpc::grpc::api::validator_worker_server

Trait ValidatorWorker

Source
pub trait ValidatorWorker:
    Send
    + Sync
    + 'static {
    // Required methods
    fn handle_block_proposal<'life0, 'async_trait>(
        &'life0 self,
        request: Request<BlockProposal>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<ChainInfoResult>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn handle_lite_certificate<'life0, 'async_trait>(
        &'life0 self,
        request: Request<LiteCertificate>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<ChainInfoResult>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn handle_certificate<'life0, 'async_trait>(
        &'life0 self,
        request: Request<HandleCertificateRequest>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<ChainInfoResult>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn handle_chain_info_query<'life0, 'async_trait>(
        &'life0 self,
        request: Request<ChainInfoQuery>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<ChainInfoResult>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn handle_cross_chain_request<'life0, 'async_trait>(
        &'life0 self,
        request: Request<CrossChainRequest>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<()>, 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 ValidatorWorkerServer.

Required Methods§

Source

fn handle_block_proposal<'life0, 'async_trait>( &'life0 self, request: Request<BlockProposal>, ) -> Pin<Box<dyn Future<Output = Result<Response<ChainInfoResult>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Propose a new block.

Source

fn handle_lite_certificate<'life0, 'async_trait>( &'life0 self, request: Request<LiteCertificate>, ) -> Pin<Box<dyn Future<Output = Result<Response<ChainInfoResult>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Process a certificate without value.

Source

fn handle_certificate<'life0, 'async_trait>( &'life0 self, request: Request<HandleCertificateRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<ChainInfoResult>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Process a certificate.

Source

fn handle_chain_info_query<'life0, 'async_trait>( &'life0 self, request: Request<ChainInfoQuery>, ) -> Pin<Box<dyn Future<Output = Result<Response<ChainInfoResult>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Handle information queries for this chain.

Source

fn handle_cross_chain_request<'life0, 'async_trait>( &'life0 self, request: Request<CrossChainRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Handle a (trusted!) cross-chain request.

Implementors§