Mercurial > hg > orthanc-transfers
changeset 85:b1d9e2310431
cppcheck
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 20 May 2025 10:07:01 +0200 |
parents | 3a460db3e6cb |
children | e3202f8f3db8 |
files | Framework/HttpQueries/DetectTransferPlugin.h Framework/PullMode/BucketPullQuery.h Framework/PullMode/PullJob.h Framework/PushMode/BucketPushQuery.h Framework/PushMode/PushJob.h Plugin/Plugin.cpp UnitTests/UnitTestsMain.cpp |
diffstat | 7 files changed, 58 insertions(+), 46 deletions(-) [+] |
line wrap: on
line diff
--- a/Framework/HttpQueries/DetectTransferPlugin.h Mon May 19 17:00:51 2025 +0200 +++ b/Framework/HttpQueries/DetectTransferPlugin.h Tue May 20 10:07:01 2025 +0200 @@ -24,6 +24,8 @@ #include "IHttpQuery.h" #include "../TransferToolbox.h" +#include <Compatibility.h> + #include <map> @@ -43,27 +45,27 @@ DetectTransferPlugin(Result& result, const std::string& peer); - virtual Orthanc::HttpMethod GetMethod() const + virtual Orthanc::HttpMethod GetMethod() const ORTHANC_OVERRIDE { return Orthanc::HttpMethod_Get; } - virtual const std::string& GetPeer() const + virtual const std::string& GetPeer() const ORTHANC_OVERRIDE { return peer_; } - virtual const std::string& GetUri() const + virtual const std::string& GetUri() const ORTHANC_OVERRIDE { return uri_; } - virtual void ReadBody(std::string& body) const; + virtual void ReadBody(std::string& body) const ORTHANC_OVERRIDE; virtual void HandleAnswer(const void* answer, - size_t size); + size_t size) ORTHANC_OVERRIDE; - virtual void GetHttpHeaders(std::map<std::string, std::string>& headers) const + virtual void GetHttpHeaders(std::map<std::string, std::string>& headers) const ORTHANC_OVERRIDE {/* no headers for this general purpose request*/} static void Apply(Result& result,
--- a/Framework/PullMode/BucketPullQuery.h Mon May 19 17:00:51 2025 +0200 +++ b/Framework/PullMode/BucketPullQuery.h Tue May 20 10:07:01 2025 +0200 @@ -24,6 +24,7 @@ #include "../HttpQueries/IHttpQuery.h" #include "../DownloadArea.h" +#include <Compatibility.h> namespace OrthancPlugins { @@ -42,27 +43,28 @@ const std::string& peer, BucketCompression compression); - virtual Orthanc::HttpMethod GetMethod() const + virtual Orthanc::HttpMethod GetMethod() const ORTHANC_OVERRIDE { return Orthanc::HttpMethod_Get; } - virtual const std::string& GetPeer() const + virtual const std::string& GetPeer() const ORTHANC_OVERRIDE { return peer_; } - virtual const std::string& GetUri() const + virtual const std::string& GetUri() const ORTHANC_OVERRIDE { return uri_; } - virtual void ReadBody(std::string& body) const; + virtual void ReadBody(std::string& body) const ORTHANC_OVERRIDE; virtual void HandleAnswer(const void* answer, - size_t size); + size_t size) ORTHANC_OVERRIDE; - virtual void GetHttpHeaders(std::map<std::string, std::string>& headers) const - {} + virtual void GetHttpHeaders(std::map<std::string, std::string>& headers) const ORTHANC_OVERRIDE + { + } }; }
--- a/Framework/PullMode/PullJob.h Mon May 19 17:00:51 2025 +0200 +++ b/Framework/PullMode/PullJob.h Tue May 20 10:07:01 2025 +0200 @@ -41,7 +41,8 @@ size_t peerIndex_; unsigned int maxHttpRetries_; - virtual StateUpdate* CreateInitialState(JobInfo& info); + protected: + virtual StateUpdate* CreateInitialState(JobInfo& info) ORTHANC_OVERRIDE; public: PullJob(const TransferQuery& query,
--- a/Framework/PushMode/BucketPushQuery.h Mon May 19 17:00:51 2025 +0200 +++ b/Framework/PushMode/BucketPushQuery.h Tue May 20 10:07:01 2025 +0200 @@ -45,27 +45,27 @@ BucketCompression compression, const std::map<std::string, std::string>& headers); - virtual Orthanc::HttpMethod GetMethod() const + virtual Orthanc::HttpMethod GetMethod() const ORTHANC_OVERRIDE { return Orthanc::HttpMethod_Put; } - virtual const std::string& GetPeer() const + virtual const std::string& GetPeer() const ORTHANC_OVERRIDE { return peer_; } - virtual const std::string& GetUri() const + virtual const std::string& GetUri() const ORTHANC_OVERRIDE { return uri_; } - virtual void ReadBody(std::string& body) const; + virtual void ReadBody(std::string& body) const ORTHANC_OVERRIDE; virtual void HandleAnswer(const void* answer, - size_t size); + size_t size) ORTHANC_OVERRIDE; - virtual void GetHttpHeaders(std::map<std::string, std::string>& headers) const + virtual void GetHttpHeaders(std::map<std::string, std::string>& headers) const ORTHANC_OVERRIDE { headers = headers_; }
--- a/Framework/PushMode/PushJob.h Mon May 19 17:00:51 2025 +0200 +++ b/Framework/PushMode/PushJob.h Tue May 20 10:07:01 2025 +0200 @@ -42,8 +42,9 @@ size_t peerIndex_; unsigned int maxHttpRetries_; unsigned int commitTimeout_; - - virtual StateUpdate* CreateInitialState(JobInfo& info); + + protected: + virtual StateUpdate* CreateInitialState(JobInfo& info) ORTHANC_OVERRIDE; public: PushJob(const TransferQuery& query,
--- a/Plugin/Plugin.cpp Mon May 19 17:00:51 2025 +0200 +++ b/Plugin/Plugin.cpp Tue May 20 10:07:01 2025 +0200 @@ -118,8 +118,11 @@ buffer.GetNumBytes() < requestedSize); i++) { size_t instanceSize; - std::string md5; // Ignored - context.GetCache().GetInstanceInfo(instanceSize, md5, instances[i]); + + { + std::string md5; // Ignored + context.GetCache().GetInstanceInfo(instanceSize, md5, instances[i]); + } if (offset >= instanceSize) { @@ -144,8 +147,11 @@ } std::string chunk; - std::string md5; // Ignored - context.GetCache().GetChunk(chunk, md5, instances[i], offset, toRead); + + { + std::string md5; // Ignored + context.GetCache().GetChunk(chunk, md5, instances[i], offset, toRead); + } buffer.AddChunk(chunk); offset = 0; @@ -265,7 +271,7 @@ const char* url, const OrthancPluginHttpRequest* request) { - OrthancPlugins::PluginContext& context = OrthancPlugins::PluginContext::GetInstance(); + const OrthancPlugins::PluginContext& context = OrthancPlugins::PluginContext::GetInstance(); Json::Value body; if (!ParsePostBody(body, output, request)) @@ -334,7 +340,7 @@ result[KEY_ID] = id; result[KEY_PATH] = std::string(URI_PUSH) + "/" + id; - std::string s = result.toStyledString(); + std::string s = result.toStyledString(); OrthancPluginAnswerBuffer(OrthancPlugins::GetGlobalContext(), output, s.c_str(), s.size(), "application/json"); } @@ -464,14 +470,14 @@ answer[KEY_ID].type() == Json::stringValue && answer[KEY_PATH].type() == Json::stringValue) { - const std::string url = peers.GetPeerUrl(query.GetPeer()); + const std::string peer = peers.GetPeerUrl(query.GetPeer()); Json::Value result = Json::objectValue; result[KEY_PEER] = query.GetPeer(); result[KEY_REMOTE_JOB] = answer[KEY_ID].asString(); - result[KEY_URL] = url + answer[KEY_PATH].asString(); + result[KEY_URL] = peer + answer[KEY_PATH].asString(); - std::string s = result.toStyledString(); + s = result.toStyledString(); OrthancPluginAnswerBuffer(OrthancPlugins::GetGlobalContext(), output, s.c_str(), s.size(), "application/json"); } else @@ -573,7 +579,7 @@ const char* url, const OrthancPluginHttpRequest* request) { - OrthancPlugins::PluginContext& context = OrthancPlugins::PluginContext::GetInstance(); + const OrthancPlugins::PluginContext& context = OrthancPlugins::PluginContext::GetInstance(); if (request->method != OrthancPluginHttpMethod_Get) {
--- a/UnitTests/UnitTestsMain.cpp Mon May 19 17:00:51 2025 +0200 +++ b/UnitTests/UnitTestsMain.cpp Tue May 20 10:07:01 2025 +0200 @@ -232,30 +232,30 @@ ASSERT_EQ("gzip", v["Compression"].asString()); ASSERT_EQ(3u, v["Instances"].size()); - for (Json::Value::ArrayIndex i = 0; i < 3; i++) + for (Json::Value::ArrayIndex j = 0; j < 3; j++) { - TransferBucket b(v["Buckets"][i]); - ASSERT_EQ(1u, b.GetChunksCount()); - if (i == 0) - ASSERT_EQ("d1", b.GetChunkInstanceId(0)); - else if (i == 1) - ASSERT_EQ("d2", b.GetChunkInstanceId(0)); + TransferBucket t(v["Buckets"][j]); + ASSERT_EQ(1u, t.GetChunksCount()); + if (j == 0) + ASSERT_EQ("d1", t.GetChunkInstanceId(0)); + else if (j == 1) + ASSERT_EQ("d2", t.GetChunkInstanceId(0)); else - ASSERT_EQ("d3", b.GetChunkInstanceId(0)); + ASSERT_EQ("d3", t.GetChunkInstanceId(0)); - ASSERT_EQ(0u, b.GetChunkOffset(0)); - ASSERT_EQ(10u, b.GetChunkSize(0)); + ASSERT_EQ(0u, t.GetChunkOffset(0)); + ASSERT_EQ(10u, t.GetChunkSize(0)); } - for (Json::Value::ArrayIndex i = 0; i < 3; i++) + for (Json::Value::ArrayIndex j = 0; j < 3; j++) { - DicomInstanceInfo d(v["Instances"][i]); - if (i == 0) + DicomInstanceInfo d(v["Instances"][j]); + if (j == 0) { ASSERT_EQ("d1", d.GetId()); ASSERT_EQ("md1", d.GetMD5()); } - else if (i == 1) + else if (j == 1) { ASSERT_EQ("d2", d.GetId()); ASSERT_EQ("md2", d.GetMD5());