From c2a8f493b4d87c71dc04a432e686e2d9151a393f Mon Sep 17 00:00:00 2001 From: Gordon Sim Date: Tue, 7 Nov 2006 11:26:50 +0000 Subject: Made passing of transaction context in message store explicit (to avoid thread local storage in case this doesn't fit with new io design). git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@472067 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/broker/TxPublish.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'cpp/src/qpid/broker/TxPublish.cpp') diff --git a/cpp/src/qpid/broker/TxPublish.cpp b/cpp/src/qpid/broker/TxPublish.cpp index 93250dbb20..461ddfe052 100644 --- a/cpp/src/qpid/broker/TxPublish.cpp +++ b/cpp/src/qpid/broker/TxPublish.cpp @@ -21,9 +21,9 @@ using namespace qpid::broker; TxPublish::TxPublish(Message::shared_ptr _msg) : msg(_msg) {} -bool TxPublish::prepare() throw(){ +bool TxPublish::prepare(TransactionContext* ctxt) throw(){ try{ - for_each(queues.begin(), queues.end(), Prepare(msg, 0)); + for_each(queues.begin(), queues.end(), Prepare(ctxt, msg, 0)); return true; }catch(...){ std::cout << "TxPublish::prepare() - Failed to prepare" << std::endl; @@ -42,10 +42,11 @@ void TxPublish::deliverTo(Queue::shared_ptr& queue){ queues.push_back(queue); } -TxPublish::Prepare::Prepare(Message::shared_ptr& _msg, const string* const _xid) : msg(_msg), xid(_xid){} +TxPublish::Prepare::Prepare(TransactionContext* _ctxt, Message::shared_ptr& _msg, const string* const _xid) + : ctxt(_ctxt), msg(_msg), xid(_xid){} void TxPublish::Prepare::operator()(Queue::shared_ptr& queue){ - queue->enqueue(msg, xid); + queue->enqueue(ctxt, msg, xid); } TxPublish::Commit::Commit(Message::shared_ptr& _msg) : msg(_msg){} -- cgit v1.2.1