pub trait ChainApiServer<Number, Hash, Header, SignedBlock>:
Sized
+ Send
+ Sync
+ 'static {
// Required methods
fn header(&self, hash: Option<Hash>) -> Result<Option<Header>, Error>;
fn block(&self, hash: Option<Hash>) -> Result<Option<SignedBlock>, Error>;
fn block_hash(
&self,
hash: Option<ListOrValue<NumberOrHex>>,
) -> Result<ListOrValue<Option<Hash>>, Error>;
fn finalized_head(&self) -> Result<Hash, Error>;
fn subscribe_all_heads(&self, subscription_sink: PendingSubscriptionSink);
fn subscribe_new_heads(&self, subscription_sink: PendingSubscriptionSink);
fn subscribe_finalized_heads(
&self,
subscription_sink: PendingSubscriptionSink,
);
// Provided method
fn into_rpc(self) -> RpcModule<Self>
where Number: Send + Sync + 'static,
Hash: Send + Sync + 'static + DeserializeOwned + Clone + Serialize,
Header: Send + Sync + 'static + Clone + Serialize,
SignedBlock: Send + Sync + 'static + Clone + Serialize { ... }
}
Expand description
Server trait implementation for the ChainApi
RPC API.
Required Methods§
sourcefn block(&self, hash: Option<Hash>) -> Result<Option<SignedBlock>, Error>
fn block(&self, hash: Option<Hash>) -> Result<Option<SignedBlock>, Error>
Get header and body of a block.
sourcefn block_hash(
&self,
hash: Option<ListOrValue<NumberOrHex>>,
) -> Result<ListOrValue<Option<Hash>>, Error>
fn block_hash( &self, hash: Option<ListOrValue<NumberOrHex>>, ) -> Result<ListOrValue<Option<Hash>>, Error>
Get hash of the n-th block in the canon chain.
By default returns latest block hash.
sourcefn finalized_head(&self) -> Result<Hash, Error>
fn finalized_head(&self) -> Result<Hash, Error>
Get hash of the last finalized block in the canon chain.
sourcefn subscribe_all_heads(&self, subscription_sink: PendingSubscriptionSink)
fn subscribe_all_heads(&self, subscription_sink: PendingSubscriptionSink)
All head subscription.
sourcefn subscribe_new_heads(&self, subscription_sink: PendingSubscriptionSink)
fn subscribe_new_heads(&self, subscription_sink: PendingSubscriptionSink)
New head subscription.
sourcefn subscribe_finalized_heads(&self, subscription_sink: PendingSubscriptionSink)
fn subscribe_finalized_heads(&self, subscription_sink: PendingSubscriptionSink)
Finalized head subscription.
Provided Methods§
Object Safety§
This trait is not object safe.