comparison OrthancServer/Sources/Database/StatelessDatabaseOperations.h @ 4587:888868a5dc4e db-changes

ServerIndex now uses StatelessDatabaseOperations
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 10 Mar 2021 15:59:03 +0100
parents 1d96fe7e054e
children 94147ce2f097
comparison
equal deleted inserted replaced
4586:1d96fe7e054e 4587:888868a5dc4e
402 402
403 private: 403 private:
404 class MainDicomTagsRegistry; 404 class MainDicomTagsRegistry;
405 class Transaction; 405 class Transaction;
406 406
407 IDatabaseWrapper& db_; 407 IDatabaseWrapper& db_;
408 boost::mutex databaseMutex_; // TODO - REMOVE 408 boost::mutex databaseMutex_; // TODO - REMOVE
409 std::unique_ptr<ITransactionContextFactory> factory_; 409 std::unique_ptr<ITransactionContextFactory> factory_;
410 unsigned int maxRetries_; 410 unsigned int maxRetries_;
411 std::unique_ptr<MainDicomTagsRegistry> mainDicomTagsRegistry_; 411 std::unique_ptr<MainDicomTagsRegistry> mainDicomTagsRegistry_;
412 bool hasFlushToDisk_;
412 413
413 void NormalizeLookup(std::vector<DatabaseConstraint>& target, 414 void NormalizeLookup(std::vector<DatabaseConstraint>& target,
414 const DatabaseLookup& source, 415 const DatabaseLookup& source,
415 ResourceType level) const; 416 ResourceType level) const;
416 417
429 // It is assumed that "GetDatabaseVersion()" can run out of a 430 // It is assumed that "GetDatabaseVersion()" can run out of a
430 // database transaction 431 // database transaction
431 unsigned int GetDatabaseVersion() 432 unsigned int GetDatabaseVersion()
432 { 433 {
433 return db_.GetDatabaseVersion(); 434 return db_.GetDatabaseVersion();
435 }
436
437 void FlushToDisk();
438
439 bool HasFlushToDisk() const
440 {
441 return hasFlushToDisk_;
434 } 442 }
435 443
436 void Apply(IReadOnlyOperations& operations); 444 void Apply(IReadOnlyOperations& operations);
437 445
438 void Apply(IReadWriteOperations& operations); 446 void Apply(IReadWriteOperations& operations);
566 const std::string& value); 574 const std::string& value);
567 575
568 void DeleteAttachment(const std::string& publicId, 576 void DeleteAttachment(const std::string& publicId,
569 FileContentType type); 577 FileContentType type);
570 578
571 void LogChange(ChangeType changeType, 579 void LogChange(int64_t internalId,
580 ChangeType changeType,
572 const std::string& publicId, 581 const std::string& publicId,
573 ResourceType level); 582 ResourceType level);
574 583
575 void ReconstructInstance(const ParsedDicomFile& dicom); 584 void ReconstructInstance(const ParsedDicomFile& dicom);
576 585