Skip to main content

VolumeManager

Trait VolumeManager 

Source
pub trait VolumeManager: Send + Sync {
    // Required methods
    fn volume_add<'life0, 'async_trait>(
        &'life0 self,
        args: VolumeAddRequest,
    ) -> Pin<Box<dyn Future<Output = Result<VolumeAddResponse, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn volume_remove<'life0, 'async_trait>(
        &'life0 self,
        args: VolumeRemoveRequest,
    ) -> Pin<Box<dyn Future<Output = Result<VolumeRemoveResponse, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn volume_list<'life0, 'async_trait>(
        &'life0 self,
        args: VolumeListRequest,
    ) -> Pin<Box<dyn Future<Output = Result<VolumeListResponse, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Volume manager interface.

Required Methods§

Source

fn volume_add<'life0, 'async_trait>( &'life0 self, args: VolumeAddRequest, ) -> Pin<Box<dyn Future<Output = Result<VolumeAddResponse, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Request to host to add a volume.

The PermissionVolumeAdd permission is required to call this method.

Source

fn volume_remove<'life0, 'async_trait>( &'life0 self, args: VolumeRemoveRequest, ) -> Pin<Box<dyn Future<Output = Result<VolumeRemoveResponse, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Request to host to remove volumes.

The PermissionVolumeRemove permission is required to call this method.

Source

fn volume_list<'life0, 'async_trait>( &'life0 self, args: VolumeListRequest, ) -> Pin<Box<dyn Future<Output = Result<VolumeListResponse, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Request to host to list volumes.

The PermissionVolumeAdd permission is required to call this method.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§