From d958bfd0f32bfe798809b72c1b51c990edfe141c Mon Sep 17 00:00:00 2001 From: Shauren Date: Fri, 15 Dec 2023 12:06:59 +0100 Subject: Core/Database: Replace DatabaseWorker with asio io_context --- src/server/database/Database/Transaction.h | 33 +++++++----------------------- 1 file changed, 7 insertions(+), 26 deletions(-) (limited to 'src/server/database/Database/Transaction.h') diff --git a/src/server/database/Database/Transaction.h b/src/server/database/Database/Transaction.h index ab6ef73e6af..5fc81bd05c9 100644 --- a/src/server/database/Database/Transaction.h +++ b/src/server/database/Database/Transaction.h @@ -26,6 +26,8 @@ #include #include +class MySQLConnection; + /*! Transactions, high level class. */ class TC_DATABASE_API TransactionBase { @@ -69,36 +71,15 @@ public: }; /*! Low level class*/ -class TC_DATABASE_API TransactionTask : public SQLOperation -{ - template friend class DatabaseWorkerPool; - friend class DatabaseWorker; - friend class TransactionCallback; - - public: - TransactionTask(std::shared_ptr trans) : m_trans(trans) { } - ~TransactionTask() { } - - protected: - bool Execute() override; - int TryExecute(); - void CleanupOnFailure(); - - std::shared_ptr m_trans; - static std::mutex _deadlockLock; -}; - -class TC_DATABASE_API TransactionWithResultTask : public TransactionTask +class TC_DATABASE_API TransactionTask { public: - TransactionWithResultTask(std::shared_ptr trans) : TransactionTask(trans) { } - - TransactionFuture GetFuture() { return m_result.get_future(); } + static bool Execute(MySQLConnection* conn, std::shared_ptr trans); -protected: - bool Execute() override; +private: + static int TryExecute(MySQLConnection* conn, std::shared_ptr trans); - TransactionPromise m_result; + static std::mutex _deadlockLock; }; class TC_DATABASE_API TransactionCallback -- cgit v1.2.3