7#include <aws/firehose/Firehose_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/firehose/FirehoseServiceClientModel.h>
41 std::shared_ptr<FirehoseEndpointProviderBase> endpointProvider =
nullptr);
48 std::shared_ptr<FirehoseEndpointProviderBase> endpointProvider =
nullptr,
55 FirehoseClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
56 std::shared_ptr<FirehoseEndpointProviderBase> endpointProvider =
nullptr,
78 FirehoseClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
155 template<
typename CreateDeliveryStreamRequestT = Model::CreateDeliveryStreamRequest>
158 return SubmitCallable(&FirehoseClient::CreateDeliveryStream, request);
164 template<
typename CreateDeliveryStreamRequestT = Model::CreateDeliveryStreamRequest>
167 return SubmitAsync(&FirehoseClient::CreateDeliveryStream, request, handler, context);
196 template<
typename DeleteDeliveryStreamRequestT = Model::DeleteDeliveryStreamRequest>
199 return SubmitCallable(&FirehoseClient::DeleteDeliveryStream, request);
205 template<
typename DeleteDeliveryStreamRequestT = Model::DeleteDeliveryStreamRequest>
208 return SubmitAsync(&FirehoseClient::DeleteDeliveryStream, request, handler, context);
231 template<
typename DescribeDeliveryStreamRequestT = Model::DescribeDeliveryStreamRequest>
234 return SubmitCallable(&FirehoseClient::DescribeDeliveryStream, request);
240 template<
typename DescribeDeliveryStreamRequestT = Model::DescribeDeliveryStreamRequest>
243 return SubmitAsync(&FirehoseClient::DescribeDeliveryStream, request, handler, context);
265 template<
typename ListDeliveryStreamsRequestT = Model::ListDeliveryStreamsRequest>
268 return SubmitCallable(&FirehoseClient::ListDeliveryStreams, request);
274 template<
typename ListDeliveryStreamsRequestT = Model::ListDeliveryStreamsRequest>
277 return SubmitAsync(&FirehoseClient::ListDeliveryStreams, request, handler, context);
291 template<
typename ListTagsForDeliveryStreamRequestT = Model::ListTagsForDeliveryStreamRequest>
294 return SubmitCallable(&FirehoseClient::ListTagsForDeliveryStream, request);
300 template<
typename ListTagsForDeliveryStreamRequestT = Model::ListTagsForDeliveryStreamRequest>
303 return SubmitAsync(&FirehoseClient::ListTagsForDeliveryStream, request, handler, context);
353 template<
typename PutRecordRequestT = Model::PutRecordRequest>
356 return SubmitCallable(&FirehoseClient::PutRecord, request);
362 template<
typename PutRecordRequestT = Model::PutRecordRequest>
365 return SubmitAsync(&FirehoseClient::PutRecord, request, handler, context);
437 template<
typename PutRecordBatchRequestT = Model::PutRecordBatchRequest>
440 return SubmitCallable(&FirehoseClient::PutRecordBatch, request);
446 template<
typename PutRecordBatchRequestT = Model::PutRecordBatchRequest>
449 return SubmitAsync(&FirehoseClient::PutRecordBatch, request, handler, context);
501 template<
typename StartDeliveryStreamEncryptionRequestT = Model::StartDeliveryStreamEncryptionRequest>
504 return SubmitCallable(&FirehoseClient::StartDeliveryStreamEncryption, request);
510 template<
typename StartDeliveryStreamEncryptionRequestT = Model::StartDeliveryStreamEncryptionRequest>
513 return SubmitAsync(&FirehoseClient::StartDeliveryStreamEncryption, request, handler, context);
546 template<
typename StopDeliveryStreamEncryptionRequestT = Model::StopDeliveryStreamEncryptionRequest>
549 return SubmitCallable(&FirehoseClient::StopDeliveryStreamEncryption, request);
555 template<
typename StopDeliveryStreamEncryptionRequestT = Model::StopDeliveryStreamEncryptionRequest>
558 return SubmitAsync(&FirehoseClient::StopDeliveryStreamEncryption, request, handler, context);
581 template<
typename TagDeliveryStreamRequestT = Model::TagDeliveryStreamRequest>
584 return SubmitCallable(&FirehoseClient::TagDeliveryStream, request);
590 template<
typename TagDeliveryStreamRequestT = Model::TagDeliveryStreamRequest>
593 return SubmitAsync(&FirehoseClient::TagDeliveryStream, request, handler, context);
610 template<
typename UntagDeliveryStreamRequestT = Model::UntagDeliveryStreamRequest>
613 return SubmitCallable(&FirehoseClient::UntagDeliveryStream, request);
619 template<
typename UntagDeliveryStreamRequestT = Model::UntagDeliveryStreamRequest>
622 return SubmitAsync(&FirehoseClient::UntagDeliveryStream, request, handler, context);
660 template<
typename UpdateDestinationRequestT = Model::UpdateDestinationRequest>
663 return SubmitCallable(&FirehoseClient::UpdateDestination, request);
669 template<
typename UpdateDestinationRequestT = Model::UpdateDestinationRequest>
672 return SubmitAsync(&FirehoseClient::UpdateDestination, request, handler, context);
683 std::shared_ptr<FirehoseEndpointProviderBase> m_endpointProvider;
FirehoseClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< FirehoseEndpointProviderBase > endpointProvider=nullptr, const Aws::Firehose::FirehoseClientConfiguration &clientConfiguration=Aws::Firehose::FirehoseClientConfiguration())
void CreateDeliveryStreamAsync(const CreateDeliveryStreamRequestT &request, const CreateDeliveryStreamResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void PutRecordBatchAsync(const PutRecordBatchRequestT &request, const PutRecordBatchResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PutRecordOutcome PutRecord(const Model::PutRecordRequest &request) const
Model::DescribeDeliveryStreamOutcomeCallable DescribeDeliveryStreamCallable(const DescribeDeliveryStreamRequestT &request) const
virtual Model::ListDeliveryStreamsOutcome ListDeliveryStreams(const Model::ListDeliveryStreamsRequest &request={}) const
Model::StartDeliveryStreamEncryptionOutcomeCallable StartDeliveryStreamEncryptionCallable(const StartDeliveryStreamEncryptionRequestT &request) const
virtual Model::DeleteDeliveryStreamOutcome DeleteDeliveryStream(const Model::DeleteDeliveryStreamRequest &request) const
FirehoseClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
void StartDeliveryStreamEncryptionAsync(const StartDeliveryStreamEncryptionRequestT &request, const StartDeliveryStreamEncryptionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
FirehoseClientConfiguration ClientConfigurationType
virtual Model::ListTagsForDeliveryStreamOutcome ListTagsForDeliveryStream(const Model::ListTagsForDeliveryStreamRequest &request) const
virtual Model::StartDeliveryStreamEncryptionOutcome StartDeliveryStreamEncryption(const Model::StartDeliveryStreamEncryptionRequest &request) const
Model::PutRecordOutcomeCallable PutRecordCallable(const PutRecordRequestT &request) const
void ListTagsForDeliveryStreamAsync(const ListTagsForDeliveryStreamRequestT &request, const ListTagsForDeliveryStreamResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void UntagDeliveryStreamAsync(const UntagDeliveryStreamRequestT &request, const UntagDeliveryStreamResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::TagDeliveryStreamOutcomeCallable TagDeliveryStreamCallable(const TagDeliveryStreamRequestT &request) const
void PutRecordAsync(const PutRecordRequestT &request, const PutRecordResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
static const char * GetServiceName()
virtual Model::PutRecordBatchOutcome PutRecordBatch(const Model::PutRecordBatchRequest &request) const
void StopDeliveryStreamEncryptionAsync(const StopDeliveryStreamEncryptionRequestT &request, const StopDeliveryStreamEncryptionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::ListTagsForDeliveryStreamOutcomeCallable ListTagsForDeliveryStreamCallable(const ListTagsForDeliveryStreamRequestT &request) const
void UpdateDestinationAsync(const UpdateDestinationRequestT &request, const UpdateDestinationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
std::shared_ptr< FirehoseEndpointProviderBase > & accessEndpointProvider()
Model::PutRecordBatchOutcomeCallable PutRecordBatchCallable(const PutRecordBatchRequestT &request) const
FirehoseClient(const Aws::Firehose::FirehoseClientConfiguration &clientConfiguration=Aws::Firehose::FirehoseClientConfiguration(), std::shared_ptr< FirehoseEndpointProviderBase > endpointProvider=nullptr)
void TagDeliveryStreamAsync(const TagDeliveryStreamRequestT &request, const TagDeliveryStreamResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::CreateDeliveryStreamOutcome CreateDeliveryStream(const Model::CreateDeliveryStreamRequest &request) const
FirehoseClient(const Aws::Client::ClientConfiguration &clientConfiguration)
FirehoseClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::CreateDeliveryStreamOutcomeCallable CreateDeliveryStreamCallable(const CreateDeliveryStreamRequestT &request) const
virtual Model::UpdateDestinationOutcome UpdateDestination(const Model::UpdateDestinationRequest &request) const
virtual Model::StopDeliveryStreamEncryptionOutcome StopDeliveryStreamEncryption(const Model::StopDeliveryStreamEncryptionRequest &request) const
Model::DeleteDeliveryStreamOutcomeCallable DeleteDeliveryStreamCallable(const DeleteDeliveryStreamRequestT &request) const
static const char * GetAllocationTag()
virtual Model::DescribeDeliveryStreamOutcome DescribeDeliveryStream(const Model::DescribeDeliveryStreamRequest &request) const
FirehoseEndpointProvider EndpointProviderType
void DeleteDeliveryStreamAsync(const DeleteDeliveryStreamRequestT &request, const DeleteDeliveryStreamResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::TagDeliveryStreamOutcome TagDeliveryStream(const Model::TagDeliveryStreamRequest &request) const
virtual Model::UntagDeliveryStreamOutcome UntagDeliveryStream(const Model::UntagDeliveryStreamRequest &request) const
Model::ListDeliveryStreamsOutcomeCallable ListDeliveryStreamsCallable(const ListDeliveryStreamsRequestT &request={}) const
Aws::Client::AWSJsonClient BASECLASS
virtual ~FirehoseClient()
void ListDeliveryStreamsAsync(const ListDeliveryStreamsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListDeliveryStreamsRequestT &request={}) const
FirehoseClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< FirehoseEndpointProviderBase > endpointProvider=nullptr, const Aws::Firehose::FirehoseClientConfiguration &clientConfiguration=Aws::Firehose::FirehoseClientConfiguration())
void DescribeDeliveryStreamAsync(const DescribeDeliveryStreamRequestT &request, const DescribeDeliveryStreamResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::UpdateDestinationOutcomeCallable UpdateDestinationCallable(const UpdateDestinationRequestT &request) const
void OverrideEndpoint(const Aws::String &endpoint)
Model::UntagDeliveryStreamOutcomeCallable UntagDeliveryStreamCallable(const UntagDeliveryStreamRequestT &request) const
Model::StopDeliveryStreamEncryptionOutcomeCallable StopDeliveryStreamEncryptionCallable(const StopDeliveryStreamEncryptionRequestT &request) const
std::future< UpdateDestinationOutcome > UpdateDestinationOutcomeCallable
std::future< DeleteDeliveryStreamOutcome > DeleteDeliveryStreamOutcomeCallable
std::future< DescribeDeliveryStreamOutcome > DescribeDeliveryStreamOutcomeCallable
std::future< CreateDeliveryStreamOutcome > CreateDeliveryStreamOutcomeCallable
std::future< UntagDeliveryStreamOutcome > UntagDeliveryStreamOutcomeCallable
std::future< PutRecordBatchOutcome > PutRecordBatchOutcomeCallable
std::future< ListDeliveryStreamsOutcome > ListDeliveryStreamsOutcomeCallable
std::future< TagDeliveryStreamOutcome > TagDeliveryStreamOutcomeCallable
std::future< StartDeliveryStreamEncryptionOutcome > StartDeliveryStreamEncryptionOutcomeCallable
std::future< StopDeliveryStreamEncryptionOutcome > StopDeliveryStreamEncryptionOutcomeCallable
std::future< PutRecordOutcome > PutRecordOutcomeCallable
std::future< ListTagsForDeliveryStreamOutcome > ListTagsForDeliveryStreamOutcomeCallable
std::function< void(const FirehoseClient *, const Model::TagDeliveryStreamRequest &, const Model::TagDeliveryStreamOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > TagDeliveryStreamResponseReceivedHandler
std::function< void(const FirehoseClient *, const Model::UpdateDestinationRequest &, const Model::UpdateDestinationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateDestinationResponseReceivedHandler
std::function< void(const FirehoseClient *, const Model::StopDeliveryStreamEncryptionRequest &, const Model::StopDeliveryStreamEncryptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > StopDeliveryStreamEncryptionResponseReceivedHandler
std::function< void(const FirehoseClient *, const Model::CreateDeliveryStreamRequest &, const Model::CreateDeliveryStreamOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateDeliveryStreamResponseReceivedHandler
std::function< void(const FirehoseClient *, const Model::PutRecordBatchRequest &, const Model::PutRecordBatchOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutRecordBatchResponseReceivedHandler
std::function< void(const FirehoseClient *, const Model::PutRecordRequest &, const Model::PutRecordOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutRecordResponseReceivedHandler
std::function< void(const FirehoseClient *, const Model::DeleteDeliveryStreamRequest &, const Model::DeleteDeliveryStreamOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteDeliveryStreamResponseReceivedHandler
std::function< void(const FirehoseClient *, const Model::StartDeliveryStreamEncryptionRequest &, const Model::StartDeliveryStreamEncryptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > StartDeliveryStreamEncryptionResponseReceivedHandler
std::function< void(const FirehoseClient *, const Model::UntagDeliveryStreamRequest &, const Model::UntagDeliveryStreamOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UntagDeliveryStreamResponseReceivedHandler
std::function< void(const FirehoseClient *, const Model::ListTagsForDeliveryStreamRequest &, const Model::ListTagsForDeliveryStreamOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListTagsForDeliveryStreamResponseReceivedHandler
std::function< void(const FirehoseClient *, const Model::ListDeliveryStreamsRequest &, const Model::ListDeliveryStreamsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListDeliveryStreamsResponseReceivedHandler
std::function< void(const FirehoseClient *, const Model::DescribeDeliveryStreamRequest &, const Model::DescribeDeliveryStreamOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeDeliveryStreamResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String