From 7fcb126fcb7cff945936a7f5e051b07ce0de8a7f Mon Sep 17 00:00:00 2001 From: Shauren Date: Wed, 12 Jun 2024 21:41:29 +0200 Subject: Core/Database: Remove future/promise typedefs from a public header (these are internal to database project) --- src/server/database/Database/DatabaseEnvFwd.h | 10 ---------- src/server/database/Database/DatabaseWorkerPool.cpp | 8 ++++---- src/server/database/Database/DatabaseWorkerPool.h | 1 + src/server/database/Database/MySQLConnection.h | 1 + src/server/database/Database/QueryCallback.cpp | 4 ++-- src/server/database/Database/QueryCallback.h | 9 +++++---- src/server/database/Database/QueryHolder.h | 5 +++-- src/server/database/Database/Transaction.h | 5 +++-- 8 files changed, 19 insertions(+), 24 deletions(-) (limited to 'src/server/database/Database') diff --git a/src/server/database/Database/DatabaseEnvFwd.h b/src/server/database/Database/DatabaseEnvFwd.h index 4521409902b..18c4216a193 100644 --- a/src/server/database/Database/DatabaseEnvFwd.h +++ b/src/server/database/Database/DatabaseEnvFwd.h @@ -18,7 +18,6 @@ #ifndef DatabaseEnvFwd_h__ #define DatabaseEnvFwd_h__ -#include #include struct QueryResultFieldMetadata; @@ -26,8 +25,6 @@ class Field; class ResultSet; using QueryResult = std::shared_ptr; -using QueryResultFuture = std::future; -using QueryResultPromise = std::promise; class CharacterDatabaseConnection; class HotfixDatabaseConnection; @@ -46,8 +43,6 @@ using WorldDatabasePreparedStatement = PreparedStatement; -using PreparedQueryResultFuture = std::future; -using PreparedQueryResultPromise = std::promise; class QueryCallback; @@ -58,9 +53,6 @@ using QueryCallbackProcessor = AsyncCallbackProcessor; class TransactionBase; -using TransactionFuture = std::future; -using TransactionPromise = std::promise; - template class Transaction; @@ -75,8 +67,6 @@ using LoginDatabaseTransaction = SQLTransaction; using WorldDatabaseTransaction = SQLTransaction; class SQLQueryHolderBase; -using QueryResultHolderFuture = std::future; -using QueryResultHolderPromise = std::promise; template class SQLQueryHolder; diff --git a/src/server/database/Database/DatabaseWorkerPool.cpp b/src/server/database/Database/DatabaseWorkerPool.cpp index 35a1ffb74f9..ad63678d367 100644 --- a/src/server/database/Database/DatabaseWorkerPool.cpp +++ b/src/server/database/Database/DatabaseWorkerPool.cpp @@ -260,7 +260,7 @@ PreparedQueryResult DatabaseWorkerPool::Query(PreparedStatement* stmt) template QueryCallback DatabaseWorkerPool::AsyncQuery(char const* sql) { - QueryResultFuture result = boost::asio::post(_ioContext->get_executor(), boost::asio::use_future([this, sql = std::string(sql), tracker = QueueSizeTracker(this)] + std::future result = boost::asio::post(_ioContext->get_executor(), boost::asio::use_future([this, sql = std::string(sql), tracker = QueueSizeTracker(this)] { T* conn = GetAsyncConnectionForCurrentThread(); return BasicStatementTask::Query(conn, sql.c_str()); @@ -271,7 +271,7 @@ QueryCallback DatabaseWorkerPool::AsyncQuery(char const* sql) template QueryCallback DatabaseWorkerPool::AsyncQuery(PreparedStatement* stmt) { - PreparedQueryResultFuture result = boost::asio::post(_ioContext->get_executor(), boost::asio::use_future([this, stmt = std::unique_ptr>(stmt), tracker = QueueSizeTracker(this)] + std::future result = boost::asio::post(_ioContext->get_executor(), boost::asio::use_future([this, stmt = std::unique_ptr>(stmt), tracker = QueueSizeTracker(this)] { T* conn = GetAsyncConnectionForCurrentThread(); return PreparedStatementTask::Query(conn, stmt.get()); @@ -282,7 +282,7 @@ QueryCallback DatabaseWorkerPool::AsyncQuery(PreparedStatement* stmt) template SQLQueryHolderCallback DatabaseWorkerPool::DelayQueryHolder(std::shared_ptr> holder) { - QueryResultHolderFuture result = boost::asio::post(_ioContext->get_executor(), boost::asio::use_future([this, holder, tracker = QueueSizeTracker(this)] + std::future result = boost::asio::post(_ioContext->get_executor(), boost::asio::use_future([this, holder, tracker = QueueSizeTracker(this)] { T* conn = GetAsyncConnectionForCurrentThread(); SQLQueryHolderTask::Execute(conn, holder.get()); @@ -343,7 +343,7 @@ TransactionCallback DatabaseWorkerPool::AsyncCommitTransaction(SQLTransaction } #endif // TRINITY_DEBUG - TransactionFuture result = boost::asio::post(_ioContext->get_executor(), boost::asio::use_future([this, transaction, tracker = QueueSizeTracker(this)] + std::future result = boost::asio::post(_ioContext->get_executor(), boost::asio::use_future([this, transaction, tracker = QueueSizeTracker(this)] { T* conn = GetAsyncConnectionForCurrentThread(); return TransactionTask::Execute(conn, transaction); diff --git a/src/server/database/Database/DatabaseWorkerPool.h b/src/server/database/Database/DatabaseWorkerPool.h index 70c7a022510..5bd3320f0ac 100644 --- a/src/server/database/Database/DatabaseWorkerPool.h +++ b/src/server/database/Database/DatabaseWorkerPool.h @@ -23,6 +23,7 @@ #include "DatabaseEnvFwd.h" #include "StringFormat.h" #include +#include #include #include diff --git a/src/server/database/Database/MySQLConnection.h b/src/server/database/Database/MySQLConnection.h index df42cd3a342..db8ff40a2ab 100644 --- a/src/server/database/Database/MySQLConnection.h +++ b/src/server/database/Database/MySQLConnection.h @@ -24,6 +24,7 @@ #include #include #include +#include #include class MySQLPreparedStatement; diff --git a/src/server/database/Database/QueryCallback.cpp b/src/server/database/Database/QueryCallback.cpp index c8b3295fe39..f921eaa1e4d 100644 --- a/src/server/database/Database/QueryCallback.cpp +++ b/src/server/database/Database/QueryCallback.cpp @@ -200,7 +200,7 @@ bool QueryCallback::InvokeIfReady() { if (_string.valid() && _string.wait_for(std::chrono::seconds(0)) == std::future_status::ready) { - QueryResultFuture f(std::move(_string)); + std::future f(std::move(_string)); std::function cb(std::move(callback._string)); cb(*this, f.get()); return checkStateAndReturnCompletion(); @@ -210,7 +210,7 @@ bool QueryCallback::InvokeIfReady() { if (_prepared.valid() && _prepared.wait_for(std::chrono::seconds(0)) == std::future_status::ready) { - PreparedQueryResultFuture f(std::move(_prepared)); + std::future f(std::move(_prepared)); std::function cb(std::move(callback._prepared)); cb(*this, f.get()); return checkStateAndReturnCompletion(); diff --git a/src/server/database/Database/QueryCallback.h b/src/server/database/Database/QueryCallback.h index f788cc41baa..bb3cc64559d 100644 --- a/src/server/database/Database/QueryCallback.h +++ b/src/server/database/Database/QueryCallback.h @@ -21,14 +21,15 @@ #include "DatabaseEnvFwd.h" #include "Define.h" #include +#include #include #include class TC_DATABASE_API QueryCallback { public: - explicit QueryCallback(QueryResultFuture&& result); - explicit QueryCallback(PreparedQueryResultFuture&& result); + explicit QueryCallback(std::future&& result); + explicit QueryCallback(std::future&& result); QueryCallback(QueryCallback&& right) noexcept; QueryCallback& operator=(QueryCallback&& right) noexcept; ~QueryCallback(); @@ -55,8 +56,8 @@ private: union { - QueryResultFuture _string; - PreparedQueryResultFuture _prepared; + std::future _string; + std::future _prepared; }; bool _isPrepared; diff --git a/src/server/database/Database/QueryHolder.h b/src/server/database/Database/QueryHolder.h index e63fe4add66..a0a0b2b2d0f 100644 --- a/src/server/database/Database/QueryHolder.h +++ b/src/server/database/Database/QueryHolder.h @@ -20,6 +20,7 @@ #include "Define.h" #include "DatabaseEnvFwd.h" +#include #include class MySQLConnection; @@ -59,7 +60,7 @@ public: class TC_DATABASE_API SQLQueryHolderCallback { public: - SQLQueryHolderCallback(std::shared_ptr&& holder, QueryResultHolderFuture&& future) + SQLQueryHolderCallback(std::shared_ptr&& holder, std::future&& future) : m_holder(std::move(holder)), m_future(std::move(future)) { } SQLQueryHolderCallback(SQLQueryHolderCallback&&) = default; @@ -74,7 +75,7 @@ public: bool InvokeIfReady(); std::shared_ptr m_holder; - QueryResultHolderFuture m_future; + std::future m_future; std::function m_callback; }; diff --git a/src/server/database/Database/Transaction.h b/src/server/database/Database/Transaction.h index f4dcb9fae34..c60b74b58b8 100644 --- a/src/server/database/Database/Transaction.h +++ b/src/server/database/Database/Transaction.h @@ -22,6 +22,7 @@ #include "DatabaseEnvFwd.h" #include "StringFormat.h" #include +#include #include #include #include @@ -100,7 +101,7 @@ private: class TC_DATABASE_API TransactionCallback { public: - TransactionCallback(TransactionFuture&& future) : m_future(std::move(future)) { } + TransactionCallback(std::future&& future) : m_future(std::move(future)) { } TransactionCallback(TransactionCallback&&) = default; TransactionCallback& operator=(TransactionCallback&&) = default; @@ -112,7 +113,7 @@ public: bool InvokeIfReady(); - TransactionFuture m_future; + std::future m_future; std::function m_callback; }; -- cgit v1.2.3