1#ifndef ENGINE_SERVER_DATABASES_CONNECTION_POOL_H
2#define ENGINE_SERVER_DATABASES_CONNECTION_POOL_H
26 ISqlData(std::shared_ptr<ISqlResult> pResult) :
85 std::unique_ptr<const ISqlData> pSqlRequestData,
91 std::unique_ptr<const ISqlData> pSqlRequestData,
void Print(Mode DatabaseMode)
Definition connection_pool.cpp:124
Mode
Definition connection_pool.h:71
@ NUM_MODES
Definition connection_pool.h:75
@ READ
Definition connection_pool.h:72
@ WRITE_BACKUP
Definition connection_pool.h:74
@ WRITE
Definition connection_pool.h:73
CDbConnectionPool & operator=(const CDbConnectionPool &)=delete
int m_InsertIdx
Definition connection_pool.h:104
friend class CWorker
Definition connection_pool.h:96
void * m_pBackupThread
Definition connection_pool.h:129
void * m_pWorkerThread
Definition connection_pool.h:128
std::shared_ptr< CSharedData > m_pShared
Definition connection_pool.h:127
friend class CBackup
Definition connection_pool.h:97
~CDbConnectionPool()
Definition connection_pool.cpp:486
bool m_Shutdown
Definition connection_pool.h:106
void Execute(FRead pFunc, std::unique_ptr< const ISqlData > pSqlRequestData, const char *pName)
Definition connection_pool.cpp:145
CDbConnectionPool()
Definition connection_pool.cpp:479
void ExecuteWrite(FWrite pFunc, std::unique_ptr< const ISqlData > pSqlRequestData, const char *pName)
Definition connection_pool.cpp:155
static bool ExecSqlFunc(IDbConnection *pConnection, struct CSqlExecData *pData, Write w)
Definition connection_pool.cpp:446
bool(* FWrite)(IDbConnection *, const ISqlData *, Write, char *pError, int ErrorSize)
Definition connection_pool.h:68
bool(* FRead)(IDbConnection *, const ISqlData *, char *pError, int ErrorSize)
Definition connection_pool.h:67
void RegisterSqliteDatabase(Mode DatabaseMode, const char aFilename[64])
Definition connection_pool.cpp:131
void RegisterMysqlDatabase(Mode DatabaseMode, const CMysqlConfig *pMysqlConfig)
Definition connection_pool.cpp:138
void OnShutdown()
Definition connection_pool.cpp:165
Definition connection.h:19
Write
Definition connection_pool.h:36
@ NORMAL_FAILED
Definition connection_pool.h:44
@ NORMAL
Definition connection_pool.h:40
@ BACKUP_FIRST
Definition connection_pool.h:38
@ NORMAL_SUCCEEDED
Definition connection_pool.h:42
Definition connection_pool.h:109
std::unique_ptr< struct CSqlExecData > m_aQueries[512]
Definition connection_pool.h:124
std::atomic_bool m_Shutdown
Definition connection_pool.h:115
CSemaphore m_NumBackup
Definition connection_pool.h:118
CSemaphore m_NumWorker
Definition connection_pool.h:121
Definition connection_pool.h:48
char m_aPass[64]
Definition connection_pool.h:52
bool m_Setup
Definition connection_pool.h:56
char m_aDatabase[64]
Definition connection_pool.h:49
char m_aPrefix[64]
Definition connection_pool.h:50
char m_aIp[64]
Definition connection_pool.h:53
char m_aBindaddr[128]
Definition connection_pool.h:54
char m_aUser[64]
Definition connection_pool.h:51
int m_Port
Definition connection_pool.h:55
Definition connection_pool.cpp:24
Definition connection_pool.h:25
virtual ~ISqlData()=default
std::shared_ptr< ISqlResult > m_pResult
Definition connection_pool.h:32
ISqlData(std::shared_ptr< ISqlResult > pResult)
Definition connection_pool.h:26
Definition connection_pool.h:13
std::atomic_bool m_Completed
Definition connection_pool.h:17
virtual ~ISqlResult()=default
bool m_Success
Definition connection_pool.h:19