From 34f7486fef80b570e85b4bc7bfde01c06540753f Mon Sep 17 00:00:00 2001 From: Joshua Foster Date: Wed, 4 Apr 2012 09:00:55 -0400 Subject: [PATCH] lowered version requirement for the SNDTIMEO and RCVTIMEO options libzmq released 2.2.0 with the SNDTIMEO and RCVTIMEO socket options --- .gitignore | 3 +++ src/Socket.cpp | 18 ++++++++++++++---- src/org/zeromq/ZMQ.java | 20 ++++++++++---------- 3 files changed, 27 insertions(+), 14 deletions(-) diff --git a/.gitignore b/.gitignore index 2f7bcb39..c78c7903 100644 --- a/.gitignore +++ b/.gitignore @@ -51,3 +51,6 @@ debian/jzmq.substvars debian/jzmq/ debian/tmp/ .DS_Store +*.iml +config/ +build/ diff --git a/src/Socket.cpp b/src/Socket.cpp index 8d765f2a..c2281291 100755 --- a/src/Socket.cpp +++ b/src/Socket.cpp @@ -106,13 +106,15 @@ JNIEXPORT jlong JNICALL Java_org_zeromq_ZMQ_00024Socket_getLongSockopt (JNIEnv * case ZMQ_SNDHWM: case ZMQ_RCVHWM: case ZMQ_MULTICAST_HOPS: - case ZMQ_RCVTIMEO: - case ZMQ_SNDTIMEO: #else case ZMQ_HWM: case ZMQ_SWAP: case ZMQ_MCAST_LOOP: #endif +#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(2,2,0) + case ZMQ_RCVTIMEO: + case ZMQ_SNDTIMEO: +#endif #if ZMQ_VERSION >= ZMQ_MAKE_VERSION(2,1,10) case ZMQ_RECONNECT_IVL: case ZMQ_RECONNECT_IVL_MAX: @@ -207,13 +209,15 @@ JNIEXPORT void JNICALL Java_org_zeromq_ZMQ_00024Socket_setLongSockopt (JNIEnv *e case ZMQ_SNDHWM: case ZMQ_RCVHWM: case ZMQ_MULTICAST_HOPS: - case ZMQ_RCVTIMEO: - case ZMQ_SNDTIMEO: #else case ZMQ_HWM: case ZMQ_SWAP: case ZMQ_MCAST_LOOP: #endif +#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(2,2,0) + case ZMQ_RCVTIMEO: + case ZMQ_SNDTIMEO: +#endif #if ZMQ_VERSION >= ZMQ_MAKE_VERSION(2,1,10) case ZMQ_RECONNECT_IVL: case ZMQ_RECONNECT_IVL_MAX: @@ -235,10 +239,16 @@ JNIEXPORT void JNICALL Java_org_zeromq_ZMQ_00024Socket_setLongSockopt (JNIEnv *e #if ZMQ_VERSION >= ZMQ_MAKE_VERSION(2,1,0) if( (option == ZMQ_LINGER) +#endif #if ZMQ_VERSION >= ZMQ_MAKE_VERSION(2,1,10) || (option == ZMQ_RECONNECT_IVL) || (option == ZMQ_RECONNECT_IVL_MAX) #endif +#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(2,2,0) + || (option == ZMQ_SNDTIMEO) + || (option == ZMQ_RCVTIMEO) +#endif +#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(2,1,0) ) { int ival = (int) optval; size_t optvallen = sizeof(ival); diff --git a/src/org/zeromq/ZMQ.java b/src/org/zeromq/ZMQ.java index d4999cfc..5bc51d79 100644 --- a/src/org/zeromq/ZMQ.java +++ b/src/org/zeromq/ZMQ.java @@ -582,8 +582,8 @@ public long getMulticastHops () { * * @param timeout */ - public void setReceiveTimeOut (long timeout) { - if (ZMQ.version_full() < ZMQ.make_version(3, 0, 0)) + public void setReceiveTimeOut (int timeout) { + if (ZMQ.version_full() < ZMQ.make_version(2, 2, 0)) return; setLongSockopt (RCVTIMEO, timeout); @@ -594,10 +594,10 @@ public void setReceiveTimeOut (long timeout) { * * @return the Receive Timeout */ - public long getReceiveTimeOut () { - if (ZMQ.version_full() < ZMQ.make_version(3, 0, 0)) + public int getReceiveTimeOut () { + if (ZMQ.version_full() < ZMQ.make_version(2, 2, 0)) return -1; - return getLongSockopt (RCVTIMEO); + return (int) getLongSockopt (RCVTIMEO); } /** @@ -609,8 +609,8 @@ public long getReceiveTimeOut () { * * @param timeout */ - public void setSendTimeOut (long timeout) { - if (ZMQ.version_full() < ZMQ.make_version(3, 0, 0)) + public void setSendTimeOut (int timeout) { + if (ZMQ.version_full() < ZMQ.make_version(2, 2, 0)) return; setLongSockopt (SNDTIMEO, timeout); @@ -621,10 +621,10 @@ public void setSendTimeOut (long timeout) { * * @return the Send Timeout. */ - public long getSendTimeOut () { - if (ZMQ.version_full() < ZMQ.make_version(3, 0, 0)) + public int getSendTimeOut () { + if (ZMQ.version_full() < ZMQ.make_version(2, 2, 0)) return -1; - return getLongSockopt (SNDTIMEO); + return (int) getLongSockopt (SNDTIMEO); } /**