Package org.zeromq
Class ZMQ
java.lang.Object
org.zeromq.ZMQ
ZeroMQ JNI Bindings.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classInner class: Context.static enumInner class: Error.static classInner class: Event.static classInner class: Poller.static classstatic classInner class: Socket. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intFlag to specify a DEALER socket (aka XREQ).static final intstatic final intDeprecated.static final intEVENT_ACCEPT_FAILED: could not accept client connection.static final intEVENT_ACCEPTED: connection accepted to bound interface.static final intEVENT_ALL: all events known by the java binding.static final intEVENT_BIND_FAILED: socket could not bind to an address.static final intEVENT_CLOSE_FAILED: connection couldn't be closed.static final intEVENT_CLOSED: connection closed.static final intEVENT_CONNECT_DELAYED: synchronous connect failed, it's being polled.static final intEVENT_CONNECT_RETRIED: asynchronous connect / reconnection attempt.static final intEVENT_CONNECTED: connection established.static final intEVENT_DISCONNECTED: broken session.static final intEVENT_LISTENING: socket bound to an address, ready to accept connections.static final intEVENT_MONITOR_STOPPED: monitor has been stopped.static final intFlag to specify a FORWARDER device.static final intSocket flag to indicate a nonblocking send or recv mode.static final intFlag to specify a exclusive pair of items.static final intFlag to specify a PUB socket, receiving side must be a SUB or XSUB.static final intFlag to specify the receiving part of a PUSH socket.static final intFlag to specify a PUSH socket, receiving side must be a PULL.static final intFlag to specify a QUEUE device.static final intFlag to specify the receiving part of a REQ socket.static final intFlag to specify a REQ socket, receiving side must be a REP.static final intFlag to specify ROUTER socket (aka XREP).static final intSocket flag to indicate that more message parts are coming.static final intFlag to specify a STREAMER device.static final intFlag to specify the receiving part of the PUB or XPUB socket.static final intDeprecated.static final intFlag to specify a XPUB socket, receiving side must be a SUB or XSUB.static final intDeprecated.static final intDeprecated.As of release 3.0 of zeromq, replaced byDEALERstatic final intFlag to specify the receiving part of the PUB or XPUB socket. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic ZMQ.Contextcontext(int ioThreads) Create a new Context.protected static longprotected static longprotected static longprotected static longEFSM()protected static longprotected static longprotected static longEMTHREAD()protected static longENETDOWN()protected static longENOBUFS()protected static longprotected static longENOTSOCK()protected static longENOTSUP()protected static longprotected static longETERM()static intstatic intstatic intstatic intstatic Stringprotected static intmake_version(int major, int minor, int patch) static intmakeVersion(int major, int minor, int patch) static intpoll(ZMQ.PollItem[] items, int count, long timeout) Poll on polling items until timeoutstatic intpoll(ZMQ.PollItem[] items, long timeout) Poll on polling items until timeoutstatic voidproxy(ZMQ.Socket frontend, ZMQ.Socket backend, ZMQ.Socket capture) Starts the built-in 0MQ proxy in the current application thread.protected static intprotected static intprotected static intprotected static int
-
Field Details
-
NOBLOCK
public static final int NOBLOCKSocket flag to indicate a nonblocking send or recv mode.- See Also:
-
DONTWAIT
public static final int DONTWAIT- See Also:
-
SNDMORE
public static final int SNDMORESocket flag to indicate that more message parts are coming.- See Also:
-
PAIR
public static final int PAIRFlag to specify a exclusive pair of items.- See Also:
-
PUB
public static final int PUBFlag to specify a PUB socket, receiving side must be a SUB or XSUB.- See Also:
-
SUB
public static final int SUBFlag to specify the receiving part of the PUB or XPUB socket.- See Also:
-
REQ
public static final int REQFlag to specify a REQ socket, receiving side must be a REP.- See Also:
-
REP
public static final int REPFlag to specify the receiving part of a REQ socket.- See Also:
-
DEALER
public static final int DEALERFlag to specify a DEALER socket (aka XREQ). DEALER is really a combined ventilator / sink that does load-balancing on output and fair-queuing on input with no other semantics. It is the only socket type that lets you shuffle messages out to N nodes and shuffle the replies back, in a raw bidirectional asynch pattern.- See Also:
-
XREQ
public static final int XREQDeprecated.As of release 3.0 of zeromq, replaced byDEALEROld alias for DEALER flag. Flag to specify a XREQ socket, receiving side must be a XREP.- See Also:
-
ROUTER
public static final int ROUTERFlag to specify ROUTER socket (aka XREP). ROUTER is the socket that creates and consumes request-reply routing envelopes. It is the only socket type that lets you route messages to specific connections if you know their identities.- See Also:
-
XREP
public static final int XREPDeprecated.As of release 3.0 of zeromq, replaced byROUTEROld alias for ROUTER flag. Flag to specify the receiving part of a XREQ socket.- See Also:
-
PULL
public static final int PULLFlag to specify the receiving part of a PUSH socket.- See Also:
-
PUSH
public static final int PUSHFlag to specify a PUSH socket, receiving side must be a PULL.- See Also:
-
XPUB
public static final int XPUBFlag to specify a XPUB socket, receiving side must be a SUB or XSUB. Subscriptions can be received as a message. Subscriptions start with a '1' byte. Unsubscriptions start with a '0' byte.- See Also:
-
XSUB
public static final int XSUBFlag to specify the receiving part of the PUB or XPUB socket. Allows- See Also:
-
STREAMER
public static final int STREAMERFlag to specify a STREAMER device.- See Also:
-
FORWARDER
public static final int FORWARDERFlag to specify a FORWARDER device.- See Also:
-
QUEUE
public static final int QUEUEFlag to specify a QUEUE device.- See Also:
-
UPSTREAM
Deprecated.- See Also:
-
DOWNSTREAM
Deprecated.- See Also:
-
EVENT_CONNECTED
public static final int EVENT_CONNECTEDEVENT_CONNECTED: connection established. The EVENT_CONNECTED event triggers when a connection has been established to a remote peer. This can happen either synchronous or asynchronous. Value is the FD of the newly connected socket.- See Also:
-
EVENT_CONNECT_DELAYED
public static final int EVENT_CONNECT_DELAYEDEVENT_CONNECT_DELAYED: synchronous connect failed, it's being polled. The EVENT_CONNECT_DELAYED event triggers when an immediate connection attempt is delayed and its completion is being polled for. Value has no meaning.- See Also:
-
EVENT_CONNECT_RETRIED
public static final int EVENT_CONNECT_RETRIEDEVENT_CONNECT_RETRIED: asynchronous connect / reconnection attempt. The EVENT_CONNECT_RETRIED event triggers when a connection attempt is being handled by reconnect timer. The reconnect interval's recomputed for each attempt. Value is the reconnect interval.- See Also:
-
EVENT_LISTENING
public static final int EVENT_LISTENINGEVENT_LISTENING: socket bound to an address, ready to accept connections. The EVENT_LISTENING event triggers when a socket's successfully bound to a an interface. Value is the FD of the newly bound socket.- See Also:
-
EVENT_BIND_FAILED
public static final int EVENT_BIND_FAILEDEVENT_BIND_FAILED: socket could not bind to an address. The EVENT_BIND_FAILED event triggers when a socket could not bind to a given interface. Value is the errno generated by the bind call.- See Also:
-
EVENT_ACCEPTED
public static final int EVENT_ACCEPTEDEVENT_ACCEPTED: connection accepted to bound interface. The EVENT_ACCEPTED event triggers when a connection from a remote peer has been established with a socket's listen address. Value is the FD of the accepted socket.- See Also:
-
EVENT_ACCEPT_FAILED
public static final int EVENT_ACCEPT_FAILEDEVENT_ACCEPT_FAILED: could not accept client connection. The EVENT_ACCEPT_FAILED event triggers when a connection attempt to a socket's bound address fails. Value is the errno generated by accept.- See Also:
-
EVENT_CLOSED
public static final int EVENT_CLOSEDEVENT_CLOSED: connection closed. The EVENT_CLOSED event triggers when a connection's underlying descriptor has been closed. Value is the former FD of the for the closed socket. FD has been closed already!- See Also:
-
EVENT_CLOSE_FAILED
public static final int EVENT_CLOSE_FAILEDEVENT_CLOSE_FAILED: connection couldn't be closed. The EVENT_CLOSE_FAILED event triggers when a descriptor could not be released back to the OS. Implementation note: ONLY FOR IPC SOCKETS. Value is the errno generated by unlink.- See Also:
-
EVENT_DISCONNECTED
public static final int EVENT_DISCONNECTEDEVENT_DISCONNECTED: broken session. The EVENT_DISCONNECTED event triggers when the stream engine (tcp and ipc specific) detects a corrupted / broken session. Value is the FD of the socket.- See Also:
-
EVENT_MONITOR_STOPPED
public static final int EVENT_MONITOR_STOPPEDEVENT_MONITOR_STOPPED: monitor has been stopped. The EVENT_MONITOR_STOPPED event triggers when the monitor for a socket is stopped.- See Also:
-
EVENT_ALL
public static final int EVENT_ALLEVENT_ALL: all events known by the java binding. The EVENT_ALL constant can be used to set up a monitor for all events known by the java binding. One could add more flags- See Also:
-
-
Constructor Details
-
ZMQ
public ZMQ()
-
-
Method Details
-
getMajorVersion
public static int getMajorVersion()- Returns:
- Major version number of the ZMQ library.
-
getMinorVersion
public static int getMinorVersion()- Returns:
- Major version number of the ZMQ library.
-
getPatchVersion
public static int getPatchVersion()- Returns:
- Major version number of the ZMQ library.
-
getFullVersion
public static int getFullVersion()- Returns:
- Full version number of the ZMQ library used for comparing versions.
-
makeVersion
public static int makeVersion(int major, int minor, int patch) - Parameters:
major- Version major component.minor- Version minor component.patch- Version patch component.- Returns:
- Comparible single int version number.
-
getVersionString
- Returns:
- String version number in the form major.minor.patch.
-
proxy
Starts the built-in 0MQ proxy in the current application thread. The proxy connects a frontend socket to a backend socket. Conceptually, data flows from frontend to backend. Depending on the socket types, replies may flow in the opposite direction. The direction is conceptual only; the proxy is fully symmetric and there is no technical difference between frontend and backend. Before calling ZMQ.proxy() you must set any socket options, and connect or bind both frontend and backend sockets. The two conventional proxy models are: ZMQ.proxy() runs in the current thread and returns only if/when the current context is closed.- Parameters:
frontend- ZMQ.Socketbackend- ZMQ.Socketcapture- If the capture socket is not NULL, the proxy shall send all messages, received on both frontend and backend, to the capture socket. The capture socket should be a ZMQ_PUB, ZMQ_DEALER, ZMQ_PUSH, or ZMQ_PAIR socket.- Since:
- 3.2.2
-
poll
Poll on polling items until timeout- Parameters:
items- polling itemstimeout- timeout in millisecond- Returns:
- number of events
-
poll
Poll on polling items until timeout- Parameters:
items- polling itemscount- active item counttimeout- timeout in millisecond- Returns:
- number of events
-
version_full
protected static int version_full() -
version_major
protected static int version_major() -
version_minor
protected static int version_minor() -
version_patch
protected static int version_patch() -
make_version
protected static int make_version(int major, int minor, int patch) -
ENOTSUP
protected static long ENOTSUP() -
EPROTONOSUPPORT
protected static long EPROTONOSUPPORT() -
ENOBUFS
protected static long ENOBUFS() -
ENETDOWN
protected static long ENETDOWN() -
EADDRINUSE
protected static long EADDRINUSE() -
EADDRNOTAVAIL
protected static long EADDRNOTAVAIL() -
ECONNREFUSED
protected static long ECONNREFUSED() -
EINPROGRESS
protected static long EINPROGRESS() -
EHOSTUNREACH
protected static long EHOSTUNREACH() -
EMTHREAD
protected static long EMTHREAD() -
EFSM
protected static long EFSM() -
ENOCOMPATPROTO
protected static long ENOCOMPATPROTO() -
ETERM
protected static long ETERM() -
ENOTSOCK
protected static long ENOTSOCK() -
context
Create a new Context.- Parameters:
ioThreads- Number of threads to use, usually 1 is sufficient for most use cases.- Returns:
- the Context
-
ROUTER