Skip to main content

MeshRelayClient

Trait MeshRelayClient 

Source
pub trait MeshRelayClient: MeshEventStore {
    // Required methods
    fn next_client_id(&self) -> u64;
    fn register_client<'life0, 'async_trait>(
        &'life0 self,
        client_id: u64,
        sender: UnboundedSender<String>,
        pubkey: Option<String>,
    ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn unregister_client<'life0, 'async_trait>(
        &'life0 self,
        client_id: u64,
    ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn handle_client_message<'life0, 'async_trait>(
        &'life0 self,
        client_id: u64,
        msg: ClientMessage,
    ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn register_subscription_query<'life0, 'async_trait>(
        &'life0 self,
        client_id: u64,
        subscription_id: SubscriptionId,
        filters: Vec<Filter>,
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Event>, &'static str>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;

    // Provided method
    fn ingest_trusted_event_from_peer<'life0, 'async_trait>(
        &'life0 self,
        event: Event,
        _peer_id: Option<String>,
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
}

Required Methods§

Source

fn next_client_id(&self) -> u64

Source

fn register_client<'life0, 'async_trait>( &'life0 self, client_id: u64, sender: UnboundedSender<String>, pubkey: Option<String>, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn unregister_client<'life0, 'async_trait>( &'life0 self, client_id: u64, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn handle_client_message<'life0, 'async_trait>( &'life0 self, client_id: u64, msg: ClientMessage, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn register_subscription_query<'life0, 'async_trait>( &'life0 self, client_id: u64, subscription_id: SubscriptionId, filters: Vec<Filter>, ) -> Pin<Box<dyn Future<Output = Result<Vec<Event>, &'static str>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Provided Methods§

Source

fn ingest_trusted_event_from_peer<'life0, 'async_trait>( &'life0 self, event: Event, _peer_id: Option<String>, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait,

Implementors§