fidl_fuchsia_hardware_block_volume

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;

    // 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 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 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>