comparison OrthancServer/ServerJobs/DicomModalityStoreJob.cpp @ 3737:f29843323daf storage-commitment

accessing storage commitment reports from REST API
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 10 Mar 2020 20:33:01 +0100
parents 77183afbf55e
children 138d0dde41b5
comparison
equal deleted inserted replaced
3736:0540b54324f1 3737:f29843323daf
36 36
37 #include "../../Core/Compatibility.h" 37 #include "../../Core/Compatibility.h"
38 #include "../../Core/Logging.h" 38 #include "../../Core/Logging.h"
39 #include "../../Core/SerializationToolbox.h" 39 #include "../../Core/SerializationToolbox.h"
40 #include "../ServerContext.h" 40 #include "../ServerContext.h"
41 #include "../StorageCommitmentReports.h"
41 42
42 43
43 namespace Orthanc 44 namespace Orthanc
44 { 45 {
45 void DicomModalityStoreJob::OpenConnection() 46 void DicomModalityStoreJob::OpenConnection()
94 { 95 {
95 throw OrthancException(ErrorCode_InternalError); 96 throw OrthancException(ErrorCode_InternalError);
96 } 97 }
97 98
98 if (sopClassUids_.size() == GetInstancesCount()) 99 if (sopClassUids_.size() == GetInstancesCount())
99 { 100 {
100 LOG(INFO) << "Sending storage commitment request to modality: " 101 const std::string& remoteAet = remote_.GetApplicationEntityTitle();
101 << remote_.GetApplicationEntityTitle(); 102
103 LOG(INFO) << "Sending storage commitment request to modality: " << remoteAet;
104
105 // Create a "pending" storage commitment report BEFORE the
106 // actual SCU call in order to avoid race conditions
107 context_.GetStorageCommitmentReports().Store(
108 transactionUid_, new StorageCommitmentReports::Report(remoteAet));
102 109
103 assert(IsStarted()); 110 assert(IsStarted());
104 OpenConnection(); 111 OpenConnection();
105 112
106 std::vector<std::string> a(sopClassUids_.begin(), sopClassUids_.end()); 113 std::vector<std::string> a(sopClassUids_.begin(), sopClassUids_.end());