Trait libsignal_protocol::PreKeyStore

source ·
pub trait PreKeyStore {
    // Required methods
    fn get_pre_key<'life0, 'async_trait>(
        &'life0 self,
        prekey_id: PreKeyId,
    ) -> Pin<Box<dyn Future<Output = Result<PreKeyRecord>> + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn save_pre_key<'life0, 'life1, 'async_trait>(
        &'life0 mut self,
        prekey_id: PreKeyId,
        record: &'life1 PreKeyRecord,
    ) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn remove_pre_key<'life0, 'async_trait>(
        &'life0 mut self,
        prekey_id: PreKeyId,
    ) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Interface for storing pre-keys downloaded from a server.

Required Methods§

source

fn get_pre_key<'life0, 'async_trait>( &'life0 self, prekey_id: PreKeyId, ) -> Pin<Box<dyn Future<Output = Result<PreKeyRecord>> + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Look up the pre-key corresponding to prekey_id.

source

fn save_pre_key<'life0, 'life1, 'async_trait>( &'life0 mut self, prekey_id: PreKeyId, record: &'life1 PreKeyRecord, ) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Set the entry for prekey_id to the value of record.

source

fn remove_pre_key<'life0, 'async_trait>( &'life0 mut self, prekey_id: PreKeyId, ) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Remove the entry for prekey_id.

Implementors§