pub trait SystemApiServer<Hash, Number>: Sized + Send + Sync + 'static {
Show 18 methods // Required methods fn system_name(&self) -> RpcResult<String>; fn system_version(&self) -> RpcResult<String>; fn system_chain(&self) -> RpcResult<String>; fn system_type(&self) -> RpcResult<ChainType>; fn system_properties(&self) -> RpcResult<Properties>; fn system_health<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<Health>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn system_local_peer_id<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<String>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn system_local_listen_addresses<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<Vec<String>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn system_peers<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<Vec<PeerInfo<Hash, Number>>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn system_network_state<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<JsonValue>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn system_add_reserved_peer<'life0, 'async_trait>( &'life0 self, peer: String ) -> Pin<Box<dyn Future<Output = RpcResult<()>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn system_remove_reserved_peer<'life0, 'async_trait>( &'life0 self, peer_id: String ) -> Pin<Box<dyn Future<Output = RpcResult<()>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn system_reserved_peers<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<Vec<String>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn system_node_roles<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<Vec<NodeRole>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn system_sync_state<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<SyncState<Number>>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn system_add_log_filter(&self, directives: String) -> RpcResult<()>; fn system_reset_log_filter(&self) -> RpcResult<()>; // Provided method fn into_rpc(self) -> RpcModule<Self> where Hash: Send + Sync + 'static + Serialize, Number: Send + Sync + 'static + Serialize { ... }
}
Expand description

Server trait implementation for the SystemApi RPC API.

Required Methods§

source

fn system_name(&self) -> RpcResult<String>

Get the node’s implementation name. Plain old string.

source

fn system_version(&self) -> RpcResult<String>

Get the node implementation’s version. Should be a semver string.

source

fn system_chain(&self) -> RpcResult<String>

Get the chain’s name. Given as a string identifier.

source

fn system_type(&self) -> RpcResult<ChainType>

Get the chain’s type.

source

fn system_properties(&self) -> RpcResult<Properties>

Get a custom set of properties as a JSON object, defined in the chain spec.

source

fn system_health<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<Health>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Return health status of the node.

Node is considered healthy if it is:

  • connected to some peers (unless running in dev mode)
  • not performing a major sync
source

fn system_local_peer_id<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<String>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Returns the base58-encoded PeerId of the node.

source

fn system_local_listen_addresses<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<Vec<String>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Returns the multi-addresses that the local node is listening on

The addresses include a trailing /p2p/ with the local PeerId, and are thus suitable to be passed to addReservedPeer or as a bootnode address for example.

source

fn system_peers<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<Vec<PeerInfo<Hash, Number>>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Returns currently connected peers

source

fn system_network_state<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<JsonValue>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Returns current state of the network.

Warning: This API is not stable. Please do not programmatically interpret its output, as its format might change at any time.

source

fn system_add_reserved_peer<'life0, 'async_trait>( &'life0 self, peer: String ) -> Pin<Box<dyn Future<Output = RpcResult<()>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Adds a reserved peer. Returns the empty string or an error. The string parameter should encode a p2p multiaddr.

/ip4/198.51.100.19/tcp/30333/p2p/QmSk5HQbn6LhUwDiNMseVUjuRYhEtYj4aUZ6WfWoGURpdV is an example of a valid, passing multiaddr with PeerId attached.

source

fn system_remove_reserved_peer<'life0, 'async_trait>( &'life0 self, peer_id: String ) -> Pin<Box<dyn Future<Output = RpcResult<()>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Remove a reserved peer. Returns the empty string or an error. The string should encode only the PeerId e.g. QmSk5HQbn6LhUwDiNMseVUjuRYhEtYj4aUZ6WfWoGURpdV.

source

fn system_reserved_peers<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<Vec<String>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Returns the list of reserved peers

source

fn system_node_roles<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<Vec<NodeRole>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Returns the roles the node is running as.

source

fn system_sync_state<'life0, 'async_trait>( &'life0 self ) -> Pin<Box<dyn Future<Output = RpcResult<SyncState<Number>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,

Returns the state of the syncing of the node: starting block, current best block, highest known block.

source

fn system_add_log_filter(&self, directives: String) -> RpcResult<()>

Adds the supplied directives to the current log filter

The syntax is identical to the CLI <target>=<level>:

sync=debug,state=trace

source

fn system_reset_log_filter(&self) -> RpcResult<()>

Resets the log filter to Substrate defaults

Provided Methods§

source

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

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

Implementors§