summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster/UpdateClient.h
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2011-08-25 20:41:28 +0000
committerAlan Conway <aconway@apache.org>2011-08-25 20:41:28 +0000
commit2fdd2cc2ade41e213ae35818532574bbf40f4a00 (patch)
tree42fb45022ea08fee157abf50713b452acf5eda5d /cpp/src/qpid/cluster/UpdateClient.h
parent7f99badd1c330b3a6032b15a13aca1cde81274d3 (diff)
downloadqpid-python-2fdd2cc2ade41e213ae35818532574bbf40f4a00.tar.gz
QPID-3384: Enable DTX transactions in a cluster.
- Replicate DTX state to new members joining. - Use cluster timer for DTX timeouts. - Incidental: quote nulls in qpid::Msg messages (XIDs often have null characters) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1161742 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/cluster/UpdateClient.h')
-rw-r--r--cpp/src/qpid/cluster/UpdateClient.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/cpp/src/qpid/cluster/UpdateClient.h b/cpp/src/qpid/cluster/UpdateClient.h
index 21bf6024e0..83d4cfac81 100644
--- a/cpp/src/qpid/cluster/UpdateClient.h
+++ b/cpp/src/qpid/cluster/UpdateClient.h
@@ -52,7 +52,7 @@ class Decoder;
class Link;
class Bridge;
class QueueObserver;
-
+class DtxBuffer;
} // namespace broker
namespace cluster {
@@ -88,7 +88,7 @@ class UpdateClient : public sys::Runnable {
void update();
void run(); // Will delete this when finished.
- void updateUnacked(const broker::DeliveryRecord&);
+ void updateUnacked(const broker::DeliveryRecord&, client::AsyncSession&);
private:
void updateQueue(client::AsyncSession&, const boost::shared_ptr<broker::Queue>&);
@@ -100,7 +100,7 @@ class UpdateClient : public sys::Runnable {
void updateBinding(client::AsyncSession&, const std::string& queue, const broker::QueueBinding& binding);
void updateConnection(const boost::intrusive_ptr<Connection>& connection);
void updateSession(broker::SessionHandler& s);
- void updateTxState(broker::SemanticState& s);
+ void updateTransactionState(broker::SemanticState& s);
void updateOutputTask(const sys::OutputTask* task);
void updateConsumer(const broker::SemanticState::ConsumerImpl::shared_ptr&);
void updateQueueListeners(const boost::shared_ptr<broker::Queue>&);
@@ -112,6 +112,9 @@ class UpdateClient : public sys::Runnable {
void updateBridge(const boost::shared_ptr<broker::Bridge>&);
void updateQueueObservers(const boost::shared_ptr<broker::Queue>&);
void updateObserver(const boost::shared_ptr<broker::Queue>&, boost::shared_ptr<broker::QueueObserver>);
+ void updateDtxManager();
+ void updateDtxBuffer(const boost::shared_ptr<broker::DtxBuffer>& );
+ void updateDtxWorkRecord(const broker::DtxWorkRecord&);
Numbering<broker::SemanticState::ConsumerImpl*> consumerNumbering;