diff --git a/include/Nazara/Network/WebService.hpp b/include/Nazara/Network/WebService.hpp index acdd8e9ad..577d88a2a 100644 --- a/include/Nazara/Network/WebService.hpp +++ b/include/Nazara/Network/WebService.hpp @@ -9,6 +9,7 @@ #include #include +#include #include #include #include @@ -46,6 +47,7 @@ namespace Nz bool Poll(); + void QueueRequest(const FunctionRef& builder); void QueueRequest(std::unique_ptr&& request); WebService& operator=(const WebService&) = delete; diff --git a/src/Nazara/Network/WebService.cpp b/src/Nazara/Network/WebService.cpp index 0cb4498cf..56192ea88 100644 --- a/src/Nazara/Network/WebService.cpp +++ b/src/Nazara/Network/WebService.cpp @@ -106,6 +106,15 @@ namespace Nz #endif } + void WebService::QueueRequest(const FunctionRef& builder) + { + std::unique_ptr request = AllocateRequest(); + if (!builder(*request)) + return; + + QueueRequest(std::move(request)); + } + void WebService::QueueRequest(std::unique_ptr&& request) { assert(request);