From 2e437e1569009d8e8ed3ed896d751994e2e85d74 Mon Sep 17 00:00:00 2001 From: Kim van der Riet Date: Fri, 20 Jul 2012 12:55:20 +0000 Subject: QPID-3858: WIP: Created many async operation classes for each op instead of a single class with op codes. git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/asyncstore@1363759 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/asyncStore/AsyncStoreImpl.cpp | 70 ++++++++++++------------------ 1 file changed, 27 insertions(+), 43 deletions(-) (limited to 'cpp/src/qpid/asyncStore/AsyncStoreImpl.cpp') diff --git a/cpp/src/qpid/asyncStore/AsyncStoreImpl.cpp b/cpp/src/qpid/asyncStore/AsyncStoreImpl.cpp index 6b5c3ac582..e8379b95e2 100644 --- a/cpp/src/qpid/asyncStore/AsyncStoreImpl.cpp +++ b/cpp/src/qpid/asyncStore/AsyncStoreImpl.cpp @@ -23,6 +23,7 @@ #include "AsyncStoreImpl.h" +#include "AsyncOperation.h" #include "ConfigHandleImpl.h" #include "EnqueueHandleImpl.h" #include "EventHandleImpl.h" @@ -37,6 +38,8 @@ #include "qpid/broker/QueueHandle.h" #include "qpid/broker/TxnHandle.h" +//#include + namespace qpid { namespace asyncStore { @@ -94,9 +97,8 @@ void AsyncStoreImpl::submitPrepare(qpid::broker::TxnHandle& txnHandle, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::TXN_PREPARE, - dynamic_cast(&txnHandle), - brokerCtxt)); + boost::shared_ptr op(new AsyncOpTxnPrepare(txnHandle, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } @@ -104,9 +106,8 @@ void AsyncStoreImpl::submitCommit(qpid::broker::TxnHandle& txnHandle, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::TXN_COMMIT, - dynamic_cast(&txnHandle), - brokerCtxt)); + boost::shared_ptr op(new AsyncOpTxnCommit(txnHandle, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } @@ -114,9 +115,8 @@ void AsyncStoreImpl::submitAbort(qpid::broker::TxnHandle& txnHandle, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::TXN_ABORT, - dynamic_cast(&txnHandle), - brokerCtxt)); + boost::shared_ptr op(new AsyncOpTxnAbort(txnHandle, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } @@ -161,10 +161,8 @@ AsyncStoreImpl::submitCreate(qpid::broker::ConfigHandle& cfgHandle, const qpid::broker::DataSource* const dataSrc, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::CONFIG_CREATE, - dynamic_cast(&cfgHandle), - dataSrc, - brokerCtxt)); + boost::shared_ptr op(new AsyncOpConfigCreate(cfgHandle, dataSrc, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } @@ -172,9 +170,8 @@ void AsyncStoreImpl::submitDestroy(qpid::broker::ConfigHandle& cfgHandle, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::CONFIG_DESTROY, - dynamic_cast(&cfgHandle), - brokerCtxt)); + boost::shared_ptr op(new AsyncOpConfigDestroy(cfgHandle, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } @@ -183,10 +180,8 @@ AsyncStoreImpl::submitCreate(qpid::broker::QueueHandle& queueHandle, const qpid::broker::DataSource* const dataSrc, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::QUEUE_CREATE, - dynamic_cast(&queueHandle), - dataSrc, - brokerCtxt)); + boost::shared_ptr op(new AsyncOpQueueCreate(queueHandle, dataSrc, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } @@ -194,9 +189,8 @@ void AsyncStoreImpl::submitDestroy(qpid::broker::QueueHandle& queueHandle, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::QUEUE_DESTROY, - dynamic_cast(&queueHandle), - brokerCtxt)); + boost::shared_ptr op(new AsyncOpQueueDestroy(queueHandle, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } @@ -204,9 +198,8 @@ void AsyncStoreImpl::submitFlush(qpid::broker::QueueHandle& queueHandle, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::QUEUE_FLUSH, - dynamic_cast(&queueHandle), - brokerCtxt)); + boost::shared_ptr op(new AsyncOpQueueFlush(queueHandle, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } @@ -216,11 +209,8 @@ AsyncStoreImpl::submitCreate(qpid::broker::EventHandle& eventHandle, qpid::broker::TxnHandle& txnHandle, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::EVENT_CREATE, - dynamic_cast(&eventHandle), - dataSrc, - &txnHandle, - brokerCtxt)); + boost::shared_ptr op(new AsyncOpEventCreate(eventHandle, dataSrc, txnHandle, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } @@ -229,10 +219,8 @@ AsyncStoreImpl::submitDestroy(qpid::broker::EventHandle& eventHandle, qpid::broker::TxnHandle& txnHandle, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::EVENT_DESTROY, - dynamic_cast(&eventHandle), - &txnHandle, - brokerCtxt)); + boost::shared_ptr op(new AsyncOpEventDestroy(eventHandle, txnHandle, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } @@ -241,10 +229,8 @@ AsyncStoreImpl::submitEnqueue(qpid::broker::EnqueueHandle& enqHandle, qpid::broker::TxnHandle& txnHandle, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::MSG_ENQUEUE, - dynamic_cast(&enqHandle), - &txnHandle, - brokerCtxt)); + boost::shared_ptr op(new AsyncOpMsgEnqueue(enqHandle, txnHandle, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } @@ -253,10 +239,8 @@ AsyncStoreImpl::submitDequeue(qpid::broker::EnqueueHandle& enqHandle, qpid::broker::TxnHandle& txnHandle, boost::shared_ptr brokerCtxt) { - boost::shared_ptr op(new AsyncOperation(AsyncOperation::MSG_DEQUEUE, - dynamic_cast(&enqHandle), - &txnHandle, - brokerCtxt)); + boost::shared_ptr op(new AsyncOpMsgDequeue(enqHandle, txnHandle, brokerCtxt)); + brokerCtxt->setOpStr(op->getOpStr()); m_operations.submit(op); } -- cgit v1.2.1