pub struct NetworkManager { /* private fields */ }Expand description
Network manager for Raft communication
This component manages the network layer for Raft messages, handling both sending and receiving messages between nodes.
Implementations§
Source§impl NetworkManager
impl NetworkManager
Sourcepub fn new(config: Arc<ControllerConfig>) -> (Self, UnboundedReceiver<Message>)
pub fn new(config: Arc<ControllerConfig>) -> (Self, UnboundedReceiver<Message>)
Create a new network manager
Sourcepub fn incoming_sender(&self) -> UnboundedSender<Message>
pub fn incoming_sender(&self) -> UnboundedSender<Message>
Get the incoming message sender
Sourcepub async fn send_message(&self, msg: Message) -> Result<()>
pub async fn send_message(&self, msg: Message) -> Result<()>
Send a message to a peer
Sourcepub async fn broadcast_message(&self, msg: Message) -> Result<()>
pub async fn broadcast_message(&self, msg: Message) -> Result<()>
Broadcast a message to all peers
Auto Trait Implementations§
impl Freeze for NetworkManager
impl !RefUnwindSafe for NetworkManager
impl Send for NetworkManager
impl Sync for NetworkManager
impl Unpin for NetworkManager
impl !UnwindSafe for NetworkManager
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