pub trait HalService:
Send
+ Sync
+ 'static {
type StreamStatusStream: Stream<Item = Result<HalSystemStatus, Status>> + Send + 'static;
type WatchValuesStream: Stream<Item = Result<ValueChangeBatch, Status>> + Send + 'static;
// Required methods
fn get_system_status<'life0, 'async_trait>(
&'life0 self,
request: Request<GetSystemStatusRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<HalSystemStatus>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn send_command<'life0, 'async_trait>(
&'life0 self,
request: Request<HalCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<HalCommandResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_value<'life0, 'async_trait>(
&'life0 self,
request: Request<GetValueCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetValueResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn query_pins<'life0, 'async_trait>(
&'life0 self,
request: Request<QueryPinsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QueryPinsResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn query_signals<'life0, 'async_trait>(
&'life0 self,
request: Request<QuerySignalsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QuerySignalsResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn query_params<'life0, 'async_trait>(
&'life0 self,
request: Request<QueryParamsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QueryParamsResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn query_components<'life0, 'async_trait>(
&'life0 self,
request: Request<QueryComponentsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QueryComponentsResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn stream_status<'life0, 'async_trait>(
&'life0 self,
request: Request<HalStreamStatusRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamStatusStream>, Status>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn watch_values<'life0, 'async_trait>(
&'life0 self,
request: Request<WatchRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::WatchValuesStream>, 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 HalServiceServer.
Required Associated Types§
Sourcetype StreamStatusStream: Stream<Item = Result<HalSystemStatus, Status>> + Send + 'static
type StreamStatusStream: Stream<Item = Result<HalSystemStatus, Status>> + Send + 'static
Server streaming response type for the StreamStatus method.
Sourcetype WatchValuesStream: Stream<Item = Result<ValueChangeBatch, Status>> + Send + 'static
type WatchValuesStream: Stream<Item = Result<ValueChangeBatch, Status>> + Send + 'static
Server streaming response type for the WatchValues method.
Required Methods§
Sourcefn get_system_status<'life0, 'async_trait>(
&'life0 self,
request: Request<GetSystemStatusRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<HalSystemStatus>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_system_status<'life0, 'async_trait>(
&'life0 self,
request: Request<GetSystemStatusRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<HalSystemStatus>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get complete HAL system status
Sourcefn send_command<'life0, 'async_trait>(
&'life0 self,
request: Request<HalCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<HalCommandResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn send_command<'life0, 'async_trait>(
&'life0 self,
request: Request<HalCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<HalCommandResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Send a command
Sourcefn get_value<'life0, 'async_trait>(
&'life0 self,
request: Request<GetValueCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetValueResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_value<'life0, 'async_trait>(
&'life0 self,
request: Request<GetValueCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<GetValueResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get a single value
Sourcefn query_pins<'life0, 'async_trait>(
&'life0 self,
request: Request<QueryPinsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QueryPinsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn query_pins<'life0, 'async_trait>(
&'life0 self,
request: Request<QueryPinsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QueryPinsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Query pins
Sourcefn query_signals<'life0, 'async_trait>(
&'life0 self,
request: Request<QuerySignalsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QuerySignalsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn query_signals<'life0, 'async_trait>(
&'life0 self,
request: Request<QuerySignalsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QuerySignalsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Query signals
Sourcefn query_params<'life0, 'async_trait>(
&'life0 self,
request: Request<QueryParamsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QueryParamsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn query_params<'life0, 'async_trait>(
&'life0 self,
request: Request<QueryParamsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QueryParamsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Query parameters
Sourcefn query_components<'life0, 'async_trait>(
&'life0 self,
request: Request<QueryComponentsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QueryComponentsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn query_components<'life0, 'async_trait>(
&'life0 self,
request: Request<QueryComponentsCommand>,
) -> Pin<Box<dyn Future<Output = Result<Response<QueryComponentsResponse>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Query components
Sourcefn stream_status<'life0, 'async_trait>(
&'life0 self,
request: Request<HalStreamStatusRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamStatusStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn stream_status<'life0, 'async_trait>(
&'life0 self,
request: Request<HalStreamStatusRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamStatusStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Stream system status updates
Sourcefn watch_values<'life0, 'async_trait>(
&'life0 self,
request: Request<WatchRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::WatchValuesStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn watch_values<'life0, 'async_trait>(
&'life0 self,
request: Request<WatchRequest>,
) -> Pin<Box<dyn Future<Output = Result<Response<Self::WatchValuesStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Watch for value changes