jsonrpsee_core::client

Trait SubscriptionClientT

Source
pub trait SubscriptionClientT: ClientT {
    // Required methods
    fn subscribe<'a, 'life0, 'async_trait, Notif, Params>(
        &'life0 self,
        subscribe_method: &'a str,
        params: Params,
        unsubscribe_method: &'a str,
    ) -> Pin<Box<dyn Future<Output = Result<Subscription<Notif>, Error>> + Send + 'async_trait>>
       where Params: ToRpcParams + Send + 'async_trait,
             Notif: DeserializeOwned + 'async_trait,
             Self: 'async_trait,
             'a: 'async_trait,
             'life0: 'async_trait;
    fn subscribe_to_method<'a, 'life0, 'async_trait, Notif>(
        &'life0 self,
        method: &'a str,
    ) -> Pin<Box<dyn Future<Output = Result<Subscription<Notif>, Error>> + Send + 'async_trait>>
       where Notif: DeserializeOwned + 'async_trait,
             Self: 'async_trait,
             'a: 'async_trait,
             'life0: 'async_trait;
}
Available on crate feature client only.
Expand description

JSON-RPC client interface that can make requests, notifications and subscriptions.

Required Methods§

Source

fn subscribe<'a, 'life0, 'async_trait, Notif, Params>( &'life0 self, subscribe_method: &'a str, params: Params, unsubscribe_method: &'a str, ) -> Pin<Box<dyn Future<Output = Result<Subscription<Notif>, Error>> + Send + 'async_trait>>
where Params: ToRpcParams + Send + 'async_trait, Notif: DeserializeOwned + 'async_trait, Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait,

Initiate a subscription by performing a JSON-RPC method call where the server responds with a Subscription ID that is used to fetch messages on that subscription,

The subscribe_method and params are used to ask for the subscription towards the server.

The params may be used as input for the subscription for the server to process.

The unsubscribe_method is used to close the subscription

The Notif param is a generic type to receive generic subscriptions, see Subscription for further documentation.

Source

fn subscribe_to_method<'a, 'life0, 'async_trait, Notif>( &'life0 self, method: &'a str, ) -> Pin<Box<dyn Future<Output = Result<Subscription<Notif>, Error>> + Send + 'async_trait>>
where Notif: DeserializeOwned + 'async_trait, Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait,

Register a method subscription, this is used to filter only server notifications that a user is interested in.

The Notif param is a generic type to receive generic subscriptions, see Subscription for further documentation.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl SubscriptionClientT for Client

Available on crate features async-client and async-wasm-client only.