Trait seabird::proto::seabird::seabird_server::Seabird [−][src]
pub trait Seabird: Send + Sync + 'static {
type StreamEventsStream: Stream<Item = Result<Event, Status>> + Send + Sync + 'static;
Show 14 methods
fn stream_events<'life0, 'async_trait>(
&'life0 self,
request: Request<StreamEventsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamEventsStream>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn perform_action<'life0, 'async_trait>(
&'life0 self,
request: Request<PerformActionRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<PerformActionResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn perform_private_action<'life0, 'async_trait>(
&'life0 self,
request: Request<PerformPrivateActionRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<PerformPrivateActionResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn send_message<'life0, 'async_trait>(
&'life0 self,
request: Request<SendMessageRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SendMessageResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn send_private_message<'life0, 'async_trait>(
&'life0 self,
request: Request<SendPrivateMessageRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SendPrivateMessageResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn join_channel<'life0, 'async_trait>(
&'life0 self,
request: Request<JoinChannelRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<JoinChannelResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn leave_channel<'life0, 'async_trait>(
&'life0 self,
request: Request<LeaveChannelRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<LeaveChannelResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn update_channel_info<'life0, 'async_trait>(
&'life0 self,
request: Request<UpdateChannelInfoRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<UpdateChannelInfoResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn list_backends<'life0, 'async_trait>(
&'life0 self,
request: Request<ListBackendsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<ListBackendsResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn get_backend_info<'life0, 'async_trait>(
&'life0 self,
request: Request<BackendInfoRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<BackendInfoResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn list_channels<'life0, 'async_trait>(
&'life0 self,
request: Request<ListChannelsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<ListChannelsResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn get_channel_info<'life0, 'async_trait>(
&'life0 self,
request: Request<ChannelInfoRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<ChannelInfoResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn get_core_info<'life0, 'async_trait>(
&'life0 self,
request: Request<CoreInfoRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<CoreInfoResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn registered_commands<'life0, 'async_trait>(
&'life0 self,
request: Request<CommandsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<CommandsResponse>, Status>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
}
Expand description
Generated trait containing gRPC methods that should be implemented for use with SeabirdServer.
Associated Types
Required methods
fn stream_events<'life0, 'async_trait>(
&'life0 self,
request: Request<StreamEventsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamEventsStream>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn perform_action<'life0, 'async_trait>(
&'life0 self,
request: Request<PerformActionRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<PerformActionResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn perform_action<'life0, 'async_trait>(
&'life0 self,
request: Request<PerformActionRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<PerformActionResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Chat actions
fn perform_private_action<'life0, 'async_trait>(
&'life0 self,
request: Request<PerformPrivateActionRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<PerformPrivateActionResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn send_message<'life0, 'async_trait>(
&'life0 self,
request: Request<SendMessageRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SendMessageResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn send_private_message<'life0, 'async_trait>(
&'life0 self,
request: Request<SendPrivateMessageRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<SendPrivateMessageResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn join_channel<'life0, 'async_trait>(
&'life0 self,
request: Request<JoinChannelRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<JoinChannelResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn leave_channel<'life0, 'async_trait>(
&'life0 self,
request: Request<LeaveChannelRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<LeaveChannelResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn update_channel_info<'life0, 'async_trait>(
&'life0 self,
request: Request<UpdateChannelInfoRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<UpdateChannelInfoResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn list_backends<'life0, 'async_trait>(
&'life0 self,
request: Request<ListBackendsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<ListBackendsResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn list_backends<'life0, 'async_trait>(
&'life0 self,
request: Request<ListBackendsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<ListBackendsResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Chat backend introspection
fn get_backend_info<'life0, 'async_trait>(
&'life0 self,
request: Request<BackendInfoRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<BackendInfoResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn list_channels<'life0, 'async_trait>(
&'life0 self,
request: Request<ListChannelsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<ListChannelsResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn list_channels<'life0, 'async_trait>(
&'life0 self,
request: Request<ListChannelsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<ListChannelsResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Chat connection introspection
fn get_channel_info<'life0, 'async_trait>(
&'life0 self,
request: Request<ChannelInfoRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<ChannelInfoResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_core_info<'life0, 'async_trait>(
&'life0 self,
request: Request<CoreInfoRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<CoreInfoResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_core_info<'life0, 'async_trait>(
&'life0 self,
request: Request<CoreInfoRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<CoreInfoResponse>, Status>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Seabird introspection