cfx_rpc_cfx_api/pubsub.rs
1//! `cfx_` RPC API for pubsub subscription.
2
3use cfx_rpc_cfx_types::pubsub;
4use jsonrpsee::{core::SubscriptionResult, proc_macros::rpc};
5
6/// Cfx pub-sub rpc interface.
7#[rpc(server, namespace = "cfx")]
8pub trait PubSubApi {
9 /// Create a cfx subscription for the given params
10 #[subscription(
11 name = "subscribe" => "subscription",
12 unsubscribe = "unsubscribe",
13 item = pubsub::Result,
14 )]
15 async fn subscribe(
16 &self, kind: pubsub::Kind, params: Option<pubsub::Params>,
17 ) -> SubscriptionResult;
18}