# HG changeset patch # User am@osimis.io # Date 1544089167 -3600 # Node ID 5f64ecbdfcb40bad0547120696aaa7d2404f2fbf # Parent 9b734c3e10954d933221682440cfcbb6d2da9322# Parent 4be6a2b46f1e3dec25bb5044641fee4f51db1cff merge diff -r 4be6a2b46f1e -r 5f64ecbdfcb4 Plugins/Samples/Common/OrthancPluginCppWrapper.cpp --- a/Plugins/Samples/Common/OrthancPluginCppWrapper.cpp Thu Dec 06 10:11:40 2018 +0100 +++ b/Plugins/Samples/Common/OrthancPluginCppWrapper.cpp Thu Dec 06 10:39:27 2018 +0100 @@ -1152,7 +1152,10 @@ } else { - answer.ToJson(result); + if (!answer.IsEmpty()) + { + answer.ToJson(result); + } return true; } } @@ -1172,7 +1175,10 @@ } else { - answer.ToJson(result); + if (!answer.IsEmpty()) + { + answer.ToJson(result); + } return true; } } @@ -1202,7 +1208,10 @@ } else { - answer.ToJson(result); + if (!answer.IsEmpty()) // i.e, on a PUT to metadata/..., orthand returns an empty response + { + answer.ToJson(result); + } return true; } } diff -r 4be6a2b46f1e -r 5f64ecbdfcb4 Plugins/Samples/Common/OrthancPluginCppWrapper.h --- a/Plugins/Samples/Common/OrthancPluginCppWrapper.h Thu Dec 06 10:11:40 2018 +0100 +++ b/Plugins/Samples/Common/OrthancPluginCppWrapper.h Thu Dec 06 10:39:27 2018 +0100 @@ -140,6 +140,11 @@ return buffer_.size; } + bool IsEmpty() const + { + return GetSize() == 0 || GetData() == NULL; + } + void Clear(); void ToString(std::string& target) const; @@ -443,6 +448,15 @@ body.size(), applyPlugins); } + inline bool RestApiPost(Json::Value& result, + const std::string& uri, + const MemoryBuffer& body, + bool applyPlugins) + { + return RestApiPost(result, uri, body.GetData(), + body.GetSize(), applyPlugins); + } + bool RestApiPut(Json::Value& result, const std::string& uri, const char* body,