Trait VolumeProxyInterface

Source
pub trait VolumeProxyInterface: Send + Sync {
    type GetInfoResponseFut: Future<Output = Result<BlockGetInfoResult, Error>> + Send;
    type GetStatsResponseFut: Future<Output = Result<BlockGetStatsResult, Error>> + Send;
    type GetTypeGuidResponseFut: Future<Output = Result<(i32, Option<Box<Guid>>), Error>> + Send;
    type GetInstanceGuidResponseFut: Future<Output = Result<(i32, Option<Box<Guid>>), Error>> + Send;
    type GetNameResponseFut: Future<Output = Result<(i32, Option<String>), Error>> + Send;
    type GetMetadataResponseFut: Future<Output = Result<PartitionGetMetadataResult, Error>> + Send;
    type QuerySlicesResponseFut: Future<Output = Result<(i32, [VsliceRange; 16], u64), Error>> + Send;
    type GetVolumeInfoResponseFut: Future<Output = Result<(i32, Option<Box<VolumeManagerInfo>>, Option<Box<VolumeInfo>>), Error>> + Send;
    type ExtendResponseFut: Future<Output = Result<i32, Error>> + Send;
    type ShrinkResponseFut: Future<Output = Result<i32, Error>> + Send;
    type DestroyResponseFut: Future<Output = Result<i32, Error>> + Send;

Show 13 methods // Required methods fn get_info(&self) -> Self::GetInfoResponseFut; fn get_stats(&self, clear: bool) -> Self::GetStatsResponseFut; fn open_session( &self, session: ServerEnd<SessionMarker>, ) -> Result<(), Error>; fn open_session_with_offset_map( &self, session: ServerEnd<SessionMarker>, offset_map: Option<ClientEnd<OffsetMapMarker>>, initial_mappings: Option<&[BlockOffsetMapping]>, ) -> Result<(), Error>; fn get_type_guid(&self) -> Self::GetTypeGuidResponseFut; fn get_instance_guid(&self) -> Self::GetInstanceGuidResponseFut; fn get_name(&self) -> Self::GetNameResponseFut; fn get_metadata(&self) -> Self::GetMetadataResponseFut; fn query_slices(&self, start_slices: &[u64]) -> Self::QuerySlicesResponseFut; fn get_volume_info(&self) -> Self::GetVolumeInfoResponseFut; fn extend( &self, start_slice: u64, slice_count: u64, ) -> Self::ExtendResponseFut; fn shrink( &self, start_slice: u64, slice_count: u64, ) -> Self::ShrinkResponseFut; fn destroy(&self) -> Self::DestroyResponseFut;
}

Required Associated Types§

Source

type GetInfoResponseFut: Future<Output = Result<BlockGetInfoResult, Error>> + Send

Source

type GetStatsResponseFut: Future<Output = Result<BlockGetStatsResult, Error>> + Send

Source

type GetTypeGuidResponseFut: Future<Output = Result<(i32, Option<Box<Guid>>), Error>> + Send

Source

type GetInstanceGuidResponseFut: Future<Output = Result<(i32, Option<Box<Guid>>), Error>> + Send

Source

type GetNameResponseFut: Future<Output = Result<(i32, Option<String>), Error>> + Send

Source

type GetMetadataResponseFut: Future<Output = Result<PartitionGetMetadataResult, Error>> + Send

Source

type QuerySlicesResponseFut: Future<Output = Result<(i32, [VsliceRange; 16], u64), Error>> + Send

Source

type GetVolumeInfoResponseFut: Future<Output = Result<(i32, Option<Box<VolumeManagerInfo>>, Option<Box<VolumeInfo>>), Error>> + Send

Source

type ExtendResponseFut: Future<Output = Result<i32, Error>> + Send

Source

type ShrinkResponseFut: Future<Output = Result<i32, Error>> + Send

Source

type DestroyResponseFut: Future<Output = Result<i32, Error>> + Send

Required Methods§

Source

fn get_info(&self) -> Self::GetInfoResponseFut

Source

fn get_stats(&self, clear: bool) -> Self::GetStatsResponseFut

Source

fn open_session(&self, session: ServerEnd<SessionMarker>) -> Result<(), Error>

Source

fn open_session_with_offset_map( &self, session: ServerEnd<SessionMarker>, offset_map: Option<ClientEnd<OffsetMapMarker>>, initial_mappings: Option<&[BlockOffsetMapping]>, ) -> Result<(), Error>

Source

fn get_type_guid(&self) -> Self::GetTypeGuidResponseFut

Source

fn get_instance_guid(&self) -> Self::GetInstanceGuidResponseFut

Source

fn get_name(&self) -> Self::GetNameResponseFut

Source

fn get_metadata(&self) -> Self::GetMetadataResponseFut

Source

fn query_slices(&self, start_slices: &[u64]) -> Self::QuerySlicesResponseFut

Source

fn get_volume_info(&self) -> Self::GetVolumeInfoResponseFut

Source

fn extend(&self, start_slice: u64, slice_count: u64) -> Self::ExtendResponseFut

Source

fn shrink(&self, start_slice: u64, slice_count: u64) -> Self::ShrinkResponseFut

Source

fn destroy(&self) -> Self::DestroyResponseFut

Implementors§

Source§

impl VolumeProxyInterface for VolumeProxy

Source§

type GetInfoResponseFut = QueryResponseFut<Result<BlockInfo, i32>>

Source§

type GetStatsResponseFut = QueryResponseFut<Result<BlockStats, i32>>

Source§

type GetTypeGuidResponseFut = QueryResponseFut<(i32, Option<Box<Guid>>)>

Source§

type GetInstanceGuidResponseFut = QueryResponseFut<(i32, Option<Box<Guid>>)>

Source§

type GetNameResponseFut = QueryResponseFut<(i32, Option<String>)>

Source§

type GetMetadataResponseFut = QueryResponseFut<Result<PartitionGetMetadataResponse, i32>>

Source§

type QuerySlicesResponseFut = QueryResponseFut<(i32, [VsliceRange; 16], u64)>

Source§

type GetVolumeInfoResponseFut = QueryResponseFut<(i32, Option<Box<VolumeManagerInfo>>, Option<Box<VolumeInfo>>)>

Source§

type ExtendResponseFut = QueryResponseFut<i32>

Source§

type ShrinkResponseFut = QueryResponseFut<i32>

Source§

type DestroyResponseFut = QueryResponseFut<i32>