fuchsia_storage_benchmarks_lib::filesystems

Trait BlobFilesystem

Source
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§

Source

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.

Source

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.

Source

fn exposed_dir(&self) -> &DirectoryProxy

Returns the exposed dir of Blobfs or Fxblobs’ blob volume.

Implementors§