diff options
| author | Gordon Sim <gsim@apache.org> | 2007-10-01 10:24:25 +0000 |
|---|---|---|
| committer | Gordon Sim <gsim@apache.org> | 2007-10-01 10:24:25 +0000 |
| commit | 01647c7581b2a9549555c2c2f306c8b072b571a2 (patch) | |
| tree | bfe73f8ddb1b606f9f7b5f89db7ae1e791913c2d /cpp/src/qpid/client/ExecutionHandler.h | |
| parent | d7bc99dfca05ce5eb8029282c7d09776af2a0f2c (diff) | |
| download | qpid-python-01647c7581b2a9549555c2c2f306c8b072b571a2.tar.gz | |
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
Diffstat (limited to 'cpp/src/qpid/client/ExecutionHandler.h')
| -rw-r--r-- | cpp/src/qpid/client/ExecutionHandler.h | 5 |
1 files changed, 5 insertions, 0 deletions
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<void()> 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<void()>); }; }} |
