Skip to main content

BlockProxyInterface

Trait BlockProxyInterface 

Source
pub trait BlockProxyInterface: Send + Sync {
    type GetInfoResponseFut: Future<Output = Result<BlockGetInfoResult, Error>> + Send;
    type ConnectMapperResponseFut: Future<Output = Result<BlockConnectMapperResult, 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<BlockGetMetadataResult, 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 open_session( &self, session: ServerEnd<SessionMarker>, ) -> Result<(), Error>; fn open_session_with_options( &self, session: ServerEnd<SessionMarker>, mappings: &[BlockOffsetMapping], ) -> Result<(), Error>; fn connect_mapper( &self, server_end: ServerEnd<MapperMarker>, ) -> Self::ConnectMapperResponseFut; 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§

Required Methods§

Source

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

Source

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

Source

fn open_session_with_options( &self, session: ServerEnd<SessionMarker>, mappings: &[BlockOffsetMapping], ) -> Result<(), Error>

Source

fn connect_mapper( &self, server_end: ServerEnd<MapperMarker>, ) -> Self::ConnectMapperResponseFut

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

Dyn Compatibility§

This trait is dyn compatible.

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

Implementors§