core_crypto

Trait MlsTransport

source
pub trait MlsTransport:
    Debug
    + Send
    + Sync {
    // Required methods
    fn send_commit_bundle<'life0, 'async_trait>(
        &'life0 self,
        commit_bundle: MlsCommitBundle,
    ) -> Pin<Box<dyn Future<Output = Result<MlsTransportResponse, Box<dyn Error>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn send_message<'life0, 'async_trait>(
        &'life0 self,
        mls_message: Vec<u8>,
    ) -> Pin<Box<dyn Future<Output = Result<MlsTransportResponse, Box<dyn Error>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Client callbacks to allow communication with the delivery service. There are two different endpoints, one for messages and one for commit bundles.

Required Methods§

source

fn send_commit_bundle<'life0, 'async_trait>( &'life0 self, commit_bundle: MlsCommitBundle, ) -> Pin<Box<dyn Future<Output = Result<MlsTransportResponse, Box<dyn Error>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Send a commit bundle to the corresponding endpoint.

source

fn send_message<'life0, 'async_trait>( &'life0 self, mls_message: Vec<u8>, ) -> Pin<Box<dyn Future<Output = Result<MlsTransportResponse, Box<dyn Error>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Send a message to the corresponding endpoint.

Implementors§