Mercurial > hg > orthanc
comparison OrthancServer/IDatabaseWrapper.h @ 3080:1a75595d8e44 db-changes
started refactoring of ServerIndex::Store()
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 03 Jan 2019 18:21:22 +0100 |
parents | ead8576a02ef |
children | 847a0ed92654 |
comparison
equal
deleted
inserted
replaced
3079:65e2bfa953ef | 3080:1a75595d8e44 |
---|---|
64 | 64 |
65 virtual void Commit(int64_t fileSizeDelta) = 0; | 65 virtual void Commit(int64_t fileSizeDelta) = 0; |
66 }; | 66 }; |
67 | 67 |
68 | 68 |
69 struct CreateInstanceResult | |
70 { | |
71 bool isNewPatient_; | |
72 bool isNewStudy_; | |
73 bool isNewSeries_; | |
74 int64_t patientId_; | |
75 int64_t studyId_; | |
76 int64_t seriesId_; | |
77 }; | |
78 | |
79 | |
69 virtual ~IDatabaseWrapper() | 80 virtual ~IDatabaseWrapper() |
70 { | 81 { |
71 } | 82 } |
72 | 83 |
73 virtual void Open() = 0; | 84 virtual void Open() = 0; |
75 virtual void Close() = 0; | 86 virtual void Close() = 0; |
76 | 87 |
77 virtual void AddAttachment(int64_t id, | 88 virtual void AddAttachment(int64_t id, |
78 const FileInfo& attachment) = 0; | 89 const FileInfo& attachment) = 0; |
79 | 90 |
80 virtual void AttachChild(int64_t parent, | |
81 int64_t child) = 0; | |
82 | |
83 virtual void ClearChanges() = 0; | 91 virtual void ClearChanges() = 0; |
84 | 92 |
85 virtual void ClearExportedResources() = 0; | 93 virtual void ClearExportedResources() = 0; |
86 | |
87 virtual int64_t CreateResource(const std::string& publicId, | |
88 ResourceType type) = 0; | |
89 | 94 |
90 virtual void DeleteAttachment(int64_t id, | 95 virtual void DeleteAttachment(int64_t id, |
91 FileContentType attachment) = 0; | 96 FileContentType attachment) = 0; |
92 | 97 |
93 virtual void DeleteMetadata(int64_t id, | 98 virtual void DeleteMetadata(int64_t id, |
208 virtual unsigned int GetDatabaseVersion() = 0; | 213 virtual unsigned int GetDatabaseVersion() = 0; |
209 | 214 |
210 virtual void Upgrade(unsigned int targetVersion, | 215 virtual void Upgrade(unsigned int targetVersion, |
211 IStorageArea& storageArea) = 0; | 216 IStorageArea& storageArea) = 0; |
212 | 217 |
218 | |
219 /** | |
220 * Primitives introduced in Orthanc 1.5.2 | |
221 **/ | |
222 | |
213 virtual bool IsDiskSizeAbove(uint64_t threshold) = 0; | 223 virtual bool IsDiskSizeAbove(uint64_t threshold) = 0; |
214 | 224 |
215 virtual void ApplyLookupResources(std::list<std::string>& resourcesId, | 225 virtual void ApplyLookupResources(std::list<std::string>& resourcesId, |
216 std::list<std::string>* instancesId, // Can be NULL if not needed | 226 std::list<std::string>* instancesId, // Can be NULL if not needed |
217 const std::vector<DatabaseConstraint>& lookup, | 227 const std::vector<DatabaseConstraint>& lookup, |
218 ResourceType queryLevel, | 228 ResourceType queryLevel, |
219 size_t limit) = 0; | 229 size_t limit) = 0; |
230 | |
231 // Returns "true" iff. the instance already exists *and* | |
232 // "overwrite" is "false". If "false" is returned, the content of | |
233 // "result" is undefined, but "instanceId" must be properly set. | |
234 virtual bool CreateInstance(CreateInstanceResult& result, /* out */ | |
235 int64_t& instanceId, /* out */ | |
236 const std::string& patient, | |
237 const std::string& study, | |
238 const std::string& series, | |
239 const std::string& instance, | |
240 bool overwrite) = 0; | |
220 }; | 241 }; |
221 } | 242 } |