Mercurial > hg > orthanc-databases
diff MySQL/Plugins/MySQLStorageArea.cpp @ 255:d663d9e44f8d
reintroduction of IDatabaseFactory into DatabaseManager
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 14 Apr 2021 17:57:08 +0200 |
parents | 33fa478c119a |
children | 567761f0c1ea |
line wrap: on
line diff
--- a/MySQL/Plugins/MySQLStorageArea.cpp Wed Apr 14 15:33:57 2021 +0200 +++ b/MySQL/Plugins/MySQLStorageArea.cpp Wed Apr 14 17:57:08 2021 +0200 @@ -87,17 +87,14 @@ MySQLStorageArea::MySQLStorageArea(const MySQLParameters& parameters, - bool clearAll) + bool clearAll) : + StorageBackend(MySQLDatabase::CreateDatabaseFactory(parameters)) { - std::unique_ptr<MySQLDatabase> database(MySQLDatabase::OpenDatabaseConnection(parameters)); - - if (database.get() == NULL) { - throw Orthanc::OrthancException(Orthanc::ErrorCode_InternalError); + AccessorBase accessor(*this); + MySQLDatabase& database = dynamic_cast<MySQLDatabase&>(accessor.GetManager().GetDatabase()); + ConfigureDatabase(database, parameters, clearAll); } - - ConfigureDatabase(*database, parameters, clearAll); - SetDatabase(database.release()); }