AWS SDK for C++  1.9.160
AWS SDK for C++
ClientConfiguration.h
Go to the documentation of this file.
1 
6 #pragma once
7 
10 #include <aws/core/http/Scheme.h>
11 #include <aws/core/Region.h>
13 #include <aws/crt/io/Bootstrap.h>
14 #include <aws/crt/io/TlsOptions.h>
15 
16 namespace Aws
17 {
18  namespace S3Crt
19  {
21  {
22  public:
24  region(Aws::Region::US_EAST_1),
25  useDualStack(false),
26  enableHostPrefixInjection(true),
27  partSize(5 * 1024 * 1024),
28  scheme(Aws::Http::Scheme::HTTPS),
29  throughputTargetGbps(2.0),
30  shutdownCallbackUserData(nullptr)
31  {};
32 
33  /* Region that the S3 bucket lives in. */
35 
36  /* Config Profile Name for Service specific config*/
38 
39  /* Customized endpoint. */
41 
42  /* Use dual stack*/
44 
48  std::shared_ptr<Aws::Utils::Threading::Executor> executor;
49 
56 
60  std::shared_ptr<Aws::Crt::Io::ClientBootstrap> clientBootstrap;
61 
65  size_t partSize;
66 
71  std::shared_ptr<Aws::Crt::Io::TlsConnectionOptions> tlsConnectionOptions;
72 
73  /* Throughput target in Gbps that we are trying to reach. Normally it's the NIC's throughput */
75 
76  /* Callback and associated user data for when the client has completed its shutdown process. */
77  std::function<void(void*)> clientShutdownCallback;
79 
81  {
83  config.region = region;
84  config.profileName = profileName;
85  config.endpointOverride = endpointOverride;
86  config.useDualStack = useDualStack;
87  config.executor = executor;
88  config.enableHostPrefixInjection = enableHostPrefixInjection;
89  config.scheme = scheme;
90  return config;
91  }
92  };
93  }
94 }
Aws::S3Crt::ClientConfiguration::clientShutdownCallback
std::function< void(void *)> clientShutdownCallback
Definition: ClientConfiguration.h:77
Aws::S3Crt::ClientConfiguration::throughputTargetGbps
double throughputTargetGbps
Definition: ClientConfiguration.h:74
Aws::S3Crt::ClientConfiguration::clientBootstrap
std::shared_ptr< Aws::Crt::Io::ClientBootstrap > clientBootstrap
Definition: ClientConfiguration.h:60
Aws::S3Crt::ClientConfiguration::tlsConnectionOptions
std::shared_ptr< Aws::Crt::Io::TlsConnectionOptions > tlsConnectionOptions
Definition: ClientConfiguration.h:71
Aws::Client::ClientConfiguration::profileName
Aws::String profileName
Definition: ClientConfiguration.h:248
Aws::Http::Scheme
Scheme
Definition: Scheme.h:20
Aws::S3Crt::ClientConfiguration::shutdownCallbackUserData
void * shutdownCallbackUserData
Definition: ClientConfiguration.h:78
Aws::S3Crt::ClientConfiguration::partSize
size_t partSize
Definition: ClientConfiguration.h:65
Aws::Client::ClientConfiguration::executor
std::shared_ptr< Aws::Utils::Threading::Executor > executor
Definition: ClientConfiguration.h:176
Aws::Client::ClientConfiguration::scheme
Aws::Http::Scheme scheme
Definition: ClientConfiguration.h:69
Aws::Client::ClientConfiguration::region
Aws::String region
Definition: ClientConfiguration.h:73
Aws::S3Crt::ClientConfiguration::region
Aws::String region
Definition: ClientConfiguration.h:31
Aws::Client::ClientConfiguration
Definition: ClientConfiguration.h:53
AWS_S3CRT_API
#define AWS_S3CRT_API
Definition: S3Crt_EXPORTS.h:28
Aws::Region::US_EAST_1
static const char US_EAST_1[]
Definition: Region.h:23
Aws::Client::ClientConfiguration::enableHostPrefixInjection
bool enableHostPrefixInjection
Definition: ClientConfiguration.h:232
AWSString.h
Aws::S3Crt::ClientConfiguration::executor
std::shared_ptr< Aws::Utils::Threading::Executor > executor
Definition: ClientConfiguration.h:48
Aws::S3Crt::ClientConfiguration::useDualStack
bool useDualStack
Definition: ClientConfiguration.h:43
Aws::S3Crt::ClientConfiguration::profileName
Aws::String profileName
Definition: ClientConfiguration.h:37
Region.h
Aws::Client::ClientConfiguration::endpointOverride
Aws::String endpointOverride
Definition: ClientConfiguration.h:123
Scheme.h
ClientConfiguration.h
Aws::Client::ClientConfiguration::useDualStack
bool useDualStack
Definition: ClientConfiguration.h:77
Aws
Definition: AccessManagementClient.h:15
Aws::S3Crt::ClientConfiguration::ClientConfiguration
ClientConfiguration()
Definition: ClientConfiguration.h:23
Aws::S3Crt::ClientConfiguration
Definition: ClientConfiguration.h:21
Aws::S3Crt::ClientConfiguration::scheme
Aws::Http::Scheme scheme
Definition: ClientConfiguration.h:70
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::S3Crt::ClientConfiguration::enableHostPrefixInjection
bool enableHostPrefixInjection
Definition: ClientConfiguration.h:55
S3Crt_EXPORTS.h
Aws::S3Crt::ClientConfiguration::endpointOverride
Aws::String endpointOverride
Definition: ClientConfiguration.h:40