pub trait VolumeAndNodeProxyInterface: Send + Sync {
Show 68 associated items
type GetInfoResponseFut: Future<Output = Result<BlockGetInfoResult, Error>> + Send;
type GetStatsResponseFut: Future<Output = Result<BlockGetStatsResult, Error>> + Send;
type ReadBlocksResponseFut: Future<Output = Result<BlockReadBlocksResult, Error>> + Send;
type WriteBlocksResponseFut: Future<Output = Result<BlockWriteBlocksResult, 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 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;
type GetAttrResponseFut: Future<Output = Result<(i32, NodeAttributes), Error>> + Send;
type SetAttrResponseFut: Future<Output = Result<i32, Error>> + Send;
type GetFlagsResponseFut: Future<Output = Result<(i32, OpenFlags), Error>> + Send;
type SetFlagsResponseFut: Future<Output = Result<i32, Error>> + Send;
type QueryFilesystemResponseFut: Future<Output = Result<(i32, Option<Box<FilesystemInfo>>), Error>> + Send;
type CloseResponseFut: Future<Output = Result<CloseableCloseResult, Error>> + Send;
type QueryResponseFut: Future<Output = Result<Vec<u8>, Error>> + Send;
type GetConnectionInfoResponseFut: Future<Output = Result<ConnectionInfo, Error>> + Send;
type GetAttributesResponseFut: Future<Output = Result<Node2GetAttributesResult, Error>> + Send;
type UpdateAttributesResponseFut: Future<Output = Result<Node2UpdateAttributesResult, Error>> + Send;
type SyncResponseFut: Future<Output = Result<Node2SyncResult, Error>> + Send;
type BindResponseFut: Future<Output = Result<ControllerBindResult, Error>> + Send;
type RebindResponseFut: Future<Output = Result<ControllerRebindResult, Error>> + Send;
type UnbindChildrenResponseFut: Future<Output = Result<ControllerUnbindChildrenResult, Error>> + Send;
type ScheduleUnbindResponseFut: Future<Output = Result<ControllerScheduleUnbindResult, Error>> + Send;
type GetTopologicalPathResponseFut: Future<Output = Result<ControllerGetTopologicalPathResult, Error>> + Send;
type GetMinDriverLogSeverityResponseFut: Future<Output = Result<(i32, LogLevelFilter), Error>> + Send;
type SetMinDriverLogSeverityResponseFut: Future<Output = Result<i32, Error>> + Send;
type GetCurrentPerformanceStateResponseFut: Future<Output = Result<u32, Error>> + Send;
type SetPerformanceStateResponseFut: Future<Output = Result<(i32, u32), 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 read_blocks(
&self,
vmo: Vmo,
length: u64,
dev_offset: u64,
vmo_offset: u64
) -> Self::ReadBlocksResponseFut;
fn write_blocks(
&self,
vmo: Vmo,
length: u64,
dev_offset: u64,
vmo_offset: u64
) -> Self::WriteBlocksResponseFut;
fn get_type_guid(&self) -> Self::GetTypeGuidResponseFut;
fn get_instance_guid(&self) -> Self::GetInstanceGuidResponseFut;
fn get_name(&self) -> Self::GetNameResponseFut;
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;
fn clone(
&self,
flags: OpenFlags,
object: ServerEnd<NodeMarker>
) -> Result<(), Error>;
fn get_attr(&self) -> Self::GetAttrResponseFut;
fn set_attr(
&self,
flags: NodeAttributeFlags,
attributes: &mut NodeAttributes
) -> Self::SetAttrResponseFut;
fn get_flags(&self) -> Self::GetFlagsResponseFut;
fn set_flags(&self, flags: OpenFlags) -> Self::SetFlagsResponseFut;
fn query_filesystem(&self) -> Self::QueryFilesystemResponseFut;
fn close(&self) -> Self::CloseResponseFut;
fn query(&self) -> Self::QueryResponseFut;
fn reopen(
&self,
rights_request: Option<&mut RightsRequest>,
object_request: ServerEnd<NodeMarker>
) -> Result<(), Error>;
fn get_connection_info(&self) -> Self::GetConnectionInfoResponseFut;
fn get_attributes(
&self,
query: NodeAttributesQuery
) -> Self::GetAttributesResponseFut;
fn update_attributes(
&self,
payload: MutableNodeAttributes
) -> Self::UpdateAttributesResponseFut;
fn sync(&self) -> Self::SyncResponseFut;
fn connect_to_device_fidl(&self, server: Channel) -> Result<(), Error>;
fn bind(&self, driver: &str) -> Self::BindResponseFut;
fn rebind(&self, driver: &str) -> Self::RebindResponseFut;
fn unbind_children(&self) -> Self::UnbindChildrenResponseFut;
fn schedule_unbind(&self) -> Self::ScheduleUnbindResponseFut;
fn get_topological_path(&self) -> Self::GetTopologicalPathResponseFut;
fn get_min_driver_log_severity(
&self
) -> Self::GetMinDriverLogSeverityResponseFut;
fn set_min_driver_log_severity(
&self,
severity: LogLevelFilter
) -> Self::SetMinDriverLogSeverityResponseFut;
fn get_current_performance_state(
&self
) -> Self::GetCurrentPerformanceStateResponseFut;
fn set_performance_state(
&self,
requested_state: u32
) -> Self::SetPerformanceStateResponseFut;
}