aboutsummaryrefslogtreecommitdiff
path: root/src/zenhttp/clients/httpclientcpr.h
diff options
context:
space:
mode:
authorDan Engelbrecht <[email protected]>2025-10-20 14:50:27 +0200
committerGitHub Enterprise <[email protected]>2025-10-20 14:50:27 +0200
commite36391c0f19fe8abcb9c1cbabfd9c69248079c76 (patch)
tree0c7357ab73ab7b8b755e442454b7741293fbad4d /src/zenhttp/clients/httpclientcpr.h
parentMr/dashboard stats summary tweak (#592) (diff)
downloadzen-e36391c0f19fe8abcb9c1cbabfd9c69248079c76.tar.xz
zen-e36391c0f19fe8abcb9c1cbabfd9c69248079c76.zip
silence warnings in CprHttpClient if request was aborted (#591)
* silence warnings in CprHttpClient if request was aborted * refactor CprHttpClient
Diffstat (limited to 'src/zenhttp/clients/httpclientcpr.h')
-rw-r--r--src/zenhttp/clients/httpclientcpr.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/zenhttp/clients/httpclientcpr.h b/src/zenhttp/clients/httpclientcpr.h
index 26cc59d23..94d57fb43 100644
--- a/src/zenhttp/clients/httpclientcpr.h
+++ b/src/zenhttp/clients/httpclientcpr.h
@@ -146,6 +146,23 @@ private:
std::vector<cpr::Session*> m_Sessions;
void ReleaseSession(cpr::Session*);
+
+ cpr::Response DoWithRetry(std::string_view SessionId,
+ std::function<cpr::Response()>&& Func,
+ std::unique_ptr<detail::TempPayloadFile>& PayloadFile);
+ cpr::Response DoWithRetry(
+ std::string_view SessionId,
+ std::function<cpr::Response()>&& Func,
+ std::function<bool(cpr::Response& Result)>&& Validate = [](cpr::Response&) { return true; });
+
+ bool ValidatePayload(cpr::Response& Response, std::unique_ptr<detail::TempPayloadFile>& PayloadFile);
+
+ HttpClient::Response CommonResponse(std::string_view SessionId, cpr::Response&& HttpResponse, IoBuffer&& Payload);
+
+ HttpClient::Response ResponseWithPayload(std::string_view SessionId,
+ cpr::Response& HttpResponse,
+ const HttpResponseCode WorkResponseCode,
+ IoBuffer&& Payload);
};
} // namespace zen