Enum internet2::transport::zeromq::ZmqSocketType
source · #[repr(u8)]
#[non_exhaustive]
pub enum ZmqSocketType {
Pull,
Push,
Req,
Rep,
Pub,
Sub,
RouterBind,
RouterConnect,
}
Expand description
API type for node-to-node communications used by ZeroMQ
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Pull
Pure peer-to-peer communications done with PUSH/PULL pair of ZMQ
sockets. Each node can send unordered set of messages and does not
wait for a response.
This part represents listening socket (zmq::SocketType::PULL
)
Push
Pure peer-to-peer communications done with PUSH/PULL pair of ZMQ
sockets. Each node can send unordered set of messages and does not
wait for a response.
This part represents connected socket (zmq::SocketType::PUSH
)
Req
Remote procedure call communications done with REQ/REP pair of ZMQ
sockets. Two roles: client and server; client sends requests and awaits
for client responses.
This part represents client-side socket (zmq::SocketType::REQ
)
Rep
Remote procedure call communications done with REQ/REP pair of ZMQ
sockets. Two roles: client and server; client sends requests and awaits
for client responses.
This part represents server-side socket (zmq::SocketType::REP
)
Pub
Subscription API done with SUB/PUB pair of ZMQ sockets. Two roles:
publisher (server) and subscriber (client); subscriber awaits for
messages from publisher and does not communicates back.
This part represents publisher part (zmq::SocketType::PUB
)
Sub
Subscription API done with SUB/PUB pair of ZMQ sockets. Two roles:
publisher (server) and subscriber (client); subscriber awaits for
messages from publisher and does not communicates back.
This part represents subscriber part (zmq::SocketType::SUB
)
RouterBind
Message bus: each message has a receiver and sender, and multiple peers
may communicate directly with each other in asynchronous mode.
Represents zmq::SocketType::ROUTER
socket which is bind to
RouterConnect
Message bus: each message has a receiver and sender, and multiple peers
may communicate directly with each other in asynchronous mode.
Represents zmq::SocketType::ROUTER
socket wich is connected to
Implementations§
source§impl ZmqSocketType
impl ZmqSocketType
sourcepub fn socket_type(&self) -> SocketType
pub fn socket_type(&self) -> SocketType
Returns zmq::SocketType
corresponding to the given ZmqSocketType
Trait Implementations§
source§impl Clone for ZmqSocketType
impl Clone for ZmqSocketType
source§fn clone(&self) -> ZmqSocketType
fn clone(&self) -> ZmqSocketType
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ZmqSocketType
impl Debug for ZmqSocketType
source§impl Display for ZmqSocketType
impl Display for ZmqSocketType
source§impl FromStr for ZmqSocketType
impl FromStr for ZmqSocketType
source§impl Hash for ZmqSocketType
impl Hash for ZmqSocketType
source§impl Ord for ZmqSocketType
impl Ord for ZmqSocketType
source§fn cmp(&self, other: &ZmqSocketType) -> Ordering
fn cmp(&self, other: &ZmqSocketType) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl PartialEq<ZmqSocketType> for ZmqSocketType
impl PartialEq<ZmqSocketType> for ZmqSocketType
source§fn eq(&self, other: &ZmqSocketType) -> bool
fn eq(&self, other: &ZmqSocketType) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<ZmqSocketType> for ZmqSocketType
impl PartialOrd<ZmqSocketType> for ZmqSocketType
source§fn partial_cmp(&self, other: &ZmqSocketType) -> Option<Ordering>
fn partial_cmp(&self, other: &ZmqSocketType) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read more