Author: gsim
Date: Fri Jan 4 08:49:29 2008
New Revision: 608915
URL: http://svn.apache.org/viewvc?rev=608915&view=rev
Log:
Provide method to test for empty local queue.
Modified:
incubator/qpid/trunk/qpid/cpp/src/qpid/client/LocalQueue.cpp
incubator/qpid/trunk/qpid/cpp/src/qpid/client/LocalQueue.h
incubator/qpid/trunk/qpid/cpp/src/qpid/sys/BlockingQueue.h
Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/client/LocalQueue.cpp
URL:
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/client/LocalQueue.cpp?rev=608915&r1=608914&r2=608915&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/client/LocalQueue.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/client/LocalQueue.cpp Fri Jan 4
08:49:29 2008
@@ -47,4 +47,11 @@
void LocalQueue::setAckPolicy(AckPolicy a) { autoAck=a; }
+bool LocalQueue::empty()
+{
+ if (!queue)
+ throw ClosedException();
+ return queue->isEmpty();
+}
+
}} // namespace qpid::client
Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/client/LocalQueue.h
URL:
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/client/LocalQueue.h?rev=608915&r1=608914&r2=608915&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/client/LocalQueue.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/client/LocalQueue.h Fri Jan 4
08:49:29 2008
@@ -42,6 +42,7 @@
[EMAIL PROTECTED] ClosedException if subscription has been closed.
*/
Message pop();
+ bool empty();
void setAckPolicy(AckPolicy);
Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/sys/BlockingQueue.h
URL:
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/sys/BlockingQueue.h?rev=608915&r1=608914&r2=608915&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/sys/BlockingQueue.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/sys/BlockingQueue.h Fri Jan 4
08:49:29 2008
@@ -99,7 +99,12 @@
Waitable::ScopedLock l(lock);
return closed;
}
-
+
+ bool isEmpty() const {
+ Waitable::ScopedLock l(lock);
+ return queue.empty();
+ }
+
private:
void queueNotify(size_t ignore) {