AWS SDK for C++

AWS SDK for C++ Version 1.11.786

Loading...
Searching...
No Matches
S3OutpostsClient.h
1
6#pragma once
7#include <aws/core/client/AWSClient.h>
8#include <aws/core/client/AWSClientAsyncCRTP.h>
9#include <aws/core/client/ClientConfiguration.h>
10#include <aws/core/utils/json/JsonSerializer.h>
11#include <aws/s3outposts/S3OutpostsPaginationBase.h>
12#include <aws/s3outposts/S3OutpostsServiceClientModel.h>
13#include <aws/s3outposts/S3OutpostsWaiter.h>
14#include <aws/s3outposts/S3Outposts_EXPORTS.h>
15
16namespace Aws {
17namespace S3Outposts {
21class AWS_S3OUTPOSTS_API S3OutpostsClient : public Aws::Client::AWSJsonClient,
22 public Aws::Client::ClientWithAsyncTemplateMethods<S3OutpostsClient>,
23 public S3OutpostsPaginationBase<S3OutpostsClient>,
24 public S3OutpostsWaiter<S3OutpostsClient> {
25 public:
27 static const char* GetServiceName();
28 static const char* GetAllocationTag();
29
32
39 std::shared_ptr<S3OutpostsEndpointProviderBase> endpointProvider = nullptr);
40
46 const Aws::Auth::AWSCredentials& credentials, std::shared_ptr<S3OutpostsEndpointProviderBase> endpointProvider = nullptr,
48
54 const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
55 std::shared_ptr<S3OutpostsEndpointProviderBase> endpointProvider = nullptr,
57
58 /* Legacy constructors due deprecation */
64
69 S3OutpostsClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration);
70
75 S3OutpostsClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
76 const Aws::Client::ClientConfiguration& clientConfiguration);
77
78 /* End of legacy constructors due deprecation */
80
93
97 template <typename CreateEndpointRequestT = Model::CreateEndpointRequest>
98 Model::CreateEndpointOutcomeCallable CreateEndpointCallable(const CreateEndpointRequestT& request) const {
99 return SubmitCallable(&S3OutpostsClient::CreateEndpoint, request);
100 }
101
106 template <typename CreateEndpointRequestT = Model::CreateEndpointRequest>
107 void CreateEndpointAsync(const CreateEndpointRequestT& request, const CreateEndpointResponseReceivedHandler& handler,
108 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
109 return SubmitAsync(&S3OutpostsClient::CreateEndpoint, request, handler, context);
110 }
111
124
128 template <typename DeleteEndpointRequestT = Model::DeleteEndpointRequest>
129 Model::DeleteEndpointOutcomeCallable DeleteEndpointCallable(const DeleteEndpointRequestT& request) const {
130 return SubmitCallable(&S3OutpostsClient::DeleteEndpoint, request);
131 }
132
137 template <typename DeleteEndpointRequestT = Model::DeleteEndpointRequest>
138 void DeleteEndpointAsync(const DeleteEndpointRequestT& request, const DeleteEndpointResponseReceivedHandler& handler,
139 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
140 return SubmitAsync(&S3OutpostsClient::DeleteEndpoint, request, handler, context);
141 }
142
154
158 template <typename ListEndpointsRequestT = Model::ListEndpointsRequest>
159 Model::ListEndpointsOutcomeCallable ListEndpointsCallable(const ListEndpointsRequestT& request = {}) const {
160 return SubmitCallable(&S3OutpostsClient::ListEndpoints, request);
161 }
162
167 template <typename ListEndpointsRequestT = Model::ListEndpointsRequest>
169 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr,
170 const ListEndpointsRequestT& request = {}) const {
171 return SubmitAsync(&S3OutpostsClient::ListEndpoints, request, handler, context);
172 }
173
183
188 template <typename ListOutpostsWithS3RequestT = Model::ListOutpostsWithS3Request>
189 Model::ListOutpostsWithS3OutcomeCallable ListOutpostsWithS3Callable(const ListOutpostsWithS3RequestT& request = {}) const {
190 return SubmitCallable(&S3OutpostsClient::ListOutpostsWithS3, request);
191 }
192
197 template <typename ListOutpostsWithS3RequestT = Model::ListOutpostsWithS3Request>
199 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr,
200 const ListOutpostsWithS3RequestT& request = {}) const {
201 return SubmitAsync(&S3OutpostsClient::ListOutpostsWithS3, request, handler, context);
202 }
203
216
221 template <typename ListSharedEndpointsRequestT = Model::ListSharedEndpointsRequest>
222 Model::ListSharedEndpointsOutcomeCallable ListSharedEndpointsCallable(const ListSharedEndpointsRequestT& request) const {
223 return SubmitCallable(&S3OutpostsClient::ListSharedEndpoints, request);
224 }
225
230 template <typename ListSharedEndpointsRequestT = Model::ListSharedEndpointsRequest>
231 void ListSharedEndpointsAsync(const ListSharedEndpointsRequestT& request, const ListSharedEndpointsResponseReceivedHandler& handler,
232 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
233 return SubmitAsync(&S3OutpostsClient::ListSharedEndpoints, request, handler, context);
234 }
235
236 virtual void OverrideEndpoint(const Aws::String& endpoint);
237 virtual std::shared_ptr<S3OutpostsEndpointProviderBase>& accessEndpointProvider();
238
239 private:
241 void init(const S3OutpostsClientConfiguration& clientConfiguration);
242
244
245 InvokeOperationOutcome InvokeServiceOperation(const AmazonWebServiceRequest& request,
246 const std::function<void(Aws::Endpoint::ResolveEndpointOutcome&)>& resolveUri,
247 Aws::Http::HttpMethod httpMethod) const;
248
249 S3OutpostsClientConfiguration m_clientConfiguration;
250 std::shared_ptr<S3OutpostsEndpointProviderBase> m_endpointProvider;
251};
252
253} // namespace S3Outposts
254} // namespace Aws
virtual std::shared_ptr< S3OutpostsEndpointProviderBase > & accessEndpointProvider()
virtual void OverrideEndpoint(const Aws::String &endpoint)
S3OutpostsEndpointProvider EndpointProviderType
S3OutpostsClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< S3OutpostsEndpointProviderBase > endpointProvider=nullptr, const Aws::S3Outposts::S3OutpostsClientConfiguration &clientConfiguration=Aws::S3Outposts::S3OutpostsClientConfiguration())
Model::ListEndpointsOutcomeCallable ListEndpointsCallable(const ListEndpointsRequestT &request={}) const
S3OutpostsClient(const Aws::S3Outposts::S3OutpostsClientConfiguration &clientConfiguration=Aws::S3Outposts::S3OutpostsClientConfiguration(), std::shared_ptr< S3OutpostsEndpointProviderBase > endpointProvider=nullptr)
void DeleteEndpointAsync(const DeleteEndpointRequestT &request, const DeleteEndpointResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void CreateEndpointAsync(const CreateEndpointRequestT &request, const CreateEndpointResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void ListSharedEndpointsAsync(const ListSharedEndpointsRequestT &request, const ListSharedEndpointsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
S3OutpostsClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< S3OutpostsEndpointProviderBase > endpointProvider=nullptr, const Aws::S3Outposts::S3OutpostsClientConfiguration &clientConfiguration=Aws::S3Outposts::S3OutpostsClientConfiguration())
virtual Model::DeleteEndpointOutcome DeleteEndpoint(const Model::DeleteEndpointRequest &request) const
virtual Model::ListSharedEndpointsOutcome ListSharedEndpoints(const Model::ListSharedEndpointsRequest &request) const
S3OutpostsClient(const Aws::Client::ClientConfiguration &clientConfiguration)
static const char * GetAllocationTag()
void ListEndpointsAsync(const ListEndpointsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListEndpointsRequestT &request={}) const
virtual Model::CreateEndpointOutcome CreateEndpoint(const Model::CreateEndpointRequest &request) const
Model::CreateEndpointOutcomeCallable CreateEndpointCallable(const CreateEndpointRequestT &request) const
Model::ListSharedEndpointsOutcomeCallable ListSharedEndpointsCallable(const ListSharedEndpointsRequestT &request) const
virtual Model::ListOutpostsWithS3Outcome ListOutpostsWithS3(const Model::ListOutpostsWithS3Request &request={}) const
S3OutpostsClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
void ListOutpostsWithS3Async(const ListOutpostsWithS3ResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListOutpostsWithS3RequestT &request={}) const
virtual Model::ListEndpointsOutcome ListEndpoints(const Model::ListEndpointsRequest &request={}) const
Aws::Client::AWSJsonClient BASECLASS
S3OutpostsClientConfiguration ClientConfigurationType
S3OutpostsClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::ListOutpostsWithS3OutcomeCallable ListOutpostsWithS3Callable(const ListOutpostsWithS3RequestT &request={}) const
static const char * GetServiceName()
Model::DeleteEndpointOutcomeCallable DeleteEndpointCallable(const DeleteEndpointRequestT &request) const
std::future< ListOutpostsWithS3Outcome > ListOutpostsWithS3OutcomeCallable
std::future< DeleteEndpointOutcome > DeleteEndpointOutcomeCallable
std::future< CreateEndpointOutcome > CreateEndpointOutcomeCallable
std::future< ListSharedEndpointsOutcome > ListSharedEndpointsOutcomeCallable
std::future< ListEndpointsOutcome > ListEndpointsOutcomeCallable
std::function< void(const S3OutpostsClient *, const Model::DeleteEndpointRequest &, const Model::DeleteEndpointOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteEndpointResponseReceivedHandler
std::function< void(const S3OutpostsClient *, const Model::CreateEndpointRequest &, const Model::CreateEndpointOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CreateEndpointResponseReceivedHandler
std::function< void(const S3OutpostsClient *, const Model::ListSharedEndpointsRequest &, const Model::ListSharedEndpointsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListSharedEndpointsResponseReceivedHandler
std::function< void(const S3OutpostsClient *, const Model::ListOutpostsWithS3Request &, const Model::ListOutpostsWithS3Outcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListOutpostsWithS3ResponseReceivedHandler
std::function< void(const S3OutpostsClient *, const Model::ListEndpointsRequest &, const Model::ListEndpointsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListEndpointsResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String