pub trait Run {
type Message;
// Required method
fn run<'async_trait>(
self,
comp_in_rx: Receiver<Self::Message>,
comp_out_tx: Sender<ClientBrokerMessage<Self::Message>>,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait;
}