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/IoTDataPlane_EXPORTS.h>
16namespace IoTDataPlane {
48 std::shared_ptr<IoTDataPlaneEndpointProviderBase> endpointProvider =
nullptr);
55 const Aws::Auth::AWSCredentials& credentials, std::shared_ptr<IoTDataPlaneEndpointProviderBase> endpointProvider =
nullptr,
63 const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
64 std::shared_ptr<IoTDataPlaneEndpointProviderBase> endpointProvider =
nullptr,
84 IoTDataPlaneClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
104 template <
typename DeleteConnectionRequestT = Model::DeleteConnectionRequest>
106 return SubmitCallable(&IoTDataPlaneClient::DeleteConnection, request);
113 template <
typename DeleteConnectionRequestT = Model::DeleteConnectionRequest>
115 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
116 return SubmitAsync(&IoTDataPlaneClient::DeleteConnection, request, handler, context);
135 template <
typename DeleteThingShadowRequestT = Model::DeleteThingShadowRequest>
137 return SubmitCallable(&IoTDataPlaneClient::DeleteThingShadow, request);
144 template <
typename DeleteThingShadowRequestT = Model::DeleteThingShadowRequest>
146 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
147 return SubmitAsync(&IoTDataPlaneClient::DeleteThingShadow, request, handler, context);
170 template <
typename GetRetainedMessageRequestT = Model::GetRetainedMessageRequest>
172 return SubmitCallable(&IoTDataPlaneClient::GetRetainedMessage, request);
179 template <
typename GetRetainedMessageRequestT = Model::GetRetainedMessageRequest>
181 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
182 return SubmitAsync(&IoTDataPlaneClient::GetRetainedMessage, request, handler, context);
200 template <
typename GetThingShadowRequestT = Model::GetThingShadowRequest>
202 return SubmitCallable(&IoTDataPlaneClient::GetThingShadow, request);
209 template <
typename GetThingShadowRequestT = Model::GetThingShadowRequest>
211 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
212 return SubmitAsync(&IoTDataPlaneClient::GetThingShadow, request, handler, context);
229 template <
typename ListNamedShadowsForThingRequestT = Model::ListNamedShadowsForThingRequest>
231 return SubmitCallable(&IoTDataPlaneClient::ListNamedShadowsForThing, request);
238 template <
typename ListNamedShadowsForThingRequestT = Model::ListNamedShadowsForThingRequest>
241 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
242 return SubmitAsync(&IoTDataPlaneClient::ListNamedShadowsForThing, request, handler, context);
267 template <
typename ListRetainedMessagesRequestT = Model::ListRetainedMessagesRequest>
269 return SubmitCallable(&IoTDataPlaneClient::ListRetainedMessages, request);
276 template <
typename ListRetainedMessagesRequestT = Model::ListRetainedMessagesRequest>
278 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
279 const ListRetainedMessagesRequestT& request = {})
const {
280 return SubmitAsync(&IoTDataPlaneClient::ListRetainedMessages, request, handler, context);
300 template <
typename PublishRequestT = Model::PublishRequest>
302 return SubmitCallable(&IoTDataPlaneClient::Publish, request);
309 template <
typename PublishRequestT = Model::PublishRequest>
311 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
312 return SubmitAsync(&IoTDataPlaneClient::Publish, request, handler, context);
331 template <
typename UpdateThingShadowRequestT = Model::UpdateThingShadowRequest>
333 return SubmitCallable(&IoTDataPlaneClient::UpdateThingShadow, request);
340 template <
typename UpdateThingShadowRequestT = Model::UpdateThingShadowRequest>
342 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
343 return SubmitAsync(&IoTDataPlaneClient::UpdateThingShadow, request, handler, context);
354 std::shared_ptr<IoTDataPlaneEndpointProviderBase> m_endpointProvider;
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
virtual ~IoTDataPlaneClient()
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
Aws::Client::AWSJsonClient BASECLASS
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