Mercurial > hg > orthanc-stone
diff Platforms/Wasm/WasmWebService.cpp @ 417:aee3d7941c9b
preparing to load images using DICOMweb
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 15 Nov 2018 17:28:15 +0100 |
parents | aad37d0b6407 |
children | c23df8b3433b |
line wrap: on
line diff
--- a/Platforms/Wasm/WasmWebService.cpp Tue Nov 13 10:36:53 2018 +0100 +++ b/Platforms/Wasm/WasmWebService.cpp Thu Nov 15 17:28:15 2018 +0100 @@ -49,6 +49,7 @@ const char* uri, const void* body, size_t bodySize, + const char* answerHeaders, void* payload) { if (successCallable == NULL) @@ -57,9 +58,15 @@ } else { + OrthancStone::IWebService::HttpHeaders headers; + + // TODO - Parse "answerHeaders" + printf("[%s]\n", answerHeaders); + reinterpret_cast<OrthancStone::MessageHandler<OrthancStone::IWebService::HttpRequestSuccessMessage>*>(successCallable)-> - Apply(OrthancStone::IWebService::HttpRequestSuccessMessage(uri, body, bodySize, reinterpret_cast<Orthanc::IDynamicObject*>(payload))); - } + Apply(OrthancStone::IWebService::HttpRequestSuccessMessage(uri, body, bodySize, headers, + reinterpret_cast<Orthanc::IDynamicObject*>(payload))); + } } void EMSCRIPTEN_KEEPALIVE WasmWebService_SetBaseUri(const char* baseUri) @@ -91,10 +98,10 @@ } } - void ToJsonString(std::string& output, const IWebService::Headers& headers) + void ToJsonString(std::string& output, const IWebService::HttpHeaders& headers) { Json::Value jsonHeaders; - for (IWebService::Headers::const_iterator it = headers.begin(); it != headers.end(); it++ ) + for (IWebService::HttpHeaders::const_iterator it = headers.begin(); it != headers.end(); it++ ) { jsonHeaders[it->first] = it->second; } @@ -108,7 +115,7 @@ } void WasmWebService::PostAsync(const std::string& relativeUri, - const Headers& headers, + const HttpHeaders& headers, const std::string& body, Orthanc::IDynamicObject* payload, MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallable, @@ -119,11 +126,11 @@ std::string headersInJsonString; ToJsonString(headersInJsonString, headers); WasmWebService_PostAsync(successCallable, failureCallable, uri.c_str(), headersInJsonString.c_str(), - body.c_str(), body.size(), payload, timeoutInSeconds); + body.c_str(), body.size(), payload, timeoutInSeconds); } void WasmWebService::DeleteAsync(const std::string& relativeUri, - const Headers& headers, + const HttpHeaders& headers, Orthanc::IDynamicObject* payload, MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallable, MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallable, @@ -137,16 +144,15 @@ } void WasmWebService::GetAsync(const std::string& relativeUri, - const Headers& headers, - Orthanc::IDynamicObject* payload, - MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallable, - MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallable, - unsigned int timeoutInSeconds) + const HttpHeaders& headers, + Orthanc::IDynamicObject* payload, + MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallable, + MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallable, + unsigned int timeoutInSeconds) { std::string uri = baseUri_ + relativeUri; std::string headersInJsonString; ToJsonString(headersInJsonString, headers); WasmWebService_GetAsync(successCallable, failureCallable, uri.c_str(), headersInJsonString.c_str(), payload, timeoutInSeconds); } - }