Mercurial > hg > orthanc-databases
diff Framework/Plugins/StorageBackend.h @ 226:a4918d57435c
DatabaseManager doesn't IDatabaseFactory anymore
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 02 Apr 2021 19:23:36 +0200 |
parents | dd6cfc250747 |
children | 675f8322eb7c |
line wrap: on
line diff
--- a/Framework/Plugins/StorageBackend.h Thu Apr 01 19:18:19 2021 +0200 +++ b/Framework/Plugins/StorageBackend.h Fri Apr 02 19:23:36 2021 +0200 @@ -31,7 +31,7 @@ class StorageBackend : public boost::noncopyable { private: - DatabaseManager manager_; + std::unique_ptr<DatabaseManager> manager_; public: class IFileContentVisitor : public boost::noncopyable @@ -44,16 +44,13 @@ virtual void Assign(const std::string& content) = 0; }; - explicit StorageBackend(IDatabaseFactory* factory); - virtual ~StorageBackend() { } - DatabaseManager& GetManager() - { - return manager_; - } + void SetDatabase(IDatabase* database); // Takes ownership + + DatabaseManager& GetManager(); // NB: These methods will always be invoked in mutual exclusion, // as having access to some "DatabaseManager::Transaction" implies