AWS SDK for C++  1.9.131
AWS SDK for C++
AWSClient.h
Go to the documentation of this file.
1 
6 #pragma once
7 
15 #include <memory>
16 #include <atomic>
17 
18 struct aws_array_list;
19 
20 namespace Aws
21 {
22  namespace Utils
23  {
24  template<typename R, typename E>
25  class Outcome;
26 
27  namespace Xml
28  {
29  class XmlDocument;
30  } // namespace Xml
31 
32  namespace Json
33  {
34  class JsonValue;
35  } // namespace Json
36 
37  namespace RateLimits
38  {
40  } // namespace RateLimits
41 
42  namespace Crypto
43  {
44  class MD5;
45  } // namespace Crypto
46  } // namespace Utils
47 
48  namespace Http
49  {
50  class HttpClient;
51 
52  class HttpClientFactory;
53 
54  class HttpRequest;
55 
56  class HttpResponse;
57 
58  class URI;
59  } // namespace Http
60 
61  namespace Auth
62  {
63  AWS_CORE_API extern const char SIGV4_SIGNER[];
64  AWS_CORE_API extern const char NULL_SIGNER[];
65  }
66 
68 
69  namespace Client
70  {
71  template<typename ERROR_TYPE>
72  class AWSError;
73  class AWSErrorMarshaller;
74  class AWSRestfulJsonErrorMarshaller;
75  class AWSAuthSigner;
76  struct ClientConfiguration;
77  class RetryStrategy;
78 
81 
86  {
87  public:
94  const std::shared_ptr<Aws::Client::AWSAuthSigner>& signer,
95  const std::shared_ptr<AWSErrorMarshaller>& errorMarshaller);
96 
103  const std::shared_ptr<Aws::Auth::AWSAuthSignerProvider>& signerProvider,
104  const std::shared_ptr<AWSErrorMarshaller>& errorMarshaller);
105 
106  virtual ~AWSClient() { };
107 
112  Aws::String GeneratePresignedUrl(Aws::Http::URI& uri, Aws::Http::HttpMethod method, long long expirationInSeconds = 0);
113 
118  Aws::String GeneratePresignedUrl(Aws::Http::URI& uri, Aws::Http::HttpMethod method, const Aws::Http::HeaderValueCollection& customizedHeaders, long long expirationInSeconds = 0);
119 
124  Aws::String GeneratePresignedUrl(Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char* region, long long expirationInSeconds = 0) const;
125 
130  Aws::String GeneratePresignedUrl(Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char* region, const Aws::Http::HeaderValueCollection& customizedHeaders, long long expirationInSeconds = 0);
131 
136  Aws::String GeneratePresignedUrl(Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char* region, const char* serviceName, long long expirationInSeconds = 0) const;
137 
142  Aws::String GeneratePresignedUrl(Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char* region, const char* serviceName, const Aws::Http::HeaderValueCollection& customizedHeaders, long long expirationInSeconds = 0);
143 
148  Aws::String GeneratePresignedUrl(Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char* region, const char* serviceName, const char* signerName, long long expirationInSeconds = 0) const;
149 
154  Aws::String GeneratePresignedUrl(Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char* region, const char* serviceName, const char* signerName, const Aws::Http::HeaderValueCollection& customizedHeaders, long long expirationInSeconds = 0);
155 
157  const Aws::Http::QueryStringParameterCollection& extraParams = Aws::Http::QueryStringParameterCollection(), long long expirationInSeconds = 0) const;
158 
159  Aws::String GeneratePresignedUrl(const Aws::AmazonWebServiceRequest& request, Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char* region, const char* serviceName,
160  const char* signerName, const Aws::Http::QueryStringParameterCollection& extraParams = Aws::Http::QueryStringParameterCollection(), long long expirationInSeconds = 0) const;
161 
162  Aws::String GeneratePresignedUrl(const Aws::AmazonWebServiceRequest& request, Aws::Http::URI& uri, Aws::Http::HttpMethod method, const char* region, const char* serviceName,
163  const Aws::Http::QueryStringParameterCollection& extraParams = Aws::Http::QueryStringParameterCollection(), long long expirationInSeconds = 0) const;
164 
166  const Aws::Http::QueryStringParameterCollection& extraParams = Aws::Http::QueryStringParameterCollection(), long long expirationInSeconds = 0) const;
167 
173 
178 
179  inline virtual const char* GetServiceClientName() const { return m_serviceName.c_str(); }
185  virtual void SetServiceClientName(const Aws::String& name);
186 
187  protected:
193  const Aws::AmazonWebServiceRequest& request,
194  Http::HttpMethod httpMethod,
195  const char* signerName,
196  const char* signerRegionOverride = nullptr,
197  const char* signerServiceNameOverride = nullptr) const;
198 
207  Http::HttpMethod httpMethod,
208  const char* signerName,
209  const char* requestName = "",
210  const char* signerRegionOverride = nullptr,
211  const char* signerServiceNameOverride = nullptr) const;
212 
217  HttpResponseOutcome AttemptOneRequest(const std::shared_ptr<Http::HttpRequest>& httpRequest,
218  const Aws::AmazonWebServiceRequest& request,
219  const char* signerName,
220  const char* signerRegionOverride = nullptr,
221  const char* signerServiceNameOverride = nullptr) const;
222 
230  HttpResponseOutcome AttemptOneRequest(const std::shared_ptr<Http::HttpRequest>& httpRequest,
231  const char* signerName,
232  const char* requestName = "",
233  const char* signerRegionOverride = nullptr,
234  const char* signerServiceNameOverride = nullptr) const;
235 
241  const Aws::AmazonWebServiceRequest& request,
242  Http::HttpMethod method = Http::HttpMethod::HTTP_POST,
243  const char* signerName = Aws::Auth::SIGV4_SIGNER,
244  const char* signerRegionOverride = nullptr,
245  const char* signerServiceNameOverride = nullptr) const;
246 
255  Http::HttpMethod method = Http::HttpMethod::HTTP_POST,
256  const char* signerName = Aws::Auth::SIGV4_SIGNER,
257  const char* requestName = "",
258  const char* signerRegionOverride = nullptr,
259  const char* signerServiceNameOverride = nullptr) const;
260 
264  virtual AWSError<CoreErrors> BuildAWSError(const std::shared_ptr<Aws::Http::HttpResponse>& response) const = 0;
265 
269  virtual void BuildHttpRequest(const Aws::AmazonWebServiceRequest& request,
270  const std::shared_ptr<Aws::Http::HttpRequest>& httpRequest) const;
271 
275  const std::shared_ptr<AWSErrorMarshaller>& GetErrorMarshaller() const
276  {
277  return m_errorMarshaller;
278  }
279 
283  Aws::Client::AWSAuthSigner* GetSignerByName(const char* name) const;
284  protected:
285 
293  std::shared_ptr<Aws::Http::HttpRequest> BuildAndSignHttpRequest(const Aws::Http::URI& uri,
294  const Aws::AmazonWebServiceRequest& request,
295  Http::HttpMethod method, const char* signerName) const;
296 
300  std::shared_ptr<Aws::Http::HttpResponse> MakeHttpRequest(std::shared_ptr<Aws::Http::HttpRequest>& request) const;
302  private:
307  bool AdjustClockSkew(HttpResponseOutcome& outcome, const char* signerName) const;
308  void AddHeadersToRequest(const std::shared_ptr<Aws::Http::HttpRequest>& httpRequest, const Http::HeaderValueCollection& headerValues) const;
309  void AddContentBodyToRequest(const std::shared_ptr<Aws::Http::HttpRequest>& httpRequest, const std::shared_ptr<Aws::IOStream>& body,
310  bool needsContentMd5 = false, bool isChunked = false) const;
311  void AddCommonHeaders(Aws::Http::HttpRequest& httpRequest) const;
312  void InitializeGlobalStatics();
313  std::shared_ptr<Aws::Http::HttpRequest> ConvertToRequestForPresigning(const Aws::AmazonWebServiceRequest& request, Aws::Http::URI& uri,
314  Aws::Http::HttpMethod method, const Aws::Http::QueryStringParameterCollection& extraParams) const;
315 
316  std::shared_ptr<Aws::Http::HttpClient> m_httpClient;
317  std::shared_ptr<Aws::Auth::AWSAuthSignerProvider> m_signerProvider;
318  std::shared_ptr<AWSErrorMarshaller> m_errorMarshaller;
319  std::shared_ptr<RetryStrategy> m_retryStrategy;
320  std::shared_ptr<Aws::Utils::RateLimits::RateLimiterInterface> m_writeRateLimiter;
321  std::shared_ptr<Aws::Utils::RateLimits::RateLimiterInterface> m_readRateLimiter;
322  Aws::String m_userAgent;
323  bool m_customizedUserAgent;
324  std::shared_ptr<Aws::Utils::Crypto::Hash> m_hash;
325  long m_requestTimeoutMs;
326  bool m_enableClockSkewAdjustment;
327  Aws::String m_serviceName;
328  };
329 
332 
338  {
339  public:
341 
346  const std::shared_ptr<Aws::Client::AWSAuthSigner>& signer,
347  const std::shared_ptr<AWSErrorMarshaller>& errorMarshaller);
348 
353  const std::shared_ptr<Aws::Auth::AWSAuthSignerProvider>& signerProvider,
354  const std::shared_ptr<AWSErrorMarshaller>& errorMarshaller);
355 
356  virtual ~AWSJsonClient() = default;
357 
358  protected:
362  virtual AWSError<CoreErrors> BuildAWSError(const std::shared_ptr<Aws::Http::HttpResponse>& response) const override;
363 
371  const Aws::AmazonWebServiceRequest& request,
372  Http::HttpMethod method = Http::HttpMethod::HTTP_POST,
373  const char* signerName = Aws::Auth::SIGV4_SIGNER,
374  const char* signerRegionOverride = nullptr,
375  const char* signerServiceNameOverride = nullptr) const;
376 
387  Http::HttpMethod method = Http::HttpMethod::HTTP_POST,
388  const char* signerName = Aws::Auth::SIGV4_SIGNER,
389  const char* requestName = "",
390  const char* signerRegionOverride = nullptr,
391  const char* signerServiceNameOverride = nullptr) const;
392 
393  JsonOutcome MakeEventStreamRequest(std::shared_ptr<Aws::Http::HttpRequest>& request) const;
394  };
395 
397 
403  {
404  public:
405 
407 
409  const std::shared_ptr<Aws::Client::AWSAuthSigner>& signer,
410  const std::shared_ptr<AWSErrorMarshaller>& errorMarshaller);
411 
413  const std::shared_ptr<Aws::Auth::AWSAuthSignerProvider>& signerProvider,
414  const std::shared_ptr<AWSErrorMarshaller>& errorMarshaller);
415 
416  virtual ~AWSXMLClient() = default;
417 
418  protected:
422  virtual AWSError<CoreErrors> BuildAWSError(const std::shared_ptr<Aws::Http::HttpResponse>& response) const override;
423 
431  const Aws::AmazonWebServiceRequest& request,
432  Http::HttpMethod method = Http::HttpMethod::HTTP_POST,
433  const char* signerName = Aws::Auth::SIGV4_SIGNER,
434  const char* signerRegionOverride = nullptr,
435  const char* signerServiceNameOverride = nullptr) const;
436 
437 
448  Http::HttpMethod method = Http::HttpMethod::HTTP_POST,
449  const char* signerName = Aws::Auth::SIGV4_SIGNER,
450  const char* requestName = "",
451  const char* signerRegionOverride = nullptr,
452  const char* signerServiceNameOverride = nullptr) const;
453 
458  const Aws::AmazonWebServiceRequest& request,
459  Http::HttpMethod method = Http::HttpMethod::HTTP_POST,
460  const char* singerName = Aws::Auth::SIGV4_SIGNER,
461  const char* signerRegionOverride = nullptr,
462  const char* signerServiceNameOverride = nullptr) const;
463 
470  Http::HttpMethod method = Http::HttpMethod::HTTP_POST,
471  const char* signerName = Aws::Auth::SIGV4_SIGNER,
472  const char* requestName = "",
473  const char* signerRegionOverride = nullptr,
474  const char* signerServiceNameOverride = nullptr) const;
475  };
476 
477  } // namespace Client
478 } // namespace Aws
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(const Aws::AmazonWebServiceRequest &request, Aws::Http::URI &uri, Aws::Http::HttpMethod method, const char *region, const Aws::Http::QueryStringParameterCollection &extraParams=Aws::Http::QueryStringParameterCollection(), long long expirationInSeconds=0) const
Aws::AmazonWebServiceRequest
Definition: AmazonWebServiceRequest.h:37
Aws::Client::AWSXMLClient::AWSXMLClient
AWSXMLClient(const Aws::Client::ClientConfiguration &configuration, const std::shared_ptr< Aws::Client::AWSAuthSigner > &signer, const std::shared_ptr< AWSErrorMarshaller > &errorMarshaller)
Aws::Http::URI
Definition: URI.h:32
Aws::Client::AWSJsonClient::MakeRequest
JsonOutcome MakeRequest(const Aws::Http::URI &uri, const Aws::AmazonWebServiceRequest &request, Http::HttpMethod method=Http::HttpMethod::HTTP_POST, const char *signerName=Aws::Auth::SIGV4_SIGNER, const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(Aws::Http::URI &uri, Aws::Http::HttpMethod method, const char *region, const char *serviceName, const char *signerName, long long expirationInSeconds=0) const
Aws::Client::AWSAuthSigner
Definition: AWSAuthSigner.h:66
Aws::Client::XmlOutcome
Utils::Outcome< AmazonWebServiceResult< Utils::Xml::XmlDocument >, AWSError< CoreErrors > > XmlOutcome
Definition: AWSClient.h:396
Aws::Client::AWSClient::MakeRequestWithUnparsedResponse
StreamOutcome MakeRequestWithUnparsedResponse(const Aws::Http::URI &uri, const Aws::AmazonWebServiceRequest &request, Http::HttpMethod method=Http::HttpMethod::HTTP_POST, const char *signerName=Aws::Auth::SIGV4_SIGNER, const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(Aws::Http::URI &uri, Aws::Http::HttpMethod method, const char *region, const Aws::Http::HeaderValueCollection &customizedHeaders, long long expirationInSeconds=0)
AWS_CORE_API
#define AWS_CORE_API
Definition: Core_EXPORTS.h:25
CoreErrors.h
Aws::Http::HeaderValueCollection
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
Definition: HttpTypes.h:53
Aws::Client::GetAuthorizationHeader
AWS_CORE_API Aws::String GetAuthorizationHeader(const Aws::Http::HttpRequest &httpRequest)
Aws::Http::HttpRequest
Definition: HttpRequest.h:73
Aws::Client::AWSXMLClient::MakeRequestWithEventStream
XmlOutcome MakeRequestWithEventStream(const Aws::Http::URI &uri, const Aws::AmazonWebServiceRequest &request, Http::HttpMethod method=Http::HttpMethod::HTTP_POST, const char *singerName=Aws::Auth::SIGV4_SIGNER, const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
Aws::Utils::Crypto::MD5
Definition: MD5.h:40
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(Aws::Http::URI &uri, Aws::Http::HttpMethod method, const char *region, long long expirationInSeconds=0) const
Aws::Client::AWSClient::EnableRequestProcessing
void EnableRequestProcessing()
Aws::Http::HttpMethod
HttpMethod
Definition: HttpTypes.h:24
Aws::Client::AWSJsonClient::AWSJsonClient
AWSJsonClient(const Aws::Client::ClientConfiguration &configuration, const std::shared_ptr< Aws::Auth::AWSAuthSignerProvider > &signerProvider, const std::shared_ptr< AWSErrorMarshaller > &errorMarshaller)
Aws::Auth::SIGV4_SIGNER
AWS_CORE_API const char SIGV4_SIGNER[]
Definition: AWSClient.h:63
Aws::Client::AWSClient::SetServiceClientName
virtual void SetServiceClientName(const Aws::String &name)
Aws::Client::AWSJsonClient::MakeEventStreamRequest
JsonOutcome MakeEventStreamRequest(std::shared_ptr< Aws::Http::HttpRequest > &request) const
Aws::Client::AWSXMLClient::AWSXMLClient
AWSXMLClient(const Aws::Client::ClientConfiguration &configuration, const std::shared_ptr< Aws::Auth::AWSAuthSignerProvider > &signerProvider, const std::shared_ptr< AWSErrorMarshaller > &errorMarshaller)
Aws::Client::AWSClient::BuildAWSError
virtual AWSError< CoreErrors > BuildAWSError(const std::shared_ptr< Aws::Http::HttpResponse > &response) const =0
Aws::Client::AWSClient::AttemptExhaustively
HttpResponseOutcome AttemptExhaustively(const Aws::Http::URI &uri, const Aws::AmazonWebServiceRequest &request, Http::HttpMethod httpMethod, const char *signerName, const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
Aws::Client::AWSXMLClient::BASECLASS
AWSClient BASECLASS
Definition: AWSClient.h:406
Aws::Client::AWSClient::AttemptExhaustively
HttpResponseOutcome AttemptExhaustively(const Aws::Http::URI &uri, Http::HttpMethod httpMethod, const char *signerName, const char *requestName="", const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
Aws::Client::AWSXMLClient::MakeRequestWithEventStream
XmlOutcome MakeRequestWithEventStream(const Aws::Http::URI &uri, Http::HttpMethod method=Http::HttpMethod::HTTP_POST, const char *signerName=Aws::Auth::SIGV4_SIGNER, const char *requestName="", const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
Aws::Client::AWSXMLClient::~AWSXMLClient
virtual ~AWSXMLClient()=default
Aws::Client::AWSClient::m_region
Aws::String m_region
Definition: AWSClient.h:301
Aws::Client::AWSClient::BuildAndSignHttpRequest
std::shared_ptr< Aws::Http::HttpRequest > BuildAndSignHttpRequest(const Aws::Http::URI &uri, const Aws::AmazonWebServiceRequest &request, Http::HttpMethod method, const char *signerName) const
Aws::Client::AWSJsonClient::BASECLASS
AWSClient BASECLASS
Definition: AWSClient.h:340
AmazonWebServiceResult.h
AWSAuthSignerProvider.h
Aws::Client::AWSClient::MakeRequestWithUnparsedResponse
StreamOutcome MakeRequestWithUnparsedResponse(const Aws::Http::URI &uri, Http::HttpMethod method=Http::HttpMethod::HTTP_POST, const char *signerName=Aws::Auth::SIGV4_SIGNER, const char *requestName="", const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
Aws::Client::ClientConfiguration
Definition: ClientConfiguration.h:53
Aws::Http::QueryStringParameterCollection
Aws::MultiMap< Aws::String, Aws::String > QueryStringParameterCollection
Definition: URI.h:26
Aws::Client::AWSClient
Definition: AWSClient.h:86
Aws::Client::StreamOutcome
Utils::Outcome< AmazonWebServiceResult< Utils::Stream::ResponseStream >, AWSError< CoreErrors > > StreamOutcome
Definition: AWSClient.h:80
Aws::Client::AWSClient::DisableRequestProcessing
void DisableRequestProcessing()
Aws::Client::AWSClient::BuildHttpRequest
virtual void BuildHttpRequest(const Aws::AmazonWebServiceRequest &request, const std::shared_ptr< Aws::Http::HttpRequest > &httpRequest) const
Aws::Client::AWSXMLClient::BuildAWSError
virtual AWSError< CoreErrors > BuildAWSError(const std::shared_ptr< Aws::Http::HttpResponse > &response) const override
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(const Aws::AmazonWebServiceRequest &request, Aws::Http::URI &uri, Aws::Http::HttpMethod method, const char *region, const char *serviceName, const char *signerName, const Aws::Http::QueryStringParameterCollection &extraParams=Aws::Http::QueryStringParameterCollection(), long long expirationInSeconds=0) const
Aws::Client::AWSClient::GetSignerByName
Aws::Client::AWSAuthSigner * GetSignerByName(const char *name) const
Aws::Client::AWSClient::GetServiceClientName
virtual const char * GetServiceClientName() const
Definition: AWSClient.h:179
Aws::Client::AWSClient::AttemptOneRequest
HttpResponseOutcome AttemptOneRequest(const std::shared_ptr< Http::HttpRequest > &httpRequest, const char *signerName, const char *requestName="", const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
AWSString.h
Aws::Client::AWSJsonClient::MakeRequest
JsonOutcome MakeRequest(const Aws::Http::URI &uri, Http::HttpMethod method=Http::HttpMethod::HTTP_POST, const char *signerName=Aws::Auth::SIGV4_SIGNER, const char *requestName="", const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
Aws::Client::AWSJsonClient
Definition: AWSClient.h:338
Aws::Client::AWSError
Definition: AWSError.h:42
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(Aws::Http::URI &uri, Aws::Http::HttpMethod method, const char *region, const char *serviceName, const char *signerName, const Aws::Http::HeaderValueCollection &customizedHeaders, long long expirationInSeconds=0)
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(Aws::Http::URI &uri, Aws::Http::HttpMethod method, const char *region, const char *serviceName, const Aws::Http::HeaderValueCollection &customizedHeaders, long long expirationInSeconds=0)
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(Aws::Http::URI &uri, Aws::Http::HttpMethod method, const Aws::Http::HeaderValueCollection &customizedHeaders, long long expirationInSeconds=0)
Aws::Client::AWSClient::GetErrorMarshaller
const std::shared_ptr< AWSErrorMarshaller > & GetErrorMarshaller() const
Definition: AWSClient.h:275
Aws::Client::AWSClient::~AWSClient
virtual ~AWSClient()
Definition: AWSClient.h:106
Aws::Client::AWSXMLClient::MakeRequest
XmlOutcome MakeRequest(const Aws::Http::URI &uri, const Aws::AmazonWebServiceRequest &request, Http::HttpMethod method=Http::HttpMethod::HTTP_POST, const char *signerName=Aws::Auth::SIGV4_SIGNER, const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
Core_EXPORTS.h
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(const Aws::AmazonWebServiceRequest &request, Aws::Http::URI &uri, Aws::Http::HttpMethod method, const char *region, const char *serviceName, const Aws::Http::QueryStringParameterCollection &extraParams=Aws::Http::QueryStringParameterCollection(), long long expirationInSeconds=0) const
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(const Aws::AmazonWebServiceRequest &request, Aws::Http::URI &uri, Aws::Http::HttpMethod method, const Aws::Http::QueryStringParameterCollection &extraParams=Aws::Http::QueryStringParameterCollection(), long long expirationInSeconds=0) const
Aws
Definition: AccessManagementClient.h:15
HttpTypes.h
Aws::Client::AWSClient::AttemptOneRequest
HttpResponseOutcome AttemptOneRequest(const std::shared_ptr< Http::HttpRequest > &httpRequest, const Aws::AmazonWebServiceRequest &request, const char *signerName, const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
Aws::Utils::RateLimits::RateLimiterInterface
Definition: RateLimiterInterface.h:24
Aws::Utils::Outcome
Definition: Outcome.h:26
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::Client::JsonOutcome
Utils::Outcome< AmazonWebServiceResult< Utils::Json::JsonValue >, AWSError< CoreErrors > > JsonOutcome
Definition: AWSClient.h:330
Aws::Client::AWSClient::AWSClient
AWSClient(const Aws::Client::ClientConfiguration &configuration, const std::shared_ptr< Aws::Client::AWSAuthSigner > &signer, const std::shared_ptr< AWSErrorMarshaller > &errorMarshaller)
Aws::Client::AWSXMLClient::MakeRequest
XmlOutcome MakeRequest(const Aws::Http::URI &uri, Http::HttpMethod method=Http::HttpMethod::HTTP_POST, const char *signerName=Aws::Auth::SIGV4_SIGNER, const char *requestName="", const char *signerRegionOverride=nullptr, const char *signerServiceNameOverride=nullptr) const
Aws::Client::HttpResponseOutcome
Utils::Outcome< std::shared_ptr< Aws::Http::HttpResponse >, AWSError< CoreErrors > > HttpResponseOutcome
Definition: AWSClient.h:77
Aws::Client::AWSJsonClient::~AWSJsonClient
virtual ~AWSJsonClient()=default
Aws::Client::AWSJsonClient::AWSJsonClient
AWSJsonClient(const Aws::Client::ClientConfiguration &configuration, const std::shared_ptr< Aws::Client::AWSAuthSigner > &signer, const std::shared_ptr< AWSErrorMarshaller > &errorMarshaller)
Aws::Client::AWSJsonClient::BuildAWSError
virtual AWSError< CoreErrors > BuildAWSError(const std::shared_ptr< Aws::Http::HttpResponse > &response) const override
Aws::Client::AWSXMLClient
Definition: AWSClient.h:403
Hash.h
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(Aws::Http::URI &uri, Aws::Http::HttpMethod method, long long expirationInSeconds=0)
Aws::Client::AWSClient::GeneratePresignedUrl
Aws::String GeneratePresignedUrl(Aws::Http::URI &uri, Aws::Http::HttpMethod method, const char *region, const char *serviceName, long long expirationInSeconds=0) const
Aws::Client::AWSClient::MakeHttpRequest
std::shared_ptr< Aws::Http::HttpResponse > MakeHttpRequest(std::shared_ptr< Aws::Http::HttpRequest > &request) const
Aws::Client::AWSClient::AWSClient
AWSClient(const Aws::Client::ClientConfiguration &configuration, const std::shared_ptr< Aws::Auth::AWSAuthSignerProvider > &signerProvider, const std::shared_ptr< AWSErrorMarshaller > &errorMarshaller)
Aws::Auth::NULL_SIGNER
AWS_CORE_API const char NULL_SIGNER[]
Definition: AWSClient.h:64