comparison Framework/Toolbox/MessagingToolbox.cpp @ 67:acb60cbb8301 wasm

refactoring SeriesLoader
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 18 May 2017 17:51:41 +0200
parents 28956ed68280
children 2eca030792aa
comparison
equal deleted inserted replaced
66:298f375dcb68 67:acb60cbb8301
150 return true; 150 return true;
151 } 151 }
152 } 152 }
153 153
154 154
155 static void ParseJson(Json::Value& target, 155 bool ParseJson(Json::Value& target,
156 const std::string& source) 156 const void* content,
157 size_t size)
158 {
159 Json::Reader reader;
160 return reader.parse(reinterpret_cast<const char*>(content),
161 reinterpret_cast<const char*>(content) + size,
162 target);
163 }
164
165
166 static void ParseJsonException(Json::Value& target,
167 const std::string& source)
157 { 168 {
158 Json::Reader reader; 169 Json::Reader reader;
159 if (!reader.parse(source, target)) 170 if (!reader.parse(source, target))
160 { 171 {
161 throw Orthanc::OrthancException(Orthanc::ErrorCode_BadFileFormat); 172 throw Orthanc::OrthancException(Orthanc::ErrorCode_BadFileFormat);
167 OrthancPlugins::IOrthancConnection& orthanc, 178 OrthancPlugins::IOrthancConnection& orthanc,
168 const std::string& uri) 179 const std::string& uri)
169 { 180 {
170 std::string tmp; 181 std::string tmp;
171 orthanc.RestApiGet(tmp, uri); 182 orthanc.RestApiGet(tmp, uri);
172 ParseJson(target, tmp); 183 ParseJsonException(target, tmp);
173 } 184 }
174 185
175 186
176 void RestApiPost(Json::Value& target, 187 void RestApiPost(Json::Value& target,
177 OrthancPlugins::IOrthancConnection& orthanc, 188 OrthancPlugins::IOrthancConnection& orthanc,
178 const std::string& uri, 189 const std::string& uri,
179 const std::string& body) 190 const std::string& body)
180 { 191 {
181 std::string tmp; 192 std::string tmp;
182 orthanc.RestApiPost(tmp, uri, body); 193 orthanc.RestApiPost(tmp, uri, body);
183 ParseJson(target, tmp); 194 ParseJsonException(target, tmp);
184 } 195 }
185 196
186 197
187 bool HasWebViewerInstalled(OrthancPlugins::IOrthancConnection& orthanc) 198 bool HasWebViewerInstalled(OrthancPlugins::IOrthancConnection& orthanc)
188 { 199 {