Network/WebService: Add QueueRequest overload taking a builder functor
This commit is contained in:
parent
086152c97d
commit
e01f6730ef
|
|
@ -9,6 +9,7 @@
|
|||
|
||||
#include <Nazara/Network/Config.hpp>
|
||||
#include <Nazara/Network/WebRequest.hpp>
|
||||
#include <NazaraUtils/FunctionRef.hpp>
|
||||
#include <NazaraUtils/MovablePtr.hpp>
|
||||
#include <unordered_map>
|
||||
#include <vector>
|
||||
|
|
@ -46,6 +47,7 @@ namespace Nz
|
|||
|
||||
bool Poll();
|
||||
|
||||
void QueueRequest(const FunctionRef<bool(WebRequest& request)>& builder);
|
||||
void QueueRequest(std::unique_ptr<WebRequest>&& request);
|
||||
|
||||
WebService& operator=(const WebService&) = delete;
|
||||
|
|
|
|||
|
|
@ -106,6 +106,15 @@ namespace Nz
|
|||
#endif
|
||||
}
|
||||
|
||||
void WebService::QueueRequest(const FunctionRef<bool(WebRequest& request)>& builder)
|
||||
{
|
||||
std::unique_ptr<WebRequest> request = AllocateRequest();
|
||||
if (!builder(*request))
|
||||
return;
|
||||
|
||||
QueueRequest(std::move(request));
|
||||
}
|
||||
|
||||
void WebService::QueueRequest(std::unique_ptr<WebRequest>&& request)
|
||||
{
|
||||
assert(request);
|
||||
|
|
|
|||
Loading…
Reference in New Issue