pub trait Boardswarm:
Send
+ Sync
+ 'static {
type MonitorStream: Stream<Item = Result<ItemEvent, Status>> + Send + 'static;
type DeviceInfoStream: Stream<Item = Result<Device, Status>> + Send + 'static;
type ConsoleStreamOutputStream: Stream<Item = Result<ConsoleOutput, Status>> + Send + 'static;
type VolumeIoStream: Stream<Item = Result<VolumeIoReply, Status>> + Send + 'static;
Show 13 methods
// Required methods
fn login_info<'life0, 'async_trait>(
&'life0 self,
request: Request<()>,
) -> Pin<Box<dyn Future<Output = Result<Response<LoginInfoList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn list<'life0, 'async_trait>(
&'life0 self,
request: Request<ItemTypeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemList>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn monitor<'life0, 'async_trait>(
&'life0 self,
request: Request<ItemTypeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::MonitorStream>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn item_properties<'life0, 'async_trait>(
&'life0 self,
request: Request<ItemPropertiesRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemPropertiesMsg>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn device_info<'life0, 'async_trait>(
&'life0 self,
request: Request<DeviceRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::DeviceInfoStream>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn device_change_mode<'life0, 'async_trait>(
&'life0 self,
request: Request<DeviceModeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn actuator_change_mode<'life0, 'async_trait>(
&'life0 self,
request: Request<ActuatorModeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn console_configure<'life0, 'async_trait>(
&'life0 self,
request: Request<ConsoleConfigureRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn console_stream_output<'life0, 'async_trait>(
&'life0 self,
request: Request<ConsoleOutputRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::ConsoleStreamOutputStream>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn console_stream_input<'life0, 'async_trait>(
&'life0 self,
request: Request<Streaming<ConsoleInputRequest>>,
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn volume_info<'life0, 'async_trait>(
&'life0 self,
request: Request<VolumeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<VolumeInfoMsg>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn volume_io<'life0, 'async_trait>(
&'life0 self,
request: Request<Streaming<VolumeIoRequest>>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::VolumeIoStream>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn volume_commit<'life0, 'async_trait>(
&'life0 self,
request: Request<VolumeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}Expand description
Generated trait containing gRPC methods that should be implemented for use with BoardswarmServer.
Required Associated Types§
Sourcetype MonitorStream: Stream<Item = Result<ItemEvent, Status>> + Send + 'static
type MonitorStream: Stream<Item = Result<ItemEvent, Status>> + Send + 'static
Server streaming response type for the Monitor method.
Sourcetype DeviceInfoStream: Stream<Item = Result<Device, Status>> + Send + 'static
type DeviceInfoStream: Stream<Item = Result<Device, Status>> + Send + 'static
Server streaming response type for the DeviceInfo method.
Sourcetype ConsoleStreamOutputStream: Stream<Item = Result<ConsoleOutput, Status>> + Send + 'static
type ConsoleStreamOutputStream: Stream<Item = Result<ConsoleOutput, Status>> + Send + 'static
Server streaming response type for the ConsoleStreamOutput method.
Sourcetype VolumeIoStream: Stream<Item = Result<VolumeIoReply, Status>> + Send + 'static
type VolumeIoStream: Stream<Item = Result<VolumeIoReply, Status>> + Send + 'static
Server streaming response type for the VolumeIo method.
Required Methods§
fn login_info<'life0, 'async_trait>(
&'life0 self,
request: Request<()>,
) -> Pin<Box<dyn Future<Output = Result<Response<LoginInfoList>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list<'life0, 'async_trait>(
&'life0 self,
request: Request<ItemTypeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemList>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn monitor<'life0, 'async_trait>(
&'life0 self,
request: Request<ItemTypeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::MonitorStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn item_properties<'life0, 'async_trait>(
&'life0 self,
request: Request<ItemPropertiesRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<ItemPropertiesMsg>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn device_info<'life0, 'async_trait>(
&'life0 self,
request: Request<DeviceRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::DeviceInfoStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn device_change_mode<'life0, 'async_trait>(
&'life0 self,
request: Request<DeviceModeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn actuator_change_mode<'life0, 'async_trait>(
&'life0 self,
request: Request<ActuatorModeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn console_configure<'life0, 'async_trait>(
&'life0 self,
request: Request<ConsoleConfigureRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn console_stream_output<'life0, 'async_trait>(
&'life0 self,
request: Request<ConsoleOutputRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::ConsoleStreamOutputStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn console_stream_input<'life0, 'async_trait>(
&'life0 self,
request: Request<Streaming<ConsoleInputRequest>>,
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn volume_info<'life0, 'async_trait>(
&'life0 self,
request: Request<VolumeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<VolumeInfoMsg>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn volume_io<'life0, 'async_trait>(
&'life0 self,
request: Request<Streaming<VolumeIoRequest>>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::VolumeIoStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Sourcefn volume_commit<'life0, 'async_trait>(
&'life0 self,
request: Request<VolumeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn volume_commit<'life0, 'async_trait>(
&'life0 self,
request: Request<VolumeRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Commit all data in an uploader specific manner; e.g. may trigger a USB reset for DFU devices