10Duke Enterprise C++ Client
Loading...
Searching...
No Matches
LibcurlHTTPClient.h
1#ifndef TENDUKE_HTTP_LIBCURLHTTPCLIENT_H
2#define TENDUKE_HTTP_LIBCURLHTTPCLIENT_H
3
4#include "../net/LibcurlURLs.h"
5
6#include "http/HTTPClient.h"
7#include "net/URLEncoder.h"
8
9namespace tenduke { namespace http { namespace curl {
10
11
16{
17public:
26 explicit LibCurlHTTPClient(
27 std::string userAgent = {},
28 long defaultConnectionTimeoutMs = DEFAULT_CONNECTION_TIMEOUT_MS,
29 long defaultTimeoutMs = DEFAULT_TIMEOUT_MS,
30 bool blindlyTrustSSLCertificates = false,
31 bool verbose = false
32 );
33
34 ~LibCurlHTTPClient() override;
35
36// tenduke::http::HTTPClient interface
37public:
39 std::unique_ptr<tenduke::http::HTTPCall> call(std::shared_ptr<const tenduke::http::HTTPRequest> request) const override;
40
41private:
42 const long defaultConnectionTimeoutMs;
43 const long defaultTimeoutMs;
44 const std::string userAgent;
45 const bool blindlyTrustSSLCertificates;
46 const bool verbose;
47 const ::tenduke::net::curl::LibCurlURLs urls;
48};
49
50
51}}}
52
53#endif // TENDUKE_HTTP_LIBCURLHTTPCLIENT_H
tenduke::http::HTTPRequestBuilder request() const override
Starts building request.
Definition LibcurlHTTPClient.cpp:32
LibCurlHTTPClient(std::string userAgent={}, long defaultConnectionTimeoutMs=DEFAULT_CONNECTION_TIMEOUT_MS, long defaultTimeoutMs=DEFAULT_TIMEOUT_MS, bool blindlyTrustSSLCertificates=false, bool verbose=false)
Constructs instance with LibCurlURLEncoder.
Definition LibcurlHTTPClient.cpp:12
A simple HTTP-client.
Definition HTTPClient.h:19
Builds HTTPRequest.
Definition HTTPRequestBuilder.h:23
std::unique_ptr< tenduke::http::HTTPCall > call(std::shared_ptr< const tenduke::http::HTTPRequest > request) const override
Creates new HTTPCall from given HTTPRequest.
Definition LibcurlHTTPClient.cpp:42
tenduke::http::HTTPRequestBuilder request() const override
Starts building request.
Definition LibcurlHTTPClient.cpp:32
LibCurlHTTPClient(std::string userAgent={}, long defaultConnectionTimeoutMs=DEFAULT_CONNECTION_TIMEOUT_MS, long defaultTimeoutMs=DEFAULT_TIMEOUT_MS, bool blindlyTrustSSLCertificates=false, bool verbose=false)
Constructs instance with LibCurlURLEncoder.
Definition LibcurlHTTPClient.cpp:12
Implementation of HTTP-client using libcurl
Definition LibcurlHTTPCall.h:11
HTTP-related services.
Definition BadRequest.h:6
const long DEFAULT_CONNECTION_TIMEOUT_MS
Default connection time out in milliseconds.
Definition HTTPRequest.h:14
const long DEFAULT_TIMEOUT_MS
Default total time out in milliseconds.
Definition HTTPRequest.h:17
Root for classes, functions and globals of 10Duke C++ Client.
Definition APIRequest.h:4