summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2012-01-19 23:07:07 +0000
committerAlan Conway <aconway@apache.org>2012-01-19 23:07:07 +0000
commit20216bef51bb1c1b7c005d8adaddb4d0d281a6ef (patch)
tree2f1ee78a826912345e87ab0a1985aa8ecaa90e22
parent3ea1040ff34f88ae7c762580744be318b5049572 (diff)
downloadqpid-python-20216bef51bb1c1b7c005d8adaddb4d0d281a6ef.tar.gz
QPID-3603: Independent isDelayedCompletion for ReplicatingSubscription::DelegatingConsumer
The event messages sent to this consumer do not have delayed completion. git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/qpid-3603-2@1233671 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/cpp/src/qpid/broker/Consumer.h1
-rw-r--r--qpid/cpp/src/qpid/ha/ReplicatingSubscription.h7
2 files changed, 5 insertions, 3 deletions
diff --git a/qpid/cpp/src/qpid/broker/Consumer.h b/qpid/cpp/src/qpid/broker/Consumer.h
index 83f744c0fc..d13d8075a9 100644
--- a/qpid/cpp/src/qpid/broker/Consumer.h
+++ b/qpid/cpp/src/qpid/broker/Consumer.h
@@ -61,6 +61,7 @@ class Consumer {
virtual bool accept(boost::intrusive_ptr<Message>) { return true; }
virtual OwnershipToken* getSession() = 0;
virtual void cancel() = 0;
+ virtual bool isDelayedCompletion() const { return false; }
protected:
framing::SequenceNumber position;
diff --git a/qpid/cpp/src/qpid/ha/ReplicatingSubscription.h b/qpid/cpp/src/qpid/ha/ReplicatingSubscription.h
index 31246507c9..688d2b7726 100644
--- a/qpid/cpp/src/qpid/ha/ReplicatingSubscription.h
+++ b/qpid/cpp/src/qpid/ha/ReplicatingSubscription.h
@@ -104,10 +104,11 @@ class ReplicatingSubscription : public broker::SemanticState::ConsumerImpl,
~DelegatingConsumer();
bool deliver(broker::QueuedMessage& msg);
void notify();
- bool filter(boost::intrusive_ptr<Message>);
- bool accept(boost::intrusive_ptr<Message>);
+ bool filter(boost::intrusive_ptr<broker::Message>);
+ bool accept(boost::intrusive_ptr<broker::Message>);
void cancel();
- OwnershipToken* getSession();
+ bool isDelayedCompletion() const { return false; }
+ broker::OwnershipToken* getSession();
private:
ReplicatingSubscription& delegate;
};