feat(Core/Database): port TrinityCore database API (#5611)

This commit is contained in:
Kargatum
2021-06-22 11:21:07 +07:00
committed by GitHub
parent 2a2e54d8c5
commit 9ac6fddcae
155 changed files with 5818 additions and 4321 deletions

View File

@@ -17,9 +17,11 @@ class DatabaseWorkerPool;
// A helper class to initiate all database worker pools,
// handles updating, delays preparing of statements and cleans up on failure.
class DatabaseLoader
class AC_DATABASE_API DatabaseLoader
{
public:
DatabaseLoader(std::string const& logger);
// Register a database to the loader (lazy implemented)
template <class T>
DatabaseLoader& AddDatabase(DatabaseWorkerPool<T>& pool, std::string const& name);
@@ -49,6 +51,8 @@ private:
// Returns false when there was an error.
bool Process(std::queue<Predicate>& queue);
std::string const _logger;
std::queue<Predicate> _open, _prepare;
std::stack<Closer> _close;
};