From 01647c7581b2a9549555c2c2f306c8b072b571a2 Mon Sep 17 00:00:00 2001 From: Gordon Sim Date: Mon, 1 Oct 2007 10:24:25 +0000 Subject: Make ExecutionHandler threadsafe for calls that can be made by application threads. Added generic listener for completion changes. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@580915 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/client/ExecutionHandler.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'cpp/src/qpid/client/ExecutionHandler.h') diff --git a/cpp/src/qpid/client/ExecutionHandler.h b/cpp/src/qpid/client/ExecutionHandler.h index 427c39b61f..7205983cf7 100644 --- a/cpp/src/qpid/client/ExecutionHandler.h +++ b/cpp/src/qpid/client/ExecutionHandler.h @@ -27,6 +27,7 @@ #include "qpid/framing/FrameSet.h" #include "qpid/framing/MethodContent.h" #include "qpid/framing/SequenceNumber.h" +#include "qpid/sys/Mutex.h" #include "ChainableFrameHandler.h" #include "CompletionTracker.h" #include "Correlator.h" @@ -49,8 +50,10 @@ class ExecutionHandler : Correlator correlation; CompletionTracker completion; Demux demux; + sys::Mutex lock; framing::ProtocolVersion version; uint64_t maxFrameSize; + boost::function completionListener; void complete(uint32_t mark, const framing::SequenceNumberSet& range); void flush(); @@ -90,6 +93,8 @@ public: Correlator& getCorrelator() { return correlation; } CompletionTracker& getCompletionTracker() { return completion; } Demux& getDemux() { return demux; } + + void setCompletionListener(boost::function); }; }} -- cgit v1.2.1