Mercurial > hg > orthanc
comparison OrthancServer/Plugins/Engine/OrthancPluginDatabaseV3.h @ 5455:176bc05f85f4 pg-transactions
DB: new Capabilities class to manage future new methods from DB plugins + Added IncrementGlobalProperty
author | Alain Mazy <am@osimis.io> |
---|---|
date | Thu, 07 Dec 2023 12:04:11 +0100 |
parents | df39c7583a49 |
children | b3ebe249ed5b |
comparison
equal
deleted
inserted
replaced
5454:099d45f49fe1 | 5455:176bc05f85f4 |
---|---|
23 #pragma once | 23 #pragma once |
24 | 24 |
25 #if ORTHANC_ENABLE_PLUGINS == 1 | 25 #if ORTHANC_ENABLE_PLUGINS == 1 |
26 | 26 |
27 #include "../../../OrthancFramework/Sources/SharedLibrary.h" | 27 #include "../../../OrthancFramework/Sources/SharedLibrary.h" |
28 #include "../../Sources/Database/IDatabaseWrapper.h" | 28 #include "../../Sources/Database/BaseDatabaseWrapper.h" |
29 #include "../Include/orthanc/OrthancCDatabasePlugin.h" | 29 #include "../Include/orthanc/OrthancCDatabasePlugin.h" |
30 #include "PluginsErrorDictionary.h" | 30 #include "PluginsErrorDictionary.h" |
31 | 31 |
32 namespace Orthanc | 32 namespace Orthanc |
33 { | 33 { |
34 class OrthancPluginDatabaseV3 : public IDatabaseWrapper | 34 class OrthancPluginDatabaseV3 : public BaseDatabaseWrapper |
35 { | 35 { |
36 private: | 36 private: |
37 class Transaction; | 37 class Transaction; |
38 | 38 |
39 SharedLibrary& library_; | 39 SharedLibrary& library_; |
40 PluginsErrorDictionary& errorDictionary_; | 40 PluginsErrorDictionary& errorDictionary_; |
41 OrthancPluginDatabaseBackendV3 backend_; | 41 OrthancPluginDatabaseBackendV3 backend_; |
42 void* database_; | 42 void* database_; |
43 std::string serverIdentifier_; | 43 std::string serverIdentifier_; |
44 IDatabaseWrapper::Capabilities dbCapabilities_; | |
44 | 45 |
45 void CheckSuccess(OrthancPluginErrorCode code) const; | 46 void CheckSuccess(OrthancPluginErrorCode code) const; |
46 | 47 |
47 public: | 48 public: |
48 OrthancPluginDatabaseV3(SharedLibrary& library, | 49 OrthancPluginDatabaseV3(SharedLibrary& library, |
65 | 66 |
66 virtual void FlushToDisk() ORTHANC_OVERRIDE | 67 virtual void FlushToDisk() ORTHANC_OVERRIDE |
67 { | 68 { |
68 } | 69 } |
69 | 70 |
70 virtual bool HasFlushToDisk() const ORTHANC_OVERRIDE | |
71 { | |
72 return false; | |
73 } | |
74 | |
75 virtual IDatabaseWrapper::ITransaction* StartTransaction(TransactionType type, | 71 virtual IDatabaseWrapper::ITransaction* StartTransaction(TransactionType type, |
76 IDatabaseListener& listener) | 72 IDatabaseListener& listener) |
77 ORTHANC_OVERRIDE; | 73 ORTHANC_OVERRIDE; |
78 | 74 |
79 virtual unsigned int GetDatabaseVersion() ORTHANC_OVERRIDE; | 75 virtual unsigned int GetDatabaseVersion() ORTHANC_OVERRIDE; |
80 | 76 |
81 virtual void Upgrade(unsigned int targetVersion, | 77 virtual void Upgrade(unsigned int targetVersion, |
82 IStorageArea& storageArea) ORTHANC_OVERRIDE; | 78 IStorageArea& storageArea) ORTHANC_OVERRIDE; |
83 | 79 |
84 virtual bool HasRevisionsSupport() const ORTHANC_OVERRIDE; | 80 const IDatabaseWrapper::Capabilities& GetDatabaseCapabilities() const ORTHANC_OVERRIDE |
81 { | |
82 return dbCapabilities_; | |
83 } | |
85 | 84 |
86 virtual bool HasLabelsSupport() const ORTHANC_OVERRIDE | |
87 { | |
88 return false; | |
89 } | |
90 }; | 85 }; |
91 } | 86 } |
92 | 87 |
93 #endif | 88 #endif |