Mercurial > hg > orthanc-webviewer
comparison Plugin/Plugin.cpp @ 99:46ec13a1177c refactoring
use of ordered-slices
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 27 Nov 2015 21:39:41 +0100 |
parents | a6ba21a083e5 |
children | f5b1a9267da0 |
comparison
equal
deleted
inserted
replaced
98:745cc19aa32b | 99:46ec13a1177c |
---|---|
28 #include "ViewerPrefetchPolicy.h" | 28 #include "ViewerPrefetchPolicy.h" |
29 #include "DecodedImageAdapter.h" | 29 #include "DecodedImageAdapter.h" |
30 #include "InstanceInformationAdapter.h" | 30 #include "InstanceInformationAdapter.h" |
31 #include "SeriesInformationAdapter.h" | 31 #include "SeriesInformationAdapter.h" |
32 #include "../Orthanc/Plugins/Samples/GdcmDecoder/GdcmImageDecoder.h" | 32 #include "../Orthanc/Plugins/Samples/GdcmDecoder/GdcmImageDecoder.h" |
33 #include "../Orthanc/Core/Toolbox.h" | |
33 | 34 |
34 | 35 |
35 static OrthancPluginContext* context_ = NULL; | 36 static OrthancPluginContext* context_ = NULL; |
36 | 37 |
37 | 38 |
203 | 204 |
204 | 205 |
205 | 206 |
206 | 207 |
207 #if ORTHANC_STANDALONE == 0 | 208 #if ORTHANC_STANDALONE == 0 |
208 static int32_t ServeWebViewer(OrthancPluginRestOutput* output, | 209 static OrthancPluginErrorCode ServeWebViewer(OrthancPluginRestOutput* output, |
209 const char* url, | 210 const char* url, |
210 const OrthancPluginHttpRequest* request) | 211 const OrthancPluginHttpRequest* request) |
211 { | 212 { |
212 if (request->method != OrthancPluginHttpMethod_Get) | 213 if (request->method != OrthancPluginHttpMethod_Get) |
213 { | 214 { |
214 OrthancPluginSendMethodNotAllowed(context_, output, "GET"); | 215 OrthancPluginSendMethodNotAllowed(context_, output, "GET"); |
215 return 0; | 216 return OrthancPluginErrorCode_Success; |
216 } | 217 } |
217 | 218 |
218 const std::string path = std::string(WEB_VIEWER_PATH) + std::string(request->groups[0]); | 219 const std::string path = std::string(WEB_VIEWER_PATH) + std::string(request->groups[0]); |
219 const char* mime = OrthancPlugins::GetMimeType(path); | 220 const char* mime = OrthancPlugins::GetMimeType(path); |
220 | 221 |
221 std::string s; | 222 std::string s; |
222 if (OrthancPlugins::ReadFile(s, path)) | 223 try |
223 { | 224 { |
225 Orthanc::Toolbox::ReadFile(s, path); | |
224 const char* resource = s.size() ? s.c_str() : NULL; | 226 const char* resource = s.size() ? s.c_str() : NULL; |
225 OrthancPluginAnswerBuffer(context_, output, resource, s.size(), mime); | 227 OrthancPluginAnswerBuffer(context_, output, resource, s.size(), mime); |
226 } | 228 } |
227 else | 229 catch (Orthanc::OrthancException&) |
228 { | 230 { |
229 std::string s = "Inexistent file in served folder: " + path; | 231 std::string s = "Inexistent file in served folder: " + path; |
230 OrthancPluginLogError(context_, s.c_str()); | 232 OrthancPluginLogError(context_, s.c_str()); |
231 OrthancPluginSendHttpStatusCode(context_, output, 404); | 233 OrthancPluginSendHttpStatusCode(context_, output, 404); |
232 } | 234 } |
233 | 235 |
234 return 0; | 236 return OrthancPluginErrorCode_Success; |
235 } | 237 } |
236 #endif | 238 #endif |
237 | 239 |
238 | 240 |
239 | 241 |