Mercurial > hg > orthanc-databases
comparison Framework/MySQL/MySQLDatabase.h @ 255:d663d9e44f8d
reintroduction of IDatabaseFactory into DatabaseManager
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 14 Apr 2021 17:57:08 +0200 |
parents | c82c2cf84ae8 |
children | 16aac0287485 |
comparison
equal
deleted
inserted
replaced
254:8a4ce70f456a | 255:d663d9e44f8d |
---|---|
23 | 23 |
24 #if ORTHANC_ENABLE_MYSQL != 1 | 24 #if ORTHANC_ENABLE_MYSQL != 1 |
25 # error MySQL support must be enabled to use this file | 25 # error MySQL support must be enabled to use this file |
26 #endif | 26 #endif |
27 | 27 |
28 #include "../Common/IDatabase.h" | 28 #include "../Common/IDatabaseFactory.h" |
29 #include "MySQLParameters.h" | 29 #include "MySQLParameters.h" |
30 | 30 |
31 #include <mysql.h> | 31 #include <mysql.h> |
32 | 32 |
33 namespace OrthancDatabases | 33 namespace OrthancDatabases |
35 class MySQLTransaction; | 35 class MySQLTransaction; |
36 | 36 |
37 class MySQLDatabase : public IDatabase | 37 class MySQLDatabase : public IDatabase |
38 { | 38 { |
39 private: | 39 private: |
40 class Factory; | |
41 | |
40 MySQLParameters parameters_; | 42 MySQLParameters parameters_; |
41 MYSQL *mysql_; | 43 MYSQL *mysql_; |
42 | 44 |
43 void OpenInternal(const char* database); | 45 void OpenInternal(const char* database); |
44 | 46 |
117 const std::string& lock); | 119 const std::string& lock); |
118 | 120 |
119 ~TransientAdvisoryLock(); | 121 ~TransientAdvisoryLock(); |
120 }; | 122 }; |
121 | 123 |
122 static MySQLDatabase* OpenDatabaseConnection(const MySQLParameters& parameters); | 124 static IDatabaseFactory* CreateDatabaseFactory(const MySQLParameters& parameters); |
125 | |
126 static MySQLDatabase* CreateDatabaseConnection(const MySQLParameters& parameters); | |
123 }; | 127 }; |
124 } | 128 } |