Trait sc_rpc_api::chain::ChainApi
source · [−]pub trait ChainApi<Number, Hash, Header, SignedBlock>: Sized + Send + Sync + 'static {
type Metadata: PubSubMetadata;
fn header(&self, hash: Option<Hash>) -> FutureResult<Option<Header>>;
fn block(&self, hash: Option<Hash>) -> FutureResult<Option<SignedBlock>>;
fn block_hash(
&self,
hash: Option<ListOrValue<NumberOrHex>>
) -> Result<ListOrValue<Option<Hash>>>;
fn finalized_head(&self) -> Result<Hash>;
fn subscribe_all_heads(
&self,
metadata: Self::Metadata,
subscriber: Subscriber<Header>
);
fn unsubscribe_all_heads(
&self,
metadata: Option<Self::Metadata>,
id: SubscriptionId
) -> RpcResult<bool>;
fn subscribe_new_heads(
&self,
metadata: Self::Metadata,
subscriber: Subscriber<Header>
);
fn unsubscribe_new_heads(
&self,
metadata: Option<Self::Metadata>,
id: SubscriptionId
) -> RpcResult<bool>;
fn subscribe_finalized_heads(
&self,
metadata: Self::Metadata,
subscriber: Subscriber<Header>
);
fn unsubscribe_finalized_heads(
&self,
metadata: Option<Self::Metadata>,
id: SubscriptionId
) -> RpcResult<bool>;
fn to_delegate(self) -> IoDelegate<Self, Self::Metadata>
where
Number: Send + Sync + 'static,
Hash: Send + Sync + 'static + Serialize + DeserializeOwned,
Header: Send + Sync + 'static + Serialize,
SignedBlock: Send + Sync + 'static + Serialize,
{ ... }
}
Expand description
Substrate blockchain API
Associated Types
type Metadata: PubSubMetadata
type Metadata: PubSubMetadata
RPC metadata
Required methods
fn header(&self, hash: Option<Hash>) -> FutureResult<Option<Header>>
fn header(&self, hash: Option<Hash>) -> FutureResult<Option<Header>>
Get header of a relay chain block.
fn block(&self, hash: Option<Hash>) -> FutureResult<Option<SignedBlock>>
fn block(&self, hash: Option<Hash>) -> FutureResult<Option<SignedBlock>>
Get header and body of a relay chain block.
fn block_hash(
&self,
hash: Option<ListOrValue<NumberOrHex>>
) -> Result<ListOrValue<Option<Hash>>>
fn block_hash(
&self,
hash: Option<ListOrValue<NumberOrHex>>
) -> Result<ListOrValue<Option<Hash>>>
Get hash of the n-th block in the canon chain.
By default returns latest block hash.
fn finalized_head(&self) -> Result<Hash>
fn finalized_head(&self) -> Result<Hash>
Get hash of the last finalized block in the canon chain.
fn subscribe_all_heads(
&self,
metadata: Self::Metadata,
subscriber: Subscriber<Header>
)
fn subscribe_all_heads(
&self,
metadata: Self::Metadata,
subscriber: Subscriber<Header>
)
All head subscription
fn unsubscribe_all_heads(
&self,
metadata: Option<Self::Metadata>,
id: SubscriptionId
) -> RpcResult<bool>
fn unsubscribe_all_heads(
&self,
metadata: Option<Self::Metadata>,
id: SubscriptionId
) -> RpcResult<bool>
Unsubscribe from all head subscription.
fn subscribe_new_heads(
&self,
metadata: Self::Metadata,
subscriber: Subscriber<Header>
)
fn subscribe_new_heads(
&self,
metadata: Self::Metadata,
subscriber: Subscriber<Header>
)
New head subscription
fn unsubscribe_new_heads(
&self,
metadata: Option<Self::Metadata>,
id: SubscriptionId
) -> RpcResult<bool>
fn unsubscribe_new_heads(
&self,
metadata: Option<Self::Metadata>,
id: SubscriptionId
) -> RpcResult<bool>
Unsubscribe from new head subscription.
fn subscribe_finalized_heads(
&self,
metadata: Self::Metadata,
subscriber: Subscriber<Header>
)
fn subscribe_finalized_heads(
&self,
metadata: Self::Metadata,
subscriber: Subscriber<Header>
)
Finalized head subscription
fn unsubscribe_finalized_heads(
&self,
metadata: Option<Self::Metadata>,
id: SubscriptionId
) -> RpcResult<bool>
fn unsubscribe_finalized_heads(
&self,
metadata: Option<Self::Metadata>,
id: SubscriptionId
) -> RpcResult<bool>
Unsubscribe from finalized head subscription.
Provided methods
Create an IoDelegate
, wiring rpc calls to the trait methods.