pub struct MessengerManager { /* private fields */ }Expand description
Manager for multiple messengers
Implementations§
Source§impl MessengerManager
impl MessengerManager
pub fn new() -> Self
Sourcepub fn add_messenger(&mut self, messenger: Box<dyn Messenger>)
pub fn add_messenger(&mut self, messenger: Box<dyn Messenger>)
Add a messenger to the manager
Sourcepub async fn initialize_all(&mut self) -> Result<()>
pub async fn initialize_all(&mut self) -> Result<()>
Initialize all messengers
Sourcepub fn get_messengers(&self) -> &[Box<dyn Messenger>]
pub fn get_messengers(&self) -> &[Box<dyn Messenger>]
Get all messengers
Sourcepub fn get_messenger(&self, name: &str) -> Option<&dyn Messenger>
pub fn get_messenger(&self, name: &str) -> Option<&dyn Messenger>
Get a messenger by name
Sourcepub fn get_messenger_by_type(&self, msg_type: &str) -> Option<&dyn Messenger>
pub fn get_messenger_by_type(&self, msg_type: &str) -> Option<&dyn Messenger>
Get a messenger by type
Sourcepub async fn disconnect_all(&mut self) -> Result<()>
pub async fn disconnect_all(&mut self) -> Result<()>
Disconnect all messengers
Trait Implementations§
Auto Trait Implementations§
impl Freeze for MessengerManager
impl !RefUnwindSafe for MessengerManager
impl Send for MessengerManager
impl Sync for MessengerManager
impl Unpin for MessengerManager
impl UnsafeUnpin for MessengerManager
impl !UnwindSafe for MessengerManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more