diff options
author | Kim van der Riet <kpvdr@apache.org> | 2013-02-28 16:14:30 +0000 |
---|---|---|
committer | Kim van der Riet <kpvdr@apache.org> | 2013-02-28 16:14:30 +0000 |
commit | 9c73ef7a5ac10acd6a50d5d52bd721fc2faa5919 (patch) | |
tree | 2a890e1df09e5b896a9b4168a7b22648f559a1f2 /cpp/src/qpid/ha/ReplicatingSubscription.h | |
parent | 172d9b2a16cfb817bbe632d050acba7e31401cd2 (diff) | |
download | qpid-python-9c73ef7a5ac10acd6a50d5d52bd721fc2faa5919.tar.gz |
Update from trunk r1375509 through r1450773asyncstore
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/asyncstore@1451244 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/ha/ReplicatingSubscription.h')
-rw-r--r-- | cpp/src/qpid/ha/ReplicatingSubscription.h | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/cpp/src/qpid/ha/ReplicatingSubscription.h b/cpp/src/qpid/ha/ReplicatingSubscription.h index 8a2984846e..7fcb4ccf13 100644 --- a/cpp/src/qpid/ha/ReplicatingSubscription.h +++ b/cpp/src/qpid/ha/ReplicatingSubscription.h @@ -61,10 +61,14 @@ class QueueGuard; * * Lifecycle: broker::Queue holds shared_ptrs to this as a consumer. * + * Lock Hierarchy: ReplicatingSubscription MUS NOT call QueueGuard with it's lock held + * QueueGuard MAY call ReplicatingSubscription with it's lock held. */ class ReplicatingSubscription : public broker::SemanticState::ConsumerImpl { public: + typedef broker::SemanticState::ConsumerImpl ConsumerImpl; + struct Factory : public broker::ConsumerFactory { boost::shared_ptr<broker::SemanticState::ConsumerImpl> create( broker::SemanticState* parent, @@ -80,17 +84,6 @@ class ReplicatingSubscription : public broker::SemanticState::ConsumerImpl static const std::string QPID_FRONT; static const std::string QPID_BROKER_INFO; - // TODO aconway 2012-05-23: these don't belong on ReplicatingSubscription - /** Get position of front message on queue. - *@return false if queue is empty. - */ - static bool getFront(broker::Queue&, framing::SequenceNumber& result); - /** Get next message after from in queue. - *@return false if none found. - */ - static bool getNext(broker::Queue&, framing::SequenceNumber from, - framing::SequenceNumber& result); - ReplicatingSubscription(broker::SemanticState* parent, const std::string& name, boost::shared_ptr<broker::Queue> , bool ack, bool acquire, bool exclusive, const std::string& tag, @@ -114,6 +107,8 @@ class ReplicatingSubscription : public broker::SemanticState::ConsumerImpl // Hide the "queue deleted" error for a ReplicatingSubscription when a // queue is deleted, this is normal and not an error. bool hideDeletedError() { return true; } + // Not counted for auto deletion and immediate message purposes. + bool isCounted() { return false; } /** Initialization that must be done separately from construction * because it requires a shared_ptr to this to exist. |