AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
IoTSecureTunnelingClient.h
1
6#pragma once
7#include <aws/iotsecuretunneling/IoTSecureTunneling_EXPORTS.h>
8#include <aws/core/client/ClientConfiguration.h>
9#include <aws/core/client/AWSClient.h>
10#include <aws/core/client/AWSClientAsyncCRTP.h>
11#include <aws/core/utils/json/JsonSerializer.h>
12#include <aws/iotsecuretunneling/IoTSecureTunnelingServiceClientModel.h>
13
14namespace Aws
15{
16namespace IoTSecureTunneling
17{
25 class AWS_IOTSECURETUNNELING_API IoTSecureTunnelingClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods<IoTSecureTunnelingClient>
26 {
27 public:
29 static const char* GetServiceName();
30 static const char* GetAllocationTag();
31
34
40 std::shared_ptr<IoTSecureTunnelingEndpointProviderBase> endpointProvider = nullptr);
41
47 std::shared_ptr<IoTSecureTunnelingEndpointProviderBase> endpointProvider = nullptr,
49
54 IoTSecureTunnelingClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
55 std::shared_ptr<IoTSecureTunnelingEndpointProviderBase> endpointProvider = nullptr,
57
58
59 /* Legacy constructors due deprecation */
65
71 const Aws::Client::ClientConfiguration& clientConfiguration);
72
77 IoTSecureTunnelingClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
78 const Aws::Client::ClientConfiguration& clientConfiguration);
79
80 /* End of legacy constructors due deprecation */
82
94
98 template<typename CloseTunnelRequestT = Model::CloseTunnelRequest>
99 Model::CloseTunnelOutcomeCallable CloseTunnelCallable(const CloseTunnelRequestT& request) const
100 {
101 return SubmitCallable(&IoTSecureTunnelingClient::CloseTunnel, request);
102 }
103
107 template<typename CloseTunnelRequestT = Model::CloseTunnelRequest>
108 void CloseTunnelAsync(const CloseTunnelRequestT& request, const CloseTunnelResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
109 {
110 return SubmitAsync(&IoTSecureTunnelingClient::CloseTunnel, request, handler, context);
111 }
112
122
126 template<typename DescribeTunnelRequestT = Model::DescribeTunnelRequest>
127 Model::DescribeTunnelOutcomeCallable DescribeTunnelCallable(const DescribeTunnelRequestT& request) const
128 {
129 return SubmitCallable(&IoTSecureTunnelingClient::DescribeTunnel, request);
130 }
131
135 template<typename DescribeTunnelRequestT = Model::DescribeTunnelRequest>
136 void DescribeTunnelAsync(const DescribeTunnelRequestT& request, const DescribeTunnelResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
137 {
138 return SubmitAsync(&IoTSecureTunnelingClient::DescribeTunnel, request, handler, context);
139 }
140
147
151 template<typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
152 Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const
153 {
154 return SubmitCallable(&IoTSecureTunnelingClient::ListTagsForResource, request);
155 }
156
160 template<typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
161 void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
162 {
163 return SubmitAsync(&IoTSecureTunnelingClient::ListTagsForResource, request, handler, context);
164 }
165
176
180 template<typename ListTunnelsRequestT = Model::ListTunnelsRequest>
181 Model::ListTunnelsOutcomeCallable ListTunnelsCallable(const ListTunnelsRequestT& request = {}) const
182 {
183 return SubmitCallable(&IoTSecureTunnelingClient::ListTunnels, request);
184 }
185
189 template<typename ListTunnelsRequestT = Model::ListTunnelsRequest>
190 void ListTunnelsAsync(const ListTunnelsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr, const ListTunnelsRequestT& request = {}) const
191 {
192 return SubmitAsync(&IoTSecureTunnelingClient::ListTunnels, request, handler, context);
193 }
194
205
209 template<typename OpenTunnelRequestT = Model::OpenTunnelRequest>
210 Model::OpenTunnelOutcomeCallable OpenTunnelCallable(const OpenTunnelRequestT& request = {}) const
211 {
212 return SubmitCallable(&IoTSecureTunnelingClient::OpenTunnel, request);
213 }
214
218 template<typename OpenTunnelRequestT = Model::OpenTunnelRequest>
219 void OpenTunnelAsync(const OpenTunnelResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr, const OpenTunnelRequestT& request = {}) const
220 {
221 return SubmitAsync(&IoTSecureTunnelingClient::OpenTunnel, request, handler, context);
222 }
223
238
242 template<typename RotateTunnelAccessTokenRequestT = Model::RotateTunnelAccessTokenRequest>
243 Model::RotateTunnelAccessTokenOutcomeCallable RotateTunnelAccessTokenCallable(const RotateTunnelAccessTokenRequestT& request) const
244 {
245 return SubmitCallable(&IoTSecureTunnelingClient::RotateTunnelAccessToken, request);
246 }
247
251 template<typename RotateTunnelAccessTokenRequestT = Model::RotateTunnelAccessTokenRequest>
252 void RotateTunnelAccessTokenAsync(const RotateTunnelAccessTokenRequestT& request, const RotateTunnelAccessTokenResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
253 {
254 return SubmitAsync(&IoTSecureTunnelingClient::RotateTunnelAccessToken, request, handler, context);
255 }
256
263
267 template<typename TagResourceRequestT = Model::TagResourceRequest>
268 Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const
269 {
270 return SubmitCallable(&IoTSecureTunnelingClient::TagResource, request);
271 }
272
276 template<typename TagResourceRequestT = Model::TagResourceRequest>
277 void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
278 {
279 return SubmitAsync(&IoTSecureTunnelingClient::TagResource, request, handler, context);
280 }
281
288
292 template<typename UntagResourceRequestT = Model::UntagResourceRequest>
293 Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const
294 {
295 return SubmitCallable(&IoTSecureTunnelingClient::UntagResource, request);
296 }
297
301 template<typename UntagResourceRequestT = Model::UntagResourceRequest>
302 void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
303 {
304 return SubmitAsync(&IoTSecureTunnelingClient::UntagResource, request, handler, context);
305 }
306
307
308 void OverrideEndpoint(const Aws::String& endpoint);
309 std::shared_ptr<IoTSecureTunnelingEndpointProviderBase>& accessEndpointProvider();
310 private:
312 void init(const IoTSecureTunnelingClientConfiguration& clientConfiguration);
313
314 IoTSecureTunnelingClientConfiguration m_clientConfiguration;
315 std::shared_ptr<IoTSecureTunnelingEndpointProviderBase> m_endpointProvider;
316 };
317
318} // namespace IoTSecureTunneling
319} // namespace Aws
IoTSecureTunnelingClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::ListTunnelsOutcomeCallable ListTunnelsCallable(const ListTunnelsRequestT &request={}) const
void RotateTunnelAccessTokenAsync(const RotateTunnelAccessTokenRequestT &request, const RotateTunnelAccessTokenResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void ListTagsForResourceAsync(const ListTagsForResourceRequestT &request, const ListTagsForResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest &request) const
void OpenTunnelAsync(const OpenTunnelResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const OpenTunnelRequestT &request={}) const
virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest &request) const
IoTSecureTunnelingClientConfiguration ClientConfigurationType
IoTSecureTunnelingClient(const Aws::Client::ClientConfiguration &clientConfiguration)
IoTSecureTunnelingClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< IoTSecureTunnelingEndpointProviderBase > endpointProvider=nullptr, const Aws::IoTSecureTunneling::IoTSecureTunnelingClientConfiguration &clientConfiguration=Aws::IoTSecureTunneling::IoTSecureTunnelingClientConfiguration())
Model::OpenTunnelOutcomeCallable OpenTunnelCallable(const OpenTunnelRequestT &request={}) const
virtual Model::ListTunnelsOutcome ListTunnels(const Model::ListTunnelsRequest &request={}) const
void ListTunnelsAsync(const ListTunnelsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListTunnelsRequestT &request={}) const
Model::CloseTunnelOutcomeCallable CloseTunnelCallable(const CloseTunnelRequestT &request) const
IoTSecureTunnelingClient(const Aws::IoTSecureTunneling::IoTSecureTunnelingClientConfiguration &clientConfiguration=Aws::IoTSecureTunneling::IoTSecureTunnelingClientConfiguration(), std::shared_ptr< IoTSecureTunnelingEndpointProviderBase > endpointProvider=nullptr)
virtual Model::RotateTunnelAccessTokenOutcome RotateTunnelAccessToken(const Model::RotateTunnelAccessTokenRequest &request) const
IoTSecureTunnelingClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< IoTSecureTunnelingEndpointProviderBase > endpointProvider=nullptr, const Aws::IoTSecureTunneling::IoTSecureTunnelingClientConfiguration &clientConfiguration=Aws::IoTSecureTunneling::IoTSecureTunnelingClientConfiguration())
void CloseTunnelAsync(const CloseTunnelRequestT &request, const CloseTunnelResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::OpenTunnelOutcome OpenTunnel(const Model::OpenTunnelRequest &request={}) const
std::shared_ptr< IoTSecureTunnelingEndpointProviderBase > & accessEndpointProvider()
virtual Model::DescribeTunnelOutcome DescribeTunnel(const Model::DescribeTunnelRequest &request) const
virtual Model::CloseTunnelOutcome CloseTunnel(const Model::CloseTunnelRequest &request) const
Model::DescribeTunnelOutcomeCallable DescribeTunnelCallable(const DescribeTunnelRequestT &request) const
virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest &request) const
Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT &request) const
void OverrideEndpoint(const Aws::String &endpoint)
IoTSecureTunnelingClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT &request) const
Model::RotateTunnelAccessTokenOutcomeCallable RotateTunnelAccessTokenCallable(const RotateTunnelAccessTokenRequestT &request) const
void UntagResourceAsync(const UntagResourceRequestT &request, const UntagResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT &request) const
void DescribeTunnelAsync(const DescribeTunnelRequestT &request, const DescribeTunnelResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void TagResourceAsync(const TagResourceRequestT &request, const TagResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
std::future< UntagResourceOutcome > UntagResourceOutcomeCallable
std::future< DescribeTunnelOutcome > DescribeTunnelOutcomeCallable
std::future< ListTagsForResourceOutcome > ListTagsForResourceOutcomeCallable
std::future< TagResourceOutcome > TagResourceOutcomeCallable
std::future< ListTunnelsOutcome > ListTunnelsOutcomeCallable
std::future< CloseTunnelOutcome > CloseTunnelOutcomeCallable
std::future< OpenTunnelOutcome > OpenTunnelOutcomeCallable
std::future< RotateTunnelAccessTokenOutcome > RotateTunnelAccessTokenOutcomeCallable
std::function< void(const IoTSecureTunnelingClient *, const Model::RotateTunnelAccessTokenRequest &, const Model::RotateTunnelAccessTokenOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RotateTunnelAccessTokenResponseReceivedHandler
std::function< void(const IoTSecureTunnelingClient *, const Model::TagResourceRequest &, const Model::TagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > TagResourceResponseReceivedHandler
std::function< void(const IoTSecureTunnelingClient *, const Model::OpenTunnelRequest &, const Model::OpenTunnelOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > OpenTunnelResponseReceivedHandler
std::function< void(const IoTSecureTunnelingClient *, const Model::ListTagsForResourceRequest &, const Model::ListTagsForResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListTagsForResourceResponseReceivedHandler
std::function< void(const IoTSecureTunnelingClient *, const Model::ListTunnelsRequest &, const Model::ListTunnelsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListTunnelsResponseReceivedHandler
std::function< void(const IoTSecureTunnelingClient *, const Model::DescribeTunnelRequest &, const Model::DescribeTunnelOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeTunnelResponseReceivedHandler
std::function< void(const IoTSecureTunnelingClient *, const Model::CloseTunnelRequest &, const Model::CloseTunnelOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CloseTunnelResponseReceivedHandler
std::function< void(const IoTSecureTunnelingClient *, const Model::UntagResourceRequest &, const Model::UntagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UntagResourceResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String