pub trait ChildStateApiServer<Hash>: Sized + Send + Sync + 'static {
    // Required methods
    fn storage_keys(
        &self,
        child_storage_key: PrefixedStorageKey,
        prefix: StorageKey,
        hash: Option<Hash>
    ) -> Result<Vec<StorageKey>, Error>;
    fn storage_keys_paged(
        &self,
        child_storage_key: PrefixedStorageKey,
        prefix: Option<StorageKey>,
        count: u32,
        start_key: Option<StorageKey>,
        hash: Option<Hash>
    ) -> Result<Vec<StorageKey>, Error>;
    fn storage(
        &self,
        child_storage_key: PrefixedStorageKey,
        key: StorageKey,
        hash: Option<Hash>
    ) -> Result<Option<StorageData>, Error>;
    fn storage_entries(
        &self,
        child_storage_key: PrefixedStorageKey,
        keys: Vec<StorageKey>,
        hash: Option<Hash>
    ) -> Result<Vec<Option<StorageData>>, Error>;
    fn storage_hash(
        &self,
        child_storage_key: PrefixedStorageKey,
        key: StorageKey,
        hash: Option<Hash>
    ) -> Result<Option<Hash>, Error>;
    fn storage_size(
        &self,
        child_storage_key: PrefixedStorageKey,
        key: StorageKey,
        hash: Option<Hash>
    ) -> Result<Option<u64>, Error>;
    fn read_child_proof(
        &self,
        child_storage_key: PrefixedStorageKey,
        keys: Vec<StorageKey>,
        hash: Option<Hash>
    ) -> Result<ReadProof<Hash>, Error>;

    // Provided method
    fn into_rpc(self) -> RpcModule<Self>
       where Hash: Send + Sync + 'static + DeserializeOwned + Clone + Serialize { ... }
}
Expand description

Server trait implementation for the ChildStateApi RPC API.

Required Methods§

fn storage_keys( &self, child_storage_key: PrefixedStorageKey, prefix: StorageKey, hash: Option<Hash> ) -> Result<Vec<StorageKey>, Error>

Returns the keys with prefix from a child storage, leave empty to get all the keys

fn storage_keys_paged( &self, child_storage_key: PrefixedStorageKey, prefix: Option<StorageKey>, count: u32, start_key: Option<StorageKey>, hash: Option<Hash> ) -> Result<Vec<StorageKey>, Error>

Returns the keys with prefix from a child storage with pagination support. Up to count keys will be returned. If start_key is passed, return next keys in storage in lexicographic order.

fn storage( &self, child_storage_key: PrefixedStorageKey, key: StorageKey, hash: Option<Hash> ) -> Result<Option<StorageData>, Error>

Returns a child storage entry at a specific block’s state.

fn storage_entries( &self, child_storage_key: PrefixedStorageKey, keys: Vec<StorageKey>, hash: Option<Hash> ) -> Result<Vec<Option<StorageData>>, Error>

Returns child storage entries for multiple keys at a specific block’s state.

fn storage_hash( &self, child_storage_key: PrefixedStorageKey, key: StorageKey, hash: Option<Hash> ) -> Result<Option<Hash>, Error>

Returns the hash of a child storage entry at a block’s state.

fn storage_size( &self, child_storage_key: PrefixedStorageKey, key: StorageKey, hash: Option<Hash> ) -> Result<Option<u64>, Error>

Returns the size of a child storage entry at a block’s state.

fn read_child_proof( &self, child_storage_key: PrefixedStorageKey, keys: Vec<StorageKey>, hash: Option<Hash> ) -> Result<ReadProof<Hash>, Error>

Returns proof of storage for child key entries at a specific block’s state.

Provided Methods§

fn into_rpc(self) -> RpcModule<Self>
where Hash: Send + Sync + 'static + DeserializeOwned + Clone + Serialize,

Collects all the methods and subscriptions defined in the trait and adds them into a single RpcModule.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<Block, Client> ChildStateApiServer<<Block as Block>::Hash> for ChildState<Block, Client>
where Block: BlockT + 'static, Client: Send + Sync + 'static,