pub trait BlobFilesystem: CacheClearableFilesystem {
// Required methods
fn write_blob<'life0, 'life1, 'async_trait>(
&'life0 self,
blob: &'life1 DeliveryBlob,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn get_vmo<'life0, 'life1, 'async_trait>(
&'life0 self,
blob: &'life1 DeliveryBlob,
) -> Pin<Box<dyn Future<Output = Vmo> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn exposed_dir(&self) -> &DirectoryProxy;
}
Expand description
A trait for filesystems that support reading and writing blobs.
Required Methods§
Sourcefn write_blob<'life0, 'life1, 'async_trait>(
&'life0 self,
blob: &'life1 DeliveryBlob,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn write_blob<'life0, 'life1, 'async_trait>(
&'life0 self,
blob: &'life1 DeliveryBlob,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Writes a blob to the filesystem.
Blobfs and Fxblob write blobs using different protocols. How a blob is written is implemented in the filesystem so benchmarks don’t have to know which protocol to use.
Sourcefn get_vmo<'life0, 'life1, 'async_trait>(
&'life0 self,
blob: &'life1 DeliveryBlob,
) -> Pin<Box<dyn Future<Output = Vmo> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_vmo<'life0, 'life1, 'async_trait>(
&'life0 self,
blob: &'life1 DeliveryBlob,
) -> Pin<Box<dyn Future<Output = Vmo> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Blobfs and Fxblob open and read blobs using different protocols. Benchmarks should remain agnostic to which protocol is being used.
Sourcefn exposed_dir(&self) -> &DirectoryProxy
fn exposed_dir(&self) -> &DirectoryProxy
Returns the exposed dir of Blobfs or Fxblobs’ blob volume.