diff options
Diffstat (limited to 'cpp')
-rw-r--r-- | cpp/src/qpid/broker/BrokerQueue.cpp | 4 | ||||
-rw-r--r-- | cpp/src/qpid/broker/RecoverableQueue.h | 3 | ||||
-rw-r--r-- | cpp/src/qpid/broker/RecoveryManagerImpl.cpp | 14 |
3 files changed, 16 insertions, 5 deletions
diff --git a/cpp/src/qpid/broker/BrokerQueue.cpp b/cpp/src/qpid/broker/BrokerQueue.cpp index e41c54b52c..74ba4f24ed 100644 --- a/cpp/src/qpid/broker/BrokerQueue.cpp +++ b/cpp/src/qpid/broker/BrokerQueue.cpp @@ -255,9 +255,7 @@ QueuedMessage Queue::dequeue(){ QueuedMessage msg; if(!messages.empty()){ msg = messages.front(); - if (msg.payload->isEnqueueComplete()){ - pop(); - } + pop(); } return msg; } diff --git a/cpp/src/qpid/broker/RecoverableQueue.h b/cpp/src/qpid/broker/RecoverableQueue.h index 578cc09e04..b32bae7f07 100644 --- a/cpp/src/qpid/broker/RecoverableQueue.h +++ b/cpp/src/qpid/broker/RecoverableQueue.h @@ -40,6 +40,7 @@ public: typedef boost::shared_ptr<RecoverableQueue> shared_ptr; virtual void setPersistenceId(uint64_t id) = 0; + virtual uint64_t getPersistenceId() const = 0; /** * Used during recovery to add stored messages back to the queue */ @@ -48,7 +49,7 @@ public: virtual const std::string& getName() const = 0; virtual void setExternalQueueStore(ExternalQueueStore* inst) = 0; - + virtual ExternalQueueStore* getExternalQueueStore() const = 0; }; diff --git a/cpp/src/qpid/broker/RecoveryManagerImpl.cpp b/cpp/src/qpid/broker/RecoveryManagerImpl.cpp index 51fc99fa3e..45b7c588b6 100644 --- a/cpp/src/qpid/broker/RecoveryManagerImpl.cpp +++ b/cpp/src/qpid/broker/RecoveryManagerImpl.cpp @@ -61,9 +61,11 @@ class RecoverableQueueImpl : public RecoverableQueue public: RecoverableQueueImpl(Queue::shared_ptr& _queue) : queue(_queue) {} ~RecoverableQueueImpl() {}; - void setPersistenceId(uint64_t id); + void setPersistenceId(uint64_t id); + uint64_t getPersistenceId() const; const std::string& getName() const; void setExternalQueueStore(ExternalQueueStore* inst); + ExternalQueueStore* getExternalQueueStore() const; void recover(RecoverableMessage::shared_ptr msg); void enqueue(DtxBuffer::shared_ptr buffer, RecoverableMessage::shared_ptr msg); void dequeue(DtxBuffer::shared_ptr buffer, RecoverableMessage::shared_ptr msg); @@ -156,6 +158,11 @@ void RecoverableQueueImpl::setPersistenceId(uint64_t id) { queue->setPersistenceId(id); } + +uint64_t RecoverableQueueImpl::getPersistenceId() const +{ + return queue->getPersistenceId(); +} const std::string& RecoverableQueueImpl::getName() const { @@ -167,6 +174,11 @@ void RecoverableQueueImpl::setExternalQueueStore(ExternalQueueStore* inst) queue->setExternalQueueStore(inst); } +ExternalQueueStore* RecoverableQueueImpl::getExternalQueueStore() const +{ + return queue->getExternalQueueStore(); +} + void RecoverableExchangeImpl::setPersistenceId(uint64_t id) { exchange->setPersistenceId(id); |