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.

Implementors§