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/Config.hpp>
|
||||||
#include <Nazara/Network/WebRequest.hpp>
|
#include <Nazara/Network/WebRequest.hpp>
|
||||||
|
#include <NazaraUtils/FunctionRef.hpp>
|
||||||
#include <NazaraUtils/MovablePtr.hpp>
|
#include <NazaraUtils/MovablePtr.hpp>
|
||||||
#include <unordered_map>
|
#include <unordered_map>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
@ -46,6 +47,7 @@ namespace Nz
|
||||||
|
|
||||||
bool Poll();
|
bool Poll();
|
||||||
|
|
||||||
|
void QueueRequest(const FunctionRef<bool(WebRequest& request)>& builder);
|
||||||
void QueueRequest(std::unique_ptr<WebRequest>&& request);
|
void QueueRequest(std::unique_ptr<WebRequest>&& request);
|
||||||
|
|
||||||
WebService& operator=(const WebService&) = delete;
|
WebService& operator=(const WebService&) = delete;
|
||||||
|
|
|
||||||
|
|
@ -106,6 +106,15 @@ namespace Nz
|
||||||
#endif
|
#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)
|
void WebService::QueueRequest(std::unique_ptr<WebRequest>&& request)
|
||||||
{
|
{
|
||||||
assert(request);
|
assert(request);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue