Function sc_service::gen_rpc_module
source · pub fn gen_rpc_module<TBl, TBackend, TCl, TRpc, TExPool>(
spawn_handle: SpawnTaskHandle,
client: Arc<TCl>,
transaction_pool: Arc<TExPool>,
keystore: KeystorePtr,
system_rpc_tx: TracingUnboundedSender<Request<TBl>>,
impl_name: String,
impl_version: String,
chain_spec: &dyn ChainSpec,
state_pruning: &Option<PruningMode>,
blocks_pruning: BlocksPruning,
backend: Arc<TBackend>,
rpc_builder: &dyn Fn(SubscriptionTaskExecutor) -> Result<RpcModule<TRpc>, Error>,
) -> Result<RpcModule<()>, Error>where
TBl: BlockT,
TCl: ProvideRuntimeApi<TBl> + BlockchainEvents<TBl> + HeaderBackend<TBl> + HeaderMetadata<TBl, Error = Error> + ExecutorProvider<TBl> + CallApiAt<TBl> + ProofProvider<TBl> + StorageProvider<TBl, TBackend> + BlockBackend<TBl> + Send + Sync + 'static,
TBackend: Backend<TBl> + 'static,
<TCl as ProvideRuntimeApi<TBl>>::Api: SessionKeys<TBl> + Metadata<TBl>,
TExPool: MaintainedTransactionPool<Block = TBl, Hash = <TBl as BlockT>::Hash> + 'static,
TBl::Hash: Unpin,
TBl::Header: Unpin,
Expand description
Generate RPC module using provided configuration