Trait tendermint_rpc::Client[][src]

pub trait Client {
Show 26 methods fn perform<'life0, 'async_trait, R>(
        &'life0 self,
        request: R
    ) -> Pin<Box<dyn Future<Output = Result<R::Response, Error>> + Send + 'async_trait>>
    where
        R: SimpleRequest,
        R: 'async_trait,
        'life0: 'async_trait,
        Self: 'async_trait
; fn abci_info<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<AbciInfo, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn abci_query<'life0, 'async_trait, V>(
        &'life0 self,
        path: Option<Path>,
        data: V,
        height: Option<Height>,
        prove: bool
    ) -> Pin<Box<dyn Future<Output = Result<AbciQuery, Error>> + Send + 'async_trait>>
    where
        V: Into<Vec<u8>> + Send,
        V: 'async_trait,
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn block<'life0, 'async_trait, H>(
        &'life0 self,
        height: H
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        H: Into<Height> + Send,
        H: 'async_trait,
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn latest_block<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn block_results<'life0, 'async_trait, H>(
        &'life0 self,
        height: H
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        H: Into<Height> + Send,
        H: 'async_trait,
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn latest_block_results<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn block_search<'life0, 'async_trait>(
        &'life0 self,
        query: Query,
        page: u32,
        per_page: u8,
        order: Order
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn blockchain<'life0, 'async_trait, H>(
        &'life0 self,
        min: H,
        max: H
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        H: Into<Height> + Send,
        H: 'async_trait,
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn broadcast_tx_async<'life0, 'async_trait>(
        &'life0 self,
        tx: Transaction
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn broadcast_tx_sync<'life0, 'async_trait>(
        &'life0 self,
        tx: Transaction
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn broadcast_tx_commit<'life0, 'async_trait>(
        &'life0 self,
        tx: Transaction
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn commit<'life0, 'async_trait, H>(
        &'life0 self,
        height: H
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        H: Into<Height> + Send,
        H: 'async_trait,
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn consensus_params<'life0, 'async_trait, H>(
        &'life0 self,
        height: H
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        H: Into<Height> + Send,
        H: 'async_trait,
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn consensus_state<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn validators<'life0, 'async_trait, H>(
        &'life0 self,
        height: H,
        paging: Paging
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        H: Into<Height> + Send,
        H: 'async_trait,
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn latest_consensus_params<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn latest_commit<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn health<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn genesis<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<Genesis, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn net_info<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn status<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn broadcast_evidence<'life0, 'async_trait>(
        &'life0 self,
        e: Evidence
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn tx<'life0, 'async_trait>(
        &'life0 self,
        hash: Hash,
        prove: bool
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn tx_search<'life0, 'async_trait>(
        &'life0 self,
        query: Query,
        prove: bool,
        page: u32,
        per_page: u8,
        order: Order
    ) -> Pin<Box<dyn Future<Output = Result<Response, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
fn wait_until_healthy<'life0, 'async_trait, T>(
        &'life0 self,
        timeout: T
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
    where
        T: Into<Duration> + Send,
        T: 'async_trait,
        'life0: 'async_trait,
        Self: Sync + 'async_trait
, { ... }
}
Expand description

Provides lightweight access to the Tendermint RPC. It gives access to all endpoints with the exception of the event subscription-related ones.

To access event subscription capabilities, use a client that implements the SubscriptionClient trait.

Required methods

Perform a request against the RPC endpoint

Provided methods

/abci_info: get information about the ABCI application.

/abci_query: query the ABCI application

/block: get block at a given height.

/block: get the latest block.

/block_results: get ABCI results for a block at a particular height.

/block_results: get ABCI results for the latest block.

/block_search: search for blocks by BeginBlock and EndBlock events.

/blockchain: get block headers for min <= height <= max.

Block headers are returned in descending order (highest first).

Returns at most 20 items.

/broadcast_tx_async: broadcast a transaction, returning immediately.

/broadcast_tx_sync: broadcast a transaction, returning the response from CheckTx.

/broadcast_tx_commit: broadcast a transaction, returning the response from DeliverTx.

/commit: get block commit at a given height.

/consensus_params: get current consensus parameters at the specified height.

/consensus_state: get current consensus state

/validators: get validators a given height.

/consensus_params: get the latest consensus parameters.

/commit: get the latest block commit

/health: get node health.

Returns empty result (200 OK) on success, no response in case of an error.

/genesis: get genesis file.

/net_info: obtain information about P2P and other network connections.

/status: get Tendermint status including node info, pubkey, latest block hash, app hash, block height and time.

/broadcast_evidence: broadcast an evidence.

/tx: find transaction by hash.

/tx_search: search for transactions with their results.

Poll the /health endpoint until it returns a successful result or the given timeout has elapsed.

Implementors