pub trait CommunicationService: Sync + Send {
// Required methods
fn install(
&mut self,
api_receiver: InternalAPIReceiver,
event_sender: InternalEventSender,
);
fn uninstall(&mut self);
fn stop(&self);
fn start<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ServiceStartResult<()>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
// Provided method
fn restart<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ServiceStartResult<()>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait { ... }
}Required Methods§
Sourcefn install(
&mut self,
api_receiver: InternalAPIReceiver,
event_sender: InternalEventSender,
)
fn install( &mut self, api_receiver: InternalAPIReceiver, event_sender: InternalEventSender, )
安装服务
该方法仅进行服务的依赖注入,并不真正创建任务
应具备幂等性
Provided Methods§
Trait Implementations§
Source§impl CommunicationService for Box<dyn CommunicationService>
impl CommunicationService for Box<dyn CommunicationService>
Source§fn install(
&mut self,
api_receiver: InternalAPIReceiver,
event_sender: InternalEventSender,
)
fn install( &mut self, api_receiver: InternalAPIReceiver, event_sender: InternalEventSender, )
安装服务
该方法仅进行服务的依赖注入,并不真正创建任务
应具备幂等性
该方法仅进行服务的依赖注入,并不真正创建任务
应具备幂等性