[−][src]Trait hold::provider::Provider
An abstract storage provider
Required methods
#[must_use]fn get_blob<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<Option<Blob>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<Option<Blob>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Fetches a blob from the storage provider given its key
#[must_use]fn store_blob<'life0, 'async_trait>(
&'life0 self,
blob: Blob
) -> Pin<Box<dyn Future<Output = Result<Blob>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
blob: Blob
) -> Pin<Box<dyn Future<Output = Result<Blob>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Stores the given blob and returns it back
#[must_use]fn is_blob_present<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Checks if the blob exists. Some implementation may still be loading the blob content in memory if the underlying implementation does not support headless lookups.
#[must_use]fn delete_blob<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Fetches a blob from the storage provider given its key