pub struct MemoryMediaStore { /* private fields */ }Expand description
In-memory, non-persistent implementation of the MediaStore.
Default if no other is configured at startup.
Implementations§
Source§impl MemoryMediaStore
impl MemoryMediaStore
Sourcepub fn new() -> MemoryMediaStore
pub fn new() -> MemoryMediaStore
Create a new empty MemoryMediaStore
Trait Implementations§
Source§impl Clone for MemoryMediaStore
impl Clone for MemoryMediaStore
Source§fn clone(&self) -> MemoryMediaStore
fn clone(&self) -> MemoryMediaStore
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MemoryMediaStore
impl Debug for MemoryMediaStore
Source§impl Default for MemoryMediaStore
impl Default for MemoryMediaStore
Source§fn default() -> MemoryMediaStore
fn default() -> MemoryMediaStore
Returns the “default value” for a type. Read more
Source§impl MediaStore for MemoryMediaStore
impl MediaStore for MemoryMediaStore
Source§type Error = MediaStoreError
type Error = MediaStoreError
The error type used by this media store.
Source§fn try_take_leased_lock<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
lease_duration_ms: u32,
key: &'life1 str,
holder: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Option<u64>, <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
MemoryMediaStore: 'async_trait,
fn try_take_leased_lock<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
lease_duration_ms: u32,
key: &'life1 str,
holder: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Option<u64>, <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
MemoryMediaStore: 'async_trait,
Try to take a lock using the given store.
Source§fn add_media_content<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
data: Vec<u8>,
ignore_policy: IgnoreMediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
fn add_media_content<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
data: Vec<u8>,
ignore_policy: IgnoreMediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
Add a media file’s content in the media store. Read more
Source§fn replace_media_key<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
from: &'life1 MediaRequestParameters,
to: &'life2 MediaRequestParameters,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
MemoryMediaStore: 'async_trait,
fn replace_media_key<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
from: &'life1 MediaRequestParameters,
to: &'life2 MediaRequestParameters,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
MemoryMediaStore: 'async_trait,
Replaces the given media’s content key with another one. Read more
Source§fn get_media_content<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
fn get_media_content<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
Get a media file’s content out of the media store. Read more
Source§fn remove_media_content<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
fn remove_media_content<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
Remove a media file’s content from the media store. Read more
Source§fn get_media_content_for_uri<'life0, 'life1, 'async_trait>(
&'life0 self,
uri: &'life1 MxcUri,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
fn get_media_content_for_uri<'life0, 'life1, 'async_trait>(
&'life0 self,
uri: &'life1 MxcUri,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
Get a media file’s content associated to an
MxcUri from the
media store. Read moreSource§fn remove_media_content_for_uri<'life0, 'life1, 'async_trait>(
&'life0 self,
uri: &'life1 MxcUri,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
fn remove_media_content_for_uri<'life0, 'life1, 'async_trait>(
&'life0 self,
uri: &'life1 MxcUri,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
Remove all the media files’ content associated to an
MxcUri from the
media store. Read moreSource§fn set_media_retention_policy<'life0, 'async_trait>(
&'life0 self,
policy: MediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
fn set_media_retention_policy<'life0, 'async_trait>(
&'life0 self,
policy: MediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
Set the
MediaRetentionPolicy to use for deciding whether to store or
keep media content. Read moreSource§fn media_retention_policy(&self) -> MediaRetentionPolicy
fn media_retention_policy(&self) -> MediaRetentionPolicy
Get the current
MediaRetentionPolicy.Source§fn set_ignore_media_retention_policy<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
ignore_policy: IgnoreMediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
fn set_ignore_media_retention_policy<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
ignore_policy: IgnoreMediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
Set whether the current
MediaRetentionPolicy should be ignored for
the media. Read moreSource§fn clean<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
fn clean<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
Clean up the media cache with the current
MediaRetentionPolicy. Read moreSource§fn get_size<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<usize>, <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
fn get_size<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<usize>, <MemoryMediaStore as MediaStore>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
Returns the size of the store in bytes, if known.
Source§impl MediaStoreInner for MemoryMediaStore
impl MediaStoreInner for MemoryMediaStore
Source§type Error = MediaStoreError
type Error = MediaStoreError
The error type used by this media cache store.
Source§fn media_retention_policy_inner<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<MediaRetentionPolicy>, <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
fn media_retention_policy_inner<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<MediaRetentionPolicy>, <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
The persisted media retention policy in the media cache.
Source§fn set_media_retention_policy_inner<'life0, 'async_trait>(
&'life0 self,
policy: MediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
fn set_media_retention_policy_inner<'life0, 'async_trait>(
&'life0 self,
policy: MediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
Persist the media retention policy in the media cache. Read more
Source§fn add_media_content_inner<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
data: Vec<u8>,
last_access: SystemTime,
policy: MediaRetentionPolicy,
ignore_policy: IgnoreMediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
fn add_media_content_inner<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
data: Vec<u8>,
last_access: SystemTime,
policy: MediaRetentionPolicy,
ignore_policy: IgnoreMediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
Add a media file’s content in the media cache. Read more
Source§fn set_ignore_media_retention_policy_inner<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
ignore_policy: IgnoreMediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
fn set_ignore_media_retention_policy_inner<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
ignore_policy: IgnoreMediaRetentionPolicy,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
Set whether the current
MediaRetentionPolicy should be ignored for
the media. Read moreSource§fn get_media_content_inner<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
current_time: SystemTime,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
fn get_media_content_inner<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 MediaRequestParameters,
current_time: SystemTime,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
Get a media file’s content out of the media cache. Read more
Source§fn get_media_content_for_uri_inner<'life0, 'life1, 'async_trait>(
&'life0 self,
expected_uri: &'life1 MxcUri,
current_time: SystemTime,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
fn get_media_content_for_uri_inner<'life0, 'life1, 'async_trait>(
&'life0 self,
expected_uri: &'life1 MxcUri,
current_time: SystemTime,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
MemoryMediaStore: 'async_trait,
Get a media file’s content associated to an
MxcUri from the
media store. Read moreSource§fn clean_inner<'life0, 'async_trait>(
&'life0 self,
policy: MediaRetentionPolicy,
current_time: SystemTime,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
fn clean_inner<'life0, 'async_trait>(
&'life0 self,
policy: MediaRetentionPolicy,
current_time: SystemTime,
) -> Pin<Box<dyn Future<Output = Result<(), <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
Clean up the media cache with the given policy. Read more
Source§fn last_media_cleanup_time_inner<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<SystemTime>, <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
fn last_media_cleanup_time_inner<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<SystemTime>, <MemoryMediaStore as MediaStoreInner>::Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
MemoryMediaStore: 'async_trait,
The time of the last media cache cleanup.
Auto Trait Implementations§
impl Freeze for MemoryMediaStore
impl !RefUnwindSafe for MemoryMediaStore
impl Send for MemoryMediaStore
impl Sync for MemoryMediaStore
impl Unpin for MemoryMediaStore
impl !UnwindSafe for MemoryMediaStore
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more