Struct matrix_sdk_crypto::store::MemoryStore
source · [−]pub struct MemoryStore { /* private fields */ }
Expand description
An in-memory only store that will forget all the E2EE key once it’s dropped.
Implementations
sourceimpl MemoryStore
impl MemoryStore
Trait Implementations
sourceimpl Clone for MemoryStore
impl Clone for MemoryStore
sourcefn clone(&self) -> MemoryStore
fn clone(&self) -> MemoryStore
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl CryptoStore for MemoryStore
impl CryptoStore for MemoryStore
sourcefn load_account<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<Option<ReadOnlyAccount>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn load_account<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<Option<ReadOnlyAccount>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Load an account that was previously stored.
sourcefn save_account<'life0, 'async_trait>(
&'life0 self,
__arg1: ReadOnlyAccount
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn save_account<'life0, 'async_trait>(
&'life0 self,
__arg1: ReadOnlyAccount
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Save the given account in the store. Read more
sourcefn load_identity<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<Option<PrivateCrossSigningIdentity>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn load_identity<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<Option<PrivateCrossSigningIdentity>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Try to load a private cross signing identity, if one is stored.
sourcefn save_changes<'life0, 'async_trait>(
&'life0 self,
changes: Changes
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn save_changes<'life0, 'async_trait>(
&'life0 self,
changes: Changes
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Save the set of changes to the store. Read more
sourcefn get_sessions<'life0, 'life1, 'async_trait>(
&'life0 self,
sender_key: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<Option<Arc<Mutex<Vec<Session>>>>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_sessions<'life0, 'life1, 'async_trait>(
&'life0 self,
sender_key: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<Option<Arc<Mutex<Vec<Session>>>>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Get all the sessions that belong to the given sender key. Read more
sourcefn get_inbound_group_session<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
room_id: &'life1 RoomId,
sender_key: &'life2 str,
session_id: &'life3 str
) -> Pin<Box<dyn Future<Output = Result<Option<InboundGroupSession>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
fn get_inbound_group_session<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
room_id: &'life1 RoomId,
sender_key: &'life2 str,
session_id: &'life3 str
) -> Pin<Box<dyn Future<Output = Result<Option<InboundGroupSession>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
Get the inbound group session from our store. Read more
sourcefn get_inbound_group_sessions<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundGroupSession>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_inbound_group_sessions<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundGroupSession>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Get all the inbound group sessions we have stored.
sourcefn inbound_group_session_counts<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<RoomKeyCounts>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn inbound_group_session_counts<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<RoomKeyCounts>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Get the number inbound group sessions we have and how many of them are backed up. Read more
sourcefn inbound_group_sessions_for_backup<'life0, 'async_trait>(
&'life0 self,
limit: usize
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundGroupSession>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn inbound_group_sessions_for_backup<'life0, 'async_trait>(
&'life0 self,
limit: usize
) -> Pin<Box<dyn Future<Output = Result<Vec<InboundGroupSession>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Get all the inbound group sessions we have not backed up yet.
sourcefn reset_backup_state<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn reset_backup_state<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Reset the backup state of all the stored inbound group sessions.
sourcefn get_outbound_group_sessions<'life0, 'life1, 'async_trait>(
&'life0 self,
__arg1: &'life1 RoomId
) -> Pin<Box<dyn Future<Output = Result<Option<OutboundGroupSession>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_outbound_group_sessions<'life0, 'life1, 'async_trait>(
&'life0 self,
__arg1: &'life1 RoomId
) -> Pin<Box<dyn Future<Output = Result<Option<OutboundGroupSession>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Get the outbound group sessions we have stored that is used for the given room. Read more
sourcefn is_user_tracked(&self, user_id: &UserId) -> bool
fn is_user_tracked(&self, user_id: &UserId) -> bool
Is the given user already tracked.
sourcefn has_users_for_key_query(&self) -> bool
fn has_users_for_key_query(&self) -> bool
Are there any tracked users that are marked as dirty.
sourcefn users_for_key_query(&self) -> HashSet<OwnedUserId>
fn users_for_key_query(&self) -> HashSet<OwnedUserId>
Set of users that we need to query keys for. This is a subset of the tracked users. Read more
sourcefn tracked_users(&self) -> HashSet<OwnedUserId>
fn tracked_users(&self) -> HashSet<OwnedUserId>
Get all tracked users we know about.
sourcefn update_tracked_user<'life0, 'life1, 'async_trait>(
&'life0 self,
user: &'life1 UserId,
dirty: bool
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn update_tracked_user<'life0, 'life1, 'async_trait>(
&'life0 self,
user: &'life1 UserId,
dirty: bool
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Add an user for tracking. Read more
sourcefn get_device<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId,
device_id: &'life2 DeviceId
) -> Pin<Box<dyn Future<Output = Result<Option<ReadOnlyDevice>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn get_device<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId,
device_id: &'life2 DeviceId
) -> Pin<Box<dyn Future<Output = Result<Option<ReadOnlyDevice>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Get the device for the given user with the given device ID. Read more
sourcefn get_user_devices<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId
) -> Pin<Box<dyn Future<Output = Result<HashMap<OwnedDeviceId, ReadOnlyDevice>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_user_devices<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId
) -> Pin<Box<dyn Future<Output = Result<HashMap<OwnedDeviceId, ReadOnlyDevice>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Get all the devices of the given user. Read more
sourcefn get_user_identity<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId
) -> Pin<Box<dyn Future<Output = Result<Option<ReadOnlyUserIdentities>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_user_identity<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: &'life1 UserId
) -> Pin<Box<dyn Future<Output = Result<Option<ReadOnlyUserIdentities>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Get the user identity that is attached to the given user id. Read more
sourcefn is_message_known<'life0, 'life1, 'async_trait>(
&'life0 self,
message_hash: &'life1 OlmMessageHash
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn is_message_known<'life0, 'life1, 'async_trait>(
&'life0 self,
message_hash: &'life1 OlmMessageHash
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Check if a hash for an Olm message stored in the database.
sourcefn get_outgoing_secret_requests<'life0, 'life1, 'async_trait>(
&'life0 self,
request_id: &'life1 TransactionId
) -> Pin<Box<dyn Future<Output = Result<Option<GossipRequest>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_outgoing_secret_requests<'life0, 'life1, 'async_trait>(
&'life0 self,
request_id: &'life1 TransactionId
) -> Pin<Box<dyn Future<Output = Result<Option<GossipRequest>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Get an outgoing secret request that we created that matches the given request id. Read more
sourcefn get_secret_request_by_info<'life0, 'life1, 'async_trait>(
&'life0 self,
key_info: &'life1 SecretInfo
) -> Pin<Box<dyn Future<Output = Result<Option<GossipRequest>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_secret_request_by_info<'life0, 'life1, 'async_trait>(
&'life0 self,
key_info: &'life1 SecretInfo
) -> Pin<Box<dyn Future<Output = Result<Option<GossipRequest>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Get an outgoing key request that we created that matches the given requested key info. Read more
sourcefn get_unsent_secret_requests<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<Vec<GossipRequest>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_unsent_secret_requests<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<Vec<GossipRequest>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Get all outgoing secret requests that we have in the store.
sourcefn delete_outgoing_secret_requests<'life0, 'life1, 'async_trait>(
&'life0 self,
request_id: &'life1 TransactionId
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn delete_outgoing_secret_requests<'life0, 'life1, 'async_trait>(
&'life0 self,
request_id: &'life1 TransactionId
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Delete an outgoing key request that we created that matches the given request id. Read more
sourcefn load_backup_keys<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<BackupKeys>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn load_backup_keys<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<BackupKeys>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Get the backup keys we have stored.
sourceimpl Debug for MemoryStore
impl Debug for MemoryStore
Auto Trait Implementations
impl !RefUnwindSafe for MemoryStore
impl Send for MemoryStore
impl Sync for MemoryStore
impl Unpin for MemoryStore
impl !UnwindSafe for MemoryStore
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> IntoCryptoStore for T where
T: 'static + CryptoStore,
impl<T> IntoCryptoStore for T where
T: 'static + CryptoStore,
fn into_crypto_store(self) -> Arc<dyn CryptoStore + 'static>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more