diff options
Diffstat (limited to 'cpp/src/tests/storePerftools/asyncPerf/SimpleTransactionContext.h')
-rw-r--r-- | cpp/src/tests/storePerftools/asyncPerf/SimpleTransactionContext.h | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/cpp/src/tests/storePerftools/asyncPerf/SimpleTransactionContext.h b/cpp/src/tests/storePerftools/asyncPerf/SimpleTransactionContext.h deleted file mode 100644 index 49fee9c720..0000000000 --- a/cpp/src/tests/storePerftools/asyncPerf/SimpleTransactionContext.h +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -/** - * \file SimpleTransactionContext.h - */ - -#ifndef tests_storePerftools_asyncPerf_SimpleTransactionContext_h_ -#define tests_storePerftools_asyncPerf_SimpleTransactionContext_h_ - -#include "qpid/broker/TransactionalStore.h" // qpid::broker::TransactionContext -#include "qpid/broker/TxnHandle.h" -#include "qpid/sys/Mutex.h" - -#include <deque> - -namespace qpid { -namespace asyncStore { -class AsyncStoreImpl; -} -namespace broker { -class AsyncResult; -class BrokerAsyncContext; -}} - -namespace tests { -namespace storePerftools { -namespace asyncPerf { - -class QueuedMessage; -class TransactionAsyncContext; - -class SimpleTransactionContext : public qpid::broker::TransactionContext -{ -public: - SimpleTransactionContext(const std::string& xid = std::string()); - SimpleTransactionContext(qpid::asyncStore::AsyncStoreImpl* store, - const std::string& xid = std::string()); - virtual ~SimpleTransactionContext(); -// static void handleAsyncResult(const qpid::broker::AsyncResult* res, -// qpid::broker::BrokerAsyncContext* bc); - - const qpid::broker::TxnHandle& getHandle() const; - qpid::broker::TxnHandle& getHandle(); - bool is2pc() const; - const std::string& getXid() const; - void addEnqueuedMsg(QueuedMessage* qm); - - void prepare(); - void abort(); - void commit(); - -private: - std::string m_xid; - bool m_tpcFlag; - qpid::asyncStore::AsyncStoreImpl* m_store; - qpid::broker::TxnHandle m_txnHandle; - bool m_prepared; - std::deque<QueuedMessage*> m_enqueuedMsgs; - qpid::sys::Mutex m_enqueuedMsgsMutex; - - void localPrepare(); - void setLocalXid(); - - // --- Ascnc op completions (called through handleAsyncResult) --- - void prepareComplete(const TransactionAsyncContext* tc); - void abortComplete(const TransactionAsyncContext* tc); - void commitComplete(const TransactionAsyncContext* tc); - -}; - -}}} // namespace tests:storePerftools::asyncPerf - -#endif // tests_storePerftools_asyncPerf_SimpleTransactionContext_h_ |