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/IoTDataPlaneServiceClientModel.h>
12#include <aws/iot-data/IoTDataPlane_EXPORTS.h>
15namespace IoTDataPlane {
46 std::shared_ptr<IoTDataPlaneEndpointProviderBase> endpointProvider =
nullptr);
53 const Aws::Auth::AWSCredentials& credentials, std::shared_ptr<IoTDataPlaneEndpointProviderBase> endpointProvider =
nullptr,
61 const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
62 std::shared_ptr<IoTDataPlaneEndpointProviderBase> endpointProvider =
nullptr,
82 IoTDataPlaneClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
102 template <
typename DeleteConnectionRequestT = Model::DeleteConnectionRequest>
104 return SubmitCallable(&IoTDataPlaneClient::DeleteConnection, request);
111 template <
typename DeleteConnectionRequestT = Model::DeleteConnectionRequest>
113 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
114 return SubmitAsync(&IoTDataPlaneClient::DeleteConnection, request, handler, context);
133 template <
typename DeleteThingShadowRequestT = Model::DeleteThingShadowRequest>
135 return SubmitCallable(&IoTDataPlaneClient::DeleteThingShadow, request);
142 template <
typename DeleteThingShadowRequestT = Model::DeleteThingShadowRequest>
144 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
145 return SubmitAsync(&IoTDataPlaneClient::DeleteThingShadow, request, handler, context);
168 template <
typename GetRetainedMessageRequestT = Model::GetRetainedMessageRequest>
170 return SubmitCallable(&IoTDataPlaneClient::GetRetainedMessage, request);
177 template <
typename GetRetainedMessageRequestT = Model::GetRetainedMessageRequest>
179 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
180 return SubmitAsync(&IoTDataPlaneClient::GetRetainedMessage, request, handler, context);
198 template <
typename GetThingShadowRequestT = Model::GetThingShadowRequest>
200 return SubmitCallable(&IoTDataPlaneClient::GetThingShadow, request);
207 template <
typename GetThingShadowRequestT = Model::GetThingShadowRequest>
209 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
210 return SubmitAsync(&IoTDataPlaneClient::GetThingShadow, request, handler, context);
227 template <
typename ListNamedShadowsForThingRequestT = Model::ListNamedShadowsForThingRequest>
229 return SubmitCallable(&IoTDataPlaneClient::ListNamedShadowsForThing, request);
236 template <
typename ListNamedShadowsForThingRequestT = Model::ListNamedShadowsForThingRequest>
239 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
240 return SubmitAsync(&IoTDataPlaneClient::ListNamedShadowsForThing, request, handler, context);
265 template <
typename ListRetainedMessagesRequestT = Model::ListRetainedMessagesRequest>
267 return SubmitCallable(&IoTDataPlaneClient::ListRetainedMessages, request);
274 template <
typename ListRetainedMessagesRequestT = Model::ListRetainedMessagesRequest>
276 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
277 const ListRetainedMessagesRequestT& request = {})
const {
278 return SubmitAsync(&IoTDataPlaneClient::ListRetainedMessages, request, handler, context);
298 template <
typename PublishRequestT = Model::PublishRequest>
300 return SubmitCallable(&IoTDataPlaneClient::Publish, request);
307 template <
typename PublishRequestT = Model::PublishRequest>
309 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
310 return SubmitAsync(&IoTDataPlaneClient::Publish, request, handler, context);
329 template <
typename UpdateThingShadowRequestT = Model::UpdateThingShadowRequest>
331 return SubmitCallable(&IoTDataPlaneClient::UpdateThingShadow, request);
338 template <
typename UpdateThingShadowRequestT = Model::UpdateThingShadowRequest>
340 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
341 return SubmitAsync(&IoTDataPlaneClient::UpdateThingShadow, request, handler, context);
352 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
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
void OverrideEndpoint(const Aws::String &endpoint)
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
std::shared_ptr< IoTDataPlaneEndpointProviderBase > & accessEndpointProvider()
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 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