AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
IoTDataPlaneClient.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/iot-data/IoTDataPlanePaginationBase.h>
12#include <aws/iot-data/IoTDataPlaneServiceClientModel.h>
13#include <aws/iot-data/IoTDataPlaneWaiter.h>
14#include <aws/iot-data/IoTDataPlane_EXPORTS.h>
15
16namespace Aws {
17namespace IoTDataPlane {
32class AWS_IOTDATAPLANE_API IoTDataPlaneClient : public Aws::Client::AWSJsonClient,
33 public Aws::Client::ClientWithAsyncTemplateMethods<IoTDataPlaneClient>,
34 public IoTDataPlanePaginationBase<IoTDataPlaneClient>,
35 public IoTDataPlaneWaiter<IoTDataPlaneClient> {
36 public:
38 static const char* GetServiceName();
39 static const char* GetAllocationTag();
40
43
50 std::shared_ptr<IoTDataPlaneEndpointProviderBase> endpointProvider = nullptr);
51
57 const Aws::Auth::AWSCredentials& credentials, std::shared_ptr<IoTDataPlaneEndpointProviderBase> endpointProvider = nullptr,
59
65 const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
66 std::shared_ptr<IoTDataPlaneEndpointProviderBase> endpointProvider = nullptr,
68
69 /* Legacy constructors due deprecation */
75
80 IoTDataPlaneClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration);
81
86 IoTDataPlaneClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
87 const Aws::Client::ClientConfiguration& clientConfiguration);
88
89 /* End of legacy constructors due deprecation */
91
101
106 template <typename DeleteConnectionRequestT = Model::DeleteConnectionRequest>
107 Model::DeleteConnectionOutcomeCallable DeleteConnectionCallable(const DeleteConnectionRequestT& request) const {
108 return SubmitCallable(&IoTDataPlaneClient::DeleteConnection, request);
109 }
110
115 template <typename DeleteConnectionRequestT = Model::DeleteConnectionRequest>
116 void DeleteConnectionAsync(const DeleteConnectionRequestT& request, const DeleteConnectionResponseReceivedHandler& handler,
117 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
118 return SubmitAsync(&IoTDataPlaneClient::DeleteConnection, request, handler, context);
119 }
120
132
137 template <typename DeleteThingShadowRequestT = Model::DeleteThingShadowRequest>
138 Model::DeleteThingShadowOutcomeCallable DeleteThingShadowCallable(const DeleteThingShadowRequestT& request) const {
139 return SubmitCallable(&IoTDataPlaneClient::DeleteThingShadow, request);
140 }
141
146 template <typename DeleteThingShadowRequestT = Model::DeleteThingShadowRequest>
147 void DeleteThingShadowAsync(const DeleteThingShadowRequestT& request, const DeleteThingShadowResponseReceivedHandler& handler,
148 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
149 return SubmitAsync(&IoTDataPlaneClient::DeleteThingShadow, request, handler, context);
150 }
151
167
172 template <typename GetRetainedMessageRequestT = Model::GetRetainedMessageRequest>
173 Model::GetRetainedMessageOutcomeCallable GetRetainedMessageCallable(const GetRetainedMessageRequestT& request) const {
174 return SubmitCallable(&IoTDataPlaneClient::GetRetainedMessage, request);
175 }
176
181 template <typename GetRetainedMessageRequestT = Model::GetRetainedMessageRequest>
182 void GetRetainedMessageAsync(const GetRetainedMessageRequestT& request, const GetRetainedMessageResponseReceivedHandler& handler,
183 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
184 return SubmitAsync(&IoTDataPlaneClient::GetRetainedMessage, request, handler, context);
185 }
186
198
202 template <typename GetThingShadowRequestT = Model::GetThingShadowRequest>
203 Model::GetThingShadowOutcomeCallable GetThingShadowCallable(const GetThingShadowRequestT& request) const {
204 return SubmitCallable(&IoTDataPlaneClient::GetThingShadow, request);
205 }
206
211 template <typename GetThingShadowRequestT = Model::GetThingShadowRequest>
212 void GetThingShadowAsync(const GetThingShadowRequestT& request, const GetThingShadowResponseReceivedHandler& handler,
213 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
214 return SubmitAsync(&IoTDataPlaneClient::GetThingShadow, request, handler, context);
215 }
216
226
231 template <typename ListNamedShadowsForThingRequestT = Model::ListNamedShadowsForThingRequest>
232 Model::ListNamedShadowsForThingOutcomeCallable ListNamedShadowsForThingCallable(const ListNamedShadowsForThingRequestT& request) const {
233 return SubmitCallable(&IoTDataPlaneClient::ListNamedShadowsForThing, request);
234 }
235
240 template <typename ListNamedShadowsForThingRequestT = Model::ListNamedShadowsForThingRequest>
241 void ListNamedShadowsForThingAsync(const ListNamedShadowsForThingRequestT& request,
243 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
244 return SubmitAsync(&IoTDataPlaneClient::ListNamedShadowsForThing, request, handler, context);
245 }
246
264
269 template <typename ListRetainedMessagesRequestT = Model::ListRetainedMessagesRequest>
270 Model::ListRetainedMessagesOutcomeCallable ListRetainedMessagesCallable(const ListRetainedMessagesRequestT& request = {}) const {
271 return SubmitCallable(&IoTDataPlaneClient::ListRetainedMessages, request);
272 }
273
278 template <typename ListRetainedMessagesRequestT = Model::ListRetainedMessagesRequest>
280 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr,
281 const ListRetainedMessagesRequestT& request = {}) const {
282 return SubmitAsync(&IoTDataPlaneClient::ListRetainedMessages, request, handler, context);
283 }
284
298
302 template <typename PublishRequestT = Model::PublishRequest>
303 Model::PublishOutcomeCallable PublishCallable(const PublishRequestT& request) const {
304 return SubmitCallable(&IoTDataPlaneClient::Publish, request);
305 }
306
311 template <typename PublishRequestT = Model::PublishRequest>
312 void PublishAsync(const PublishRequestT& request, const PublishResponseReceivedHandler& handler,
313 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
314 return SubmitAsync(&IoTDataPlaneClient::Publish, request, handler, context);
315 }
316
328
333 template <typename UpdateThingShadowRequestT = Model::UpdateThingShadowRequest>
334 Model::UpdateThingShadowOutcomeCallable UpdateThingShadowCallable(const UpdateThingShadowRequestT& request) const {
335 return SubmitCallable(&IoTDataPlaneClient::UpdateThingShadow, request);
336 }
337
342 template <typename UpdateThingShadowRequestT = Model::UpdateThingShadowRequest>
343 void UpdateThingShadowAsync(const UpdateThingShadowRequestT& request, const UpdateThingShadowResponseReceivedHandler& handler,
344 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
345 return SubmitAsync(&IoTDataPlaneClient::UpdateThingShadow, request, handler, context);
346 }
347
348 virtual void OverrideEndpoint(const Aws::String& endpoint);
349 virtual std::shared_ptr<IoTDataPlaneEndpointProviderBase>& accessEndpointProvider();
350
351 private:
353 void init(const IoTDataPlaneClientConfiguration& clientConfiguration);
354
356
357 InvokeOperationOutcome InvokeServiceOperation(const AmazonWebServiceRequest& request,
358 const std::function<void(Aws::Endpoint::ResolveEndpointOutcome&)>& resolveUri,
359 Aws::Http::HttpMethod httpMethod) const;
360
361 IoTDataPlaneClientConfiguration m_clientConfiguration;
362 std::shared_ptr<IoTDataPlaneEndpointProviderBase> m_endpointProvider;
363};
364
365} // namespace IoTDataPlane
366} // namespace Aws
void ListRetainedMessagesAsync(const ListRetainedMessagesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListRetainedMessagesRequestT &request={}) const
void ListNamedShadowsForThingAsync(const ListNamedShadowsForThingRequestT &request, const ListNamedShadowsForThingResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::ListRetainedMessagesOutcome ListRetainedMessages(const Model::ListRetainedMessagesRequest &request={}) const
IoTDataPlaneEndpointProvider EndpointProviderType
virtual Model::GetThingShadowOutcome GetThingShadow(const Model::GetThingShadowRequest &request) const
Model::ListRetainedMessagesOutcomeCallable ListRetainedMessagesCallable(const ListRetainedMessagesRequestT &request={}) const
static const char * GetAllocationTag()
Model::ListNamedShadowsForThingOutcomeCallable ListNamedShadowsForThingCallable(const ListNamedShadowsForThingRequestT &request) const
virtual void OverrideEndpoint(const Aws::String &endpoint)
IoTDataPlaneClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< IoTDataPlaneEndpointProviderBase > endpointProvider=nullptr, const Aws::IoTDataPlane::IoTDataPlaneClientConfiguration &clientConfiguration=Aws::IoTDataPlane::IoTDataPlaneClientConfiguration())
IoTDataPlaneClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< IoTDataPlaneEndpointProviderBase > endpointProvider=nullptr, const Aws::IoTDataPlane::IoTDataPlaneClientConfiguration &clientConfiguration=Aws::IoTDataPlane::IoTDataPlaneClientConfiguration())
Model::UpdateThingShadowOutcomeCallable UpdateThingShadowCallable(const UpdateThingShadowRequestT &request) const
virtual Model::DeleteThingShadowOutcome DeleteThingShadow(const Model::DeleteThingShadowRequest &request) const
virtual Model::UpdateThingShadowOutcome UpdateThingShadow(const Model::UpdateThingShadowRequest &request) const
void GetThingShadowAsync(const GetThingShadowRequestT &request, const GetThingShadowResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::DeleteThingShadowOutcomeCallable DeleteThingShadowCallable(const DeleteThingShadowRequestT &request) const
IoTDataPlaneClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
virtual Model::DeleteConnectionOutcome DeleteConnection(const Model::DeleteConnectionRequest &request) const
void UpdateThingShadowAsync(const UpdateThingShadowRequestT &request, const UpdateThingShadowResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void DeleteConnectionAsync(const DeleteConnectionRequestT &request, const DeleteConnectionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
IoTDataPlaneClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
virtual Model::ListNamedShadowsForThingOutcome ListNamedShadowsForThing(const Model::ListNamedShadowsForThingRequest &request) const
static const char * GetServiceName()
void DeleteThingShadowAsync(const DeleteThingShadowRequestT &request, const DeleteThingShadowResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
IoTDataPlaneClientConfiguration ClientConfigurationType
IoTDataPlaneClient(const Aws::Client::ClientConfiguration &clientConfiguration)
Model::PublishOutcomeCallable PublishCallable(const PublishRequestT &request) const
void GetRetainedMessageAsync(const GetRetainedMessageRequestT &request, const GetRetainedMessageResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::DeleteConnectionOutcomeCallable DeleteConnectionCallable(const DeleteConnectionRequestT &request) const
virtual Model::PublishOutcome Publish(const Model::PublishRequest &request) const
IoTDataPlaneClient(const Aws::IoTDataPlane::IoTDataPlaneClientConfiguration &clientConfiguration=Aws::IoTDataPlane::IoTDataPlaneClientConfiguration(), std::shared_ptr< IoTDataPlaneEndpointProviderBase > endpointProvider=nullptr)
void PublishAsync(const PublishRequestT &request, const PublishResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::GetRetainedMessageOutcomeCallable GetRetainedMessageCallable(const GetRetainedMessageRequestT &request) const
Model::GetThingShadowOutcomeCallable GetThingShadowCallable(const GetThingShadowRequestT &request) const
virtual std::shared_ptr< IoTDataPlaneEndpointProviderBase > & accessEndpointProvider()
virtual Model::GetRetainedMessageOutcome GetRetainedMessage(const Model::GetRetainedMessageRequest &request) const
std::future< DeleteThingShadowOutcome > DeleteThingShadowOutcomeCallable
std::future< ListRetainedMessagesOutcome > ListRetainedMessagesOutcomeCallable
std::future< UpdateThingShadowOutcome > UpdateThingShadowOutcomeCallable
std::future< GetThingShadowOutcome > GetThingShadowOutcomeCallable
std::future< PublishOutcome > PublishOutcomeCallable
std::future< DeleteConnectionOutcome > DeleteConnectionOutcomeCallable
std::future< GetRetainedMessageOutcome > GetRetainedMessageOutcomeCallable
std::future< ListNamedShadowsForThingOutcome > ListNamedShadowsForThingOutcomeCallable
std::function< void(const IoTDataPlaneClient *, const Model::GetRetainedMessageRequest &, const Model::GetRetainedMessageOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetRetainedMessageResponseReceivedHandler
std::function< void(const IoTDataPlaneClient *, const Model::ListRetainedMessagesRequest &, const Model::ListRetainedMessagesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListRetainedMessagesResponseReceivedHandler
std::function< void(const IoTDataPlaneClient *, const Model::DeleteThingShadowRequest &, Model::DeleteThingShadowOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteThingShadowResponseReceivedHandler
std::function< void(const IoTDataPlaneClient *, const Model::UpdateThingShadowRequest &, Model::UpdateThingShadowOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UpdateThingShadowResponseReceivedHandler
std::function< void(const IoTDataPlaneClient *, const Model::GetThingShadowRequest &, Model::GetThingShadowOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetThingShadowResponseReceivedHandler
std::function< void(const IoTDataPlaneClient *, const Model::ListNamedShadowsForThingRequest &, const Model::ListNamedShadowsForThingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListNamedShadowsForThingResponseReceivedHandler
std::function< void(const IoTDataPlaneClient *, const Model::PublishRequest &, const Model::PublishOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PublishResponseReceivedHandler
std::function< void(const IoTDataPlaneClient *, const Model::DeleteConnectionRequest &, const Model::DeleteConnectionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteConnectionResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String