summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/BrokerQueue.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid/broker/BrokerQueue.cpp')
-rw-r--r--cpp/src/qpid/broker/BrokerQueue.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/cpp/src/qpid/broker/BrokerQueue.cpp b/cpp/src/qpid/broker/BrokerQueue.cpp
index 3ae2ce8de3..ea092bb33b 100644
--- a/cpp/src/qpid/broker/BrokerQueue.cpp
+++ b/cpp/src/qpid/broker/BrokerQueue.cpp
@@ -223,9 +223,16 @@ void Queue::push(Message::shared_ptr& msg){
}
}
+/** function only provided for unit tests, or code not in critical message path */
uint32_t Queue::getMessageCount() const{
Mutex::ScopedLock locker(messageLock);
- return messages.size();
+
+ uint32_t count =0;
+ for ( Messages::const_iterator i = messages.begin(); i != messages.end(); ++i ) {
+ if ( (*i)->isEnqueueComplete() ) count ++;
+ }
+
+ return count;
}
uint32_t Queue::getConsumerCount() const{