Mercurial > hg > orthanc-stone
diff Platforms/Wasm/WasmWebService.cpp @ 309:14ef1227120f am-callable-and-promise
web services: better handling of failures
author | am@osimis.io |
---|---|
date | Fri, 28 Sep 2018 15:02:43 +0200 |
parents | ed1a4302154f |
children | aad37d0b6407 |
line wrap: on
line diff
--- a/Platforms/Wasm/WasmWebService.cpp Tue Sep 25 15:14:53 2018 +0200 +++ b/Platforms/Wasm/WasmWebService.cpp Fri Sep 28 15:02:43 2018 +0200 @@ -11,7 +11,8 @@ void* callableFailure, const char* uri, const char* headersInJsonString, - void* payload); + void* payload, + unsigned int timeoutInSeconds); extern void WasmWebService_PostAsync(void* callableSuccess, void* callableFailure, @@ -19,7 +20,8 @@ const char* headersInJsonString, const void* body, size_t bodySize, - void* payload); + void* payload, + unsigned int timeoutInSeconds); void EMSCRIPTEN_KEEPALIVE WasmWebService_NotifyError(void* failureCallable, @@ -100,29 +102,31 @@ } void WasmWebService::PostAsync(const std::string& relativeUri, - const Headers& headers, - const std::string& body, - Orthanc::IDynamicObject* payload, - MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallable, - MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallable) + const Headers& headers, + const std::string& body, + 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_PostAsync(successCallable, failureCallable, uri.c_str(), headersInJsonString.c_str(), - body.c_str(), body.size(), payload); + body.c_str(), body.size(), payload, timeoutInSeconds); } void WasmWebService::GetAsync(const std::string& relativeUri, - const Headers& headers, - Orthanc::IDynamicObject* payload, - MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallable, - MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallable) + const Headers& 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); + WasmWebService_GetAsync(successCallable, failureCallable, uri.c_str(), headersInJsonString.c_str(), payload, timeoutInSeconds); } }