AWS SDK for C++
1.8.126
AWS SDK for C++
|
#include <ClientConfiguration.h>
Public Member Functions | |
ClientConfiguration () | |
ClientConfiguration (const char *profileName) | |
This mutable structure is used to configure any of the AWS clients. Default values can only be overwritten prior to passing to the client constructors.
Definition at line 50 of file ClientConfiguration.h.
Aws::Client::ClientConfiguration::ClientConfiguration | ( | ) |
Aws::Client::ClientConfiguration::ClientConfiguration | ( | const char * | profileName | ) |
Create a configuration based on settings in the aws configuration file for the given profile name. The configuration file location can be set via the environment variable AWS_CONFIG_FILE
Aws::String Aws::Client::ClientConfiguration::caFile |
If you certificate file is different from the default, you can tell clients that aren't using the default trust store where to find your ca file. If you are on windows or apple, you likely don't want this.
Definition at line 187 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::caPath |
If your Certificate Authority path is different from the default, you can tell clients that aren't using the default trust store where to find your CA trust store. If you are on windows or apple, you likely don't want this.
Definition at line 181 of file ClientConfiguration.h.
long Aws::Client::ClientConfiguration::connectTimeoutMs |
Socket connect timeout. Default 1000 ms. Unless you are very far away from your the data center you are talking to. 1000ms is more than sufficient.
Definition at line 97 of file ClientConfiguration.h.
bool Aws::Client::ClientConfiguration::disableExpectHeader |
Only works for Curl http client. Curl will by default add "Expect: 100-Continue" header in a Http request so as to avoid sending http payload to wire if server respond error immediately after receiving the header. Set this option to true will tell Curl to send http request header and body together. This can save one round-trip time and especially useful when the payload is small and network latency is more important. But be careful when Http request has large payload such S3 PutObject. You don't want to spend long time sending a large payload just getting a error response for server. The default value will be false.
Definition at line 214 of file ClientConfiguration.h.
bool Aws::Client::ClientConfiguration::enableClockSkewAdjustment |
If set to true clock skew will be adjusted after each http attempt, default to true.
Definition at line 219 of file ClientConfiguration.h.
bool Aws::Client::ClientConfiguration::enableEndpointDiscovery |
Enable endpoint discovery For some services to dynamically set up their endpoints for different requests. Defaults to false, it's an opt-in feature. If disabled, regional or overriden endpoint will be used instead. If a request requires endpoint discovery but you disabled it. The request will never succeed.
Definition at line 235 of file ClientConfiguration.h.
bool Aws::Client::ClientConfiguration::enableHostPrefixInjection |
Enable host prefix injection. For services whose endpoint is injectable. e.g. servicediscovery, you can modify the http host's prefix so as to add "data-" prefix for DiscoverInstances request. Default to true, enabled. You can disable it for testing purpose.
Definition at line 226 of file ClientConfiguration.h.
bool Aws::Client::ClientConfiguration::enableTcpKeepAlive |
Enable TCP keep-alive. Default true; No-op for WinHTTP, WinINet and IXMLHTTPRequest2 client.
Definition at line 102 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::endpointOverride |
Override the http endpoint used to talk to a service.
Definition at line 121 of file ClientConfiguration.h.
std::shared_ptr<Aws::Utils::Threading::Executor> Aws::Client::ClientConfiguration::executor |
Threading Executor implementation. Default uses std::thread::detach()
Definition at line 170 of file ClientConfiguration.h.
FollowRedirectsPolicy Aws::Client::ClientConfiguration::followRedirects |
Sets the behavior how http stack handles 30x redirect codes.
Definition at line 203 of file ClientConfiguration.h.
Aws::Http::TransferLibType Aws::Client::ClientConfiguration::httpLibOverride |
Override the http implementation the default factory returns.
Definition at line 199 of file ClientConfiguration.h.
long Aws::Client::ClientConfiguration::httpRequestTimeoutMs |
This is currently only applicable for Curl to set the http request level timeout, including possible dns lookup time, connection establish time, ssl handshake time and actual data transmission time. the corresponding Curl option is CURLOPT_TIMEOUT_MS defaults to 0, no http request level timeout.
Definition at line 85 of file ClientConfiguration.h.
unsigned long Aws::Client::ClientConfiguration::lowSpeedLimit |
Average transfer speed in bytes per second that the transfer should be below during the request timeout interval for it to be considered too slow and abort. Default 1 byte/second. Only for CURL client currently.
Definition at line 113 of file ClientConfiguration.h.
unsigned Aws::Client::ClientConfiguration::maxConnections |
Max concurrent tcp connections for a single http client to use. Default 25.
Definition at line 79 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::profileName |
profileName in config file that will be used by this object to reslove more configurations.
Definition at line 240 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::proxyHost |
If you have users going through a proxy, set the host here.
Definition at line 129 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::proxyPassword |
If you have users going through a proxy, set the password here.
Definition at line 141 of file ClientConfiguration.h.
unsigned Aws::Client::ClientConfiguration::proxyPort |
If you have users going through a proxy, set the port here.
Definition at line 133 of file ClientConfiguration.h.
Aws::Http::Scheme Aws::Client::ClientConfiguration::proxyScheme |
If you have users going through a proxy, set the proxy scheme here. Default HTTP
Definition at line 125 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::proxySSLCertPath |
SSL Certificate file to use for connecting to an HTTPS proxy. Used to set CURLOPT_PROXY_SSLCERT in libcurl. Example: client.pem
Definition at line 146 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::proxySSLCertType |
Type of proxy client SSL certificate. Used to set CURLOPT_PROXY_SSLCERTTYPE in libcurl. Example: PEM
Definition at line 151 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::proxySSLKeyPassword |
Passphrase to the private key file used to connect to an HTTPS proxy. Used to set CURLOPT_PROXY_KEYPASSWD in libcurl. Example: password1
Definition at line 166 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::proxySSLKeyPath |
Private key file to use for connecting to an HTTPS proxy. Used to set CURLOPT_PROXY_SSLKEY in libcurl. Example: key.pem
Definition at line 156 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::proxySSLKeyType |
Type of private key file used to connect to an HTTPS proxy. Used to set CURLOPT_PROXY_SSLKEYTYPE in libcurl. Example: PEM
Definition at line 161 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::proxyUserName |
If you have users going through a proxy, set the username here.
Definition at line 137 of file ClientConfiguration.h.
std::shared_ptr<Aws::Utils::RateLimits::RateLimiterInterface> Aws::Client::ClientConfiguration::readRateLimiter |
Rate Limiter implementation for incoming bandwidth. Default is wide-open.
Definition at line 195 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::region |
AWS Region to use in signing requests. Default US_EAST_1
Definition at line 71 of file ClientConfiguration.h.
long Aws::Client::ClientConfiguration::requestTimeoutMs |
Socket read timeouts for HTTP clients on Windows. Default 3000 ms. This should be more than adequate for most services. However, if you are transfering large amounts of data or are worried about higher latencies, you should set to something that makes more sense for your use case. For Curl, it's the low speed time, which contains the time in number milliseconds that transfer speed should be below "lowSpeedLimit" for the library to consider it too slow and abort. Note that for Curl this config is converted to seconds by rounding down to the nearest whole second except when the value is greater than 0 and less than 1000. In this case it is set to one second. When it's 0, low speed limit check will be disabled. Note that for Windows when this config is 0, the behavior is not specified by Windows.
Definition at line 93 of file ClientConfiguration.h.
std::shared_ptr<RetryStrategy> Aws::Client::ClientConfiguration::retryStrategy |
Strategy to use in case of failed requests. Default is DefaultRetryStrategy (e.g. exponential backoff)
Definition at line 117 of file ClientConfiguration.h.
Aws::Http::Scheme Aws::Client::ClientConfiguration::scheme |
Http scheme to use. E.g. Http or Https. Default HTTPS
Definition at line 67 of file ClientConfiguration.h.
unsigned long Aws::Client::ClientConfiguration::tcpKeepAliveIntervalMs |
Interval to send a keep-alive packet over the connection. Default 30 seconds. Minimum 15 seconds. WinHTTP & libcurl support this option. Note that for Curl, this value will be rounded to an integer with second granularity. No-op for WinINet and IXMLHTTPRequest2 client.
Definition at line 108 of file ClientConfiguration.h.
bool Aws::Client::ClientConfiguration::useDualStack |
Use dual stack endpoint in the endpoint calculation. It is your responsibility to verify that the service supports ipv6 in the region you select.
Definition at line 75 of file ClientConfiguration.h.
Aws::String Aws::Client::ClientConfiguration::userAgent |
User Agent string user for http calls. This is filled in for you in the constructor. Don't override this unless you have a really good reason.
Definition at line 63 of file ClientConfiguration.h.
bool Aws::Client::ClientConfiguration::verifySSL |
If you need to test and want to get around TLS validation errors, do that here. you probably shouldn't use this flag in a production scenario.
Definition at line 175 of file ClientConfiguration.h.
std::shared_ptr<Aws::Utils::RateLimits::RateLimiterInterface> Aws::Client::ClientConfiguration::writeRateLimiter |
Rate Limiter implementation for outgoing bandwidth. Default is wide-open.
Definition at line 191 of file ClientConfiguration.h.