aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared/Database/Transaction.h
diff options
context:
space:
mode:
authorCarbenium <carbenium@outlook.com>2015-08-21 17:54:47 +0200
committerCarbenium <carbenium@outlook.com>2015-08-21 17:54:47 +0200
commite4c97f66529ecfc2e9b3f675e5ebecd199c1d4dc (patch)
treedc7332aaa75ad7c10d2bff9c35e5032b46eb3633 /src/server/shared/Database/Transaction.h
parente9feddf862fd84eb106dd1d305e4a148ad1662bd (diff)
parent1d2aafd39bcb79a67357d198ce9b2345642fdd39 (diff)
Merge pull request #15312 from StormBytePP/6.x_merge_common_and_move_database_out_of_shared
Core/Build: Merge common library and move database out of shared
Diffstat (limited to 'src/server/shared/Database/Transaction.h')
-rw-r--r--src/server/shared/Database/Transaction.h77
1 files changed, 0 insertions, 77 deletions
diff --git a/src/server/shared/Database/Transaction.h b/src/server/shared/Database/Transaction.h
deleted file mode 100644
index 4fbbe1ed45b..00000000000
--- a/src/server/shared/Database/Transaction.h
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright (C) 2008-2015 TrinityCore <http://www.trinitycore.org/>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation; either version 2 of the License, or (at your
- * option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef _TRANSACTION_H
-#define _TRANSACTION_H
-
-#include "SQLOperation.h"
-#include "StringFormat.h"
-
-//- Forward declare (don't include header to prevent circular includes)
-class PreparedStatement;
-
-/*! Transactions, high level class. */
-class Transaction
-{
- friend class TransactionTask;
- friend class MySQLConnection;
-
- template <typename T>
- friend class DatabaseWorkerPool;
-
- public:
- Transaction() : _cleanedUp(false) { }
- ~Transaction() { Cleanup(); }
-
- void Append(PreparedStatement* statement);
- void Append(const char* sql);
- template<typename Format, typename... Args>
- void PAppend(Format&& sql, Args&&... args)
- {
- Append(Trinity::StringFormat(std::forward<Format>(sql), std::forward<Args>(args)...).c_str());
- }
-
- size_t GetSize() const { return m_queries.size(); }
-
- protected:
- void Cleanup();
- std::list<SQLElementData> m_queries;
-
- private:
- bool _cleanedUp;
-
-};
-typedef std::shared_ptr<Transaction> SQLTransaction;
-
-/*! Low level class*/
-class TransactionTask : public SQLOperation
-{
- template <class T> friend class DatabaseWorkerPool;
- friend class DatabaseWorker;
-
- public:
- TransactionTask(SQLTransaction trans) : m_trans(trans) { }
- ~TransactionTask() { }
-
- protected:
- bool Execute() override;
-
- SQLTransaction m_trans;
- static std::mutex _deadlockLock;
-};
-
-#endif