pub trait DriverDevelopmentProxyInterface: Send + Sync {
type RestartDriverHostsResponseFut: Future<Output = Result<DriverDevelopmentRestartDriverHostsResult, Error>> + Send;
type BindAllUnboundNodesResponseFut: Future<Output = Result<DriverDevelopmentBindAllUnboundNodesResult, Error>> + Send;
type IsDfv2ResponseFut: Future<Output = Result<bool, Error>> + Send;
type AddTestNodeResponseFut: Future<Output = Result<DriverDevelopmentAddTestNodeResult, Error>> + Send;
type RemoveTestNodeResponseFut: Future<Output = Result<DriverDevelopmentRemoveTestNodeResult, Error>> + Send;
// Required methods
fn get_driver_info(
&self,
driver_filter: &mut dyn ExactSizeIterator<Item = &str>,
iterator: ServerEnd<DriverInfoIteratorMarker>
) -> Result<(), Error>;
fn get_composite_node_specs(
&self,
name_filter: Option<&str>,
iterator: ServerEnd<CompositeNodeSpecIteratorMarker>
) -> Result<(), Error>;
fn restart_driver_hosts(
&self,
driver_path: &str
) -> Self::RestartDriverHostsResponseFut;
fn get_device_info(
&self,
device_filter: &mut dyn ExactSizeIterator<Item = &str>,
iterator: ServerEnd<DeviceInfoIteratorMarker>,
exact_match: bool
) -> Result<(), Error>;
fn get_composite_info(
&self,
iterator: ServerEnd<CompositeInfoIteratorMarker>
) -> Result<(), Error>;
fn bind_all_unbound_nodes(&self) -> Self::BindAllUnboundNodesResponseFut;
fn is_dfv2(&self) -> Self::IsDfv2ResponseFut;
fn add_test_node(
&self,
args: TestNodeAddArgs
) -> Self::AddTestNodeResponseFut;
fn remove_test_node(&self, name: &str) -> Self::RemoveTestNodeResponseFut;
}