/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes the configuration of a destination in Amazon ES.See
* Also:
AWS
* API Reference
The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data * Firehose for calling the Amazon ES Configuration API and for indexing documents. * For more information, see Grant * Kinesis Data Firehose Access to an Amazon S3 Destination and Amazon * Resource Names (ARNs) and AWS Service Namespaces.
*/ inline const Aws::String& GetRoleARN() const{ return m_roleARN; } /** *The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data * Firehose for calling the Amazon ES Configuration API and for indexing documents. * For more information, see Grant * Kinesis Data Firehose Access to an Amazon S3 Destination and Amazon * Resource Names (ARNs) and AWS Service Namespaces.
*/ inline bool RoleARNHasBeenSet() const { return m_roleARNHasBeenSet; } /** *The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data * Firehose for calling the Amazon ES Configuration API and for indexing documents. * For more information, see Grant * Kinesis Data Firehose Access to an Amazon S3 Destination and Amazon * Resource Names (ARNs) and AWS Service Namespaces.
*/ inline void SetRoleARN(const Aws::String& value) { m_roleARNHasBeenSet = true; m_roleARN = value; } /** *The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data * Firehose for calling the Amazon ES Configuration API and for indexing documents. * For more information, see Grant * Kinesis Data Firehose Access to an Amazon S3 Destination and Amazon * Resource Names (ARNs) and AWS Service Namespaces.
*/ inline void SetRoleARN(Aws::String&& value) { m_roleARNHasBeenSet = true; m_roleARN = std::move(value); } /** *The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data * Firehose for calling the Amazon ES Configuration API and for indexing documents. * For more information, see Grant * Kinesis Data Firehose Access to an Amazon S3 Destination and Amazon * Resource Names (ARNs) and AWS Service Namespaces.
*/ inline void SetRoleARN(const char* value) { m_roleARNHasBeenSet = true; m_roleARN.assign(value); } /** *The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data * Firehose for calling the Amazon ES Configuration API and for indexing documents. * For more information, see Grant * Kinesis Data Firehose Access to an Amazon S3 Destination and Amazon * Resource Names (ARNs) and AWS Service Namespaces.
*/ inline ElasticsearchDestinationConfiguration& WithRoleARN(const Aws::String& value) { SetRoleARN(value); return *this;} /** *The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data * Firehose for calling the Amazon ES Configuration API and for indexing documents. * For more information, see Grant * Kinesis Data Firehose Access to an Amazon S3 Destination and Amazon * Resource Names (ARNs) and AWS Service Namespaces.
*/ inline ElasticsearchDestinationConfiguration& WithRoleARN(Aws::String&& value) { SetRoleARN(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data * Firehose for calling the Amazon ES Configuration API and for indexing documents. * For more information, see Grant * Kinesis Data Firehose Access to an Amazon S3 Destination and Amazon * Resource Names (ARNs) and AWS Service Namespaces.
*/ inline ElasticsearchDestinationConfiguration& WithRoleARN(const char* value) { SetRoleARN(value); return *this;} /** *The ARN of the Amazon ES domain. The IAM role must have permissions
* for DescribeElasticsearchDomain
,
* DescribeElasticsearchDomains
, and
* DescribeElasticsearchDomainConfig
after assuming the role specified
* in RoleARN. For more information, see Amazon
* Resource Names (ARNs) and AWS Service Namespaces.
Specify either
* ClusterEndpoint
or DomainARN
.
The ARN of the Amazon ES domain. The IAM role must have permissions
* for DescribeElasticsearchDomain
,
* DescribeElasticsearchDomains
, and
* DescribeElasticsearchDomainConfig
after assuming the role specified
* in RoleARN. For more information, see Amazon
* Resource Names (ARNs) and AWS Service Namespaces.
Specify either
* ClusterEndpoint
or DomainARN
.
The ARN of the Amazon ES domain. The IAM role must have permissions
* for DescribeElasticsearchDomain
,
* DescribeElasticsearchDomains
, and
* DescribeElasticsearchDomainConfig
after assuming the role specified
* in RoleARN. For more information, see Amazon
* Resource Names (ARNs) and AWS Service Namespaces.
Specify either
* ClusterEndpoint
or DomainARN
.
The ARN of the Amazon ES domain. The IAM role must have permissions
* for DescribeElasticsearchDomain
,
* DescribeElasticsearchDomains
, and
* DescribeElasticsearchDomainConfig
after assuming the role specified
* in RoleARN. For more information, see Amazon
* Resource Names (ARNs) and AWS Service Namespaces.
Specify either
* ClusterEndpoint
or DomainARN
.
The ARN of the Amazon ES domain. The IAM role must have permissions
* for DescribeElasticsearchDomain
,
* DescribeElasticsearchDomains
, and
* DescribeElasticsearchDomainConfig
after assuming the role specified
* in RoleARN. For more information, see Amazon
* Resource Names (ARNs) and AWS Service Namespaces.
Specify either
* ClusterEndpoint
or DomainARN
.
The ARN of the Amazon ES domain. The IAM role must have permissions
* for DescribeElasticsearchDomain
,
* DescribeElasticsearchDomains
, and
* DescribeElasticsearchDomainConfig
after assuming the role specified
* in RoleARN. For more information, see Amazon
* Resource Names (ARNs) and AWS Service Namespaces.
Specify either
* ClusterEndpoint
or DomainARN
.
The ARN of the Amazon ES domain. The IAM role must have permissions
* for DescribeElasticsearchDomain
,
* DescribeElasticsearchDomains
, and
* DescribeElasticsearchDomainConfig
after assuming the role specified
* in RoleARN. For more information, see Amazon
* Resource Names (ARNs) and AWS Service Namespaces.
Specify either
* ClusterEndpoint
or DomainARN
.
The ARN of the Amazon ES domain. The IAM role must have permissions
* for DescribeElasticsearchDomain
,
* DescribeElasticsearchDomains
, and
* DescribeElasticsearchDomainConfig
after assuming the role specified
* in RoleARN. For more information, see Amazon
* Resource Names (ARNs) and AWS Service Namespaces.
Specify either
* ClusterEndpoint
or DomainARN
.
The endpoint to use when communicating with the cluster. Specify either this
* ClusterEndpoint
or the DomainARN
field.
The endpoint to use when communicating with the cluster. Specify either this
* ClusterEndpoint
or the DomainARN
field.
The endpoint to use when communicating with the cluster. Specify either this
* ClusterEndpoint
or the DomainARN
field.
The endpoint to use when communicating with the cluster. Specify either this
* ClusterEndpoint
or the DomainARN
field.
The endpoint to use when communicating with the cluster. Specify either this
* ClusterEndpoint
or the DomainARN
field.
The endpoint to use when communicating with the cluster. Specify either this
* ClusterEndpoint
or the DomainARN
field.
The endpoint to use when communicating with the cluster. Specify either this
* ClusterEndpoint
or the DomainARN
field.
The endpoint to use when communicating with the cluster. Specify either this
* ClusterEndpoint
or the DomainARN
field.
The Elasticsearch index name.
*/ inline const Aws::String& GetIndexName() const{ return m_indexName; } /** *The Elasticsearch index name.
*/ inline bool IndexNameHasBeenSet() const { return m_indexNameHasBeenSet; } /** *The Elasticsearch index name.
*/ inline void SetIndexName(const Aws::String& value) { m_indexNameHasBeenSet = true; m_indexName = value; } /** *The Elasticsearch index name.
*/ inline void SetIndexName(Aws::String&& value) { m_indexNameHasBeenSet = true; m_indexName = std::move(value); } /** *The Elasticsearch index name.
*/ inline void SetIndexName(const char* value) { m_indexNameHasBeenSet = true; m_indexName.assign(value); } /** *The Elasticsearch index name.
*/ inline ElasticsearchDestinationConfiguration& WithIndexName(const Aws::String& value) { SetIndexName(value); return *this;} /** *The Elasticsearch index name.
*/ inline ElasticsearchDestinationConfiguration& WithIndexName(Aws::String&& value) { SetIndexName(std::move(value)); return *this;} /** *The Elasticsearch index name.
*/ inline ElasticsearchDestinationConfiguration& WithIndexName(const char* value) { SetIndexName(value); return *this;} /** *The Elasticsearch type name. For Elasticsearch 6.x, there can be only one * type per index. If you try to specify a new type for an existing index that * already has another type, Kinesis Data Firehose returns an error during run * time.
For Elasticsearch 7.x, don't specify a TypeName
.
The Elasticsearch type name. For Elasticsearch 6.x, there can be only one * type per index. If you try to specify a new type for an existing index that * already has another type, Kinesis Data Firehose returns an error during run * time.
For Elasticsearch 7.x, don't specify a TypeName
.
The Elasticsearch type name. For Elasticsearch 6.x, there can be only one * type per index. If you try to specify a new type for an existing index that * already has another type, Kinesis Data Firehose returns an error during run * time.
For Elasticsearch 7.x, don't specify a TypeName
.
The Elasticsearch type name. For Elasticsearch 6.x, there can be only one * type per index. If you try to specify a new type for an existing index that * already has another type, Kinesis Data Firehose returns an error during run * time.
For Elasticsearch 7.x, don't specify a TypeName
.
The Elasticsearch type name. For Elasticsearch 6.x, there can be only one * type per index. If you try to specify a new type for an existing index that * already has another type, Kinesis Data Firehose returns an error during run * time.
For Elasticsearch 7.x, don't specify a TypeName
.
The Elasticsearch type name. For Elasticsearch 6.x, there can be only one * type per index. If you try to specify a new type for an existing index that * already has another type, Kinesis Data Firehose returns an error during run * time.
For Elasticsearch 7.x, don't specify a TypeName
.
The Elasticsearch type name. For Elasticsearch 6.x, there can be only one * type per index. If you try to specify a new type for an existing index that * already has another type, Kinesis Data Firehose returns an error during run * time.
For Elasticsearch 7.x, don't specify a TypeName
.
The Elasticsearch type name. For Elasticsearch 6.x, there can be only one * type per index. If you try to specify a new type for an existing index that * already has another type, Kinesis Data Firehose returns an error during run * time.
For Elasticsearch 7.x, don't specify a TypeName
.
The Elasticsearch index rotation period. Index rotation appends a timestamp
* to the IndexName
to facilitate the expiration of old data. For more
* information, see Index
* Rotation for the Amazon ES Destination. The default value
* is OneDay
.
The Elasticsearch index rotation period. Index rotation appends a timestamp
* to the IndexName
to facilitate the expiration of old data. For more
* information, see Index
* Rotation for the Amazon ES Destination. The default value
* is OneDay
.
The Elasticsearch index rotation period. Index rotation appends a timestamp
* to the IndexName
to facilitate the expiration of old data. For more
* information, see Index
* Rotation for the Amazon ES Destination. The default value
* is OneDay
.
The Elasticsearch index rotation period. Index rotation appends a timestamp
* to the IndexName
to facilitate the expiration of old data. For more
* information, see Index
* Rotation for the Amazon ES Destination. The default value
* is OneDay
.
The Elasticsearch index rotation period. Index rotation appends a timestamp
* to the IndexName
to facilitate the expiration of old data. For more
* information, see Index
* Rotation for the Amazon ES Destination. The default value
* is OneDay
.
The Elasticsearch index rotation period. Index rotation appends a timestamp
* to the IndexName
to facilitate the expiration of old data. For more
* information, see Index
* Rotation for the Amazon ES Destination. The default value
* is OneDay
.
The buffering options. If no value is specified, the default values for
* ElasticsearchBufferingHints
are used.
The buffering options. If no value is specified, the default values for
* ElasticsearchBufferingHints
are used.
The buffering options. If no value is specified, the default values for
* ElasticsearchBufferingHints
are used.
The buffering options. If no value is specified, the default values for
* ElasticsearchBufferingHints
are used.
The buffering options. If no value is specified, the default values for
* ElasticsearchBufferingHints
are used.
The buffering options. If no value is specified, the default values for
* ElasticsearchBufferingHints
are used.
The retry behavior in case Kinesis Data Firehose is unable to deliver * documents to Amazon ES. The default value is 300 (5 minutes).
*/ inline const ElasticsearchRetryOptions& GetRetryOptions() const{ return m_retryOptions; } /** *The retry behavior in case Kinesis Data Firehose is unable to deliver * documents to Amazon ES. The default value is 300 (5 minutes).
*/ inline bool RetryOptionsHasBeenSet() const { return m_retryOptionsHasBeenSet; } /** *The retry behavior in case Kinesis Data Firehose is unable to deliver * documents to Amazon ES. The default value is 300 (5 minutes).
*/ inline void SetRetryOptions(const ElasticsearchRetryOptions& value) { m_retryOptionsHasBeenSet = true; m_retryOptions = value; } /** *The retry behavior in case Kinesis Data Firehose is unable to deliver * documents to Amazon ES. The default value is 300 (5 minutes).
*/ inline void SetRetryOptions(ElasticsearchRetryOptions&& value) { m_retryOptionsHasBeenSet = true; m_retryOptions = std::move(value); } /** *The retry behavior in case Kinesis Data Firehose is unable to deliver * documents to Amazon ES. The default value is 300 (5 minutes).
*/ inline ElasticsearchDestinationConfiguration& WithRetryOptions(const ElasticsearchRetryOptions& value) { SetRetryOptions(value); return *this;} /** *The retry behavior in case Kinesis Data Firehose is unable to deliver * documents to Amazon ES. The default value is 300 (5 minutes).
*/ inline ElasticsearchDestinationConfiguration& WithRetryOptions(ElasticsearchRetryOptions&& value) { SetRetryOptions(std::move(value)); return *this;} /** *Defines how documents should be delivered to Amazon S3. When it is set to
* FailedDocumentsOnly
, Kinesis Data Firehose writes any documents
* that could not be indexed to the configured Amazon S3 destination, with
* elasticsearch-failed/
appended to the key prefix. When set to
* AllDocuments
, Kinesis Data Firehose delivers all incoming records
* to Amazon S3, and also writes failed documents with
* elasticsearch-failed/
appended to the prefix. For more information,
* see Amazon
* S3 Backup for the Amazon ES Destination. Default value is
* FailedDocumentsOnly
.
You can't change this backup mode after * you create the delivery stream.
*/ inline const ElasticsearchS3BackupMode& GetS3BackupMode() const{ return m_s3BackupMode; } /** *Defines how documents should be delivered to Amazon S3. When it is set to
* FailedDocumentsOnly
, Kinesis Data Firehose writes any documents
* that could not be indexed to the configured Amazon S3 destination, with
* elasticsearch-failed/
appended to the key prefix. When set to
* AllDocuments
, Kinesis Data Firehose delivers all incoming records
* to Amazon S3, and also writes failed documents with
* elasticsearch-failed/
appended to the prefix. For more information,
* see Amazon
* S3 Backup for the Amazon ES Destination. Default value is
* FailedDocumentsOnly
.
You can't change this backup mode after * you create the delivery stream.
*/ inline bool S3BackupModeHasBeenSet() const { return m_s3BackupModeHasBeenSet; } /** *Defines how documents should be delivered to Amazon S3. When it is set to
* FailedDocumentsOnly
, Kinesis Data Firehose writes any documents
* that could not be indexed to the configured Amazon S3 destination, with
* elasticsearch-failed/
appended to the key prefix. When set to
* AllDocuments
, Kinesis Data Firehose delivers all incoming records
* to Amazon S3, and also writes failed documents with
* elasticsearch-failed/
appended to the prefix. For more information,
* see Amazon
* S3 Backup for the Amazon ES Destination. Default value is
* FailedDocumentsOnly
.
You can't change this backup mode after * you create the delivery stream.
*/ inline void SetS3BackupMode(const ElasticsearchS3BackupMode& value) { m_s3BackupModeHasBeenSet = true; m_s3BackupMode = value; } /** *Defines how documents should be delivered to Amazon S3. When it is set to
* FailedDocumentsOnly
, Kinesis Data Firehose writes any documents
* that could not be indexed to the configured Amazon S3 destination, with
* elasticsearch-failed/
appended to the key prefix. When set to
* AllDocuments
, Kinesis Data Firehose delivers all incoming records
* to Amazon S3, and also writes failed documents with
* elasticsearch-failed/
appended to the prefix. For more information,
* see Amazon
* S3 Backup for the Amazon ES Destination. Default value is
* FailedDocumentsOnly
.
You can't change this backup mode after * you create the delivery stream.
*/ inline void SetS3BackupMode(ElasticsearchS3BackupMode&& value) { m_s3BackupModeHasBeenSet = true; m_s3BackupMode = std::move(value); } /** *Defines how documents should be delivered to Amazon S3. When it is set to
* FailedDocumentsOnly
, Kinesis Data Firehose writes any documents
* that could not be indexed to the configured Amazon S3 destination, with
* elasticsearch-failed/
appended to the key prefix. When set to
* AllDocuments
, Kinesis Data Firehose delivers all incoming records
* to Amazon S3, and also writes failed documents with
* elasticsearch-failed/
appended to the prefix. For more information,
* see Amazon
* S3 Backup for the Amazon ES Destination. Default value is
* FailedDocumentsOnly
.
You can't change this backup mode after * you create the delivery stream.
*/ inline ElasticsearchDestinationConfiguration& WithS3BackupMode(const ElasticsearchS3BackupMode& value) { SetS3BackupMode(value); return *this;} /** *Defines how documents should be delivered to Amazon S3. When it is set to
* FailedDocumentsOnly
, Kinesis Data Firehose writes any documents
* that could not be indexed to the configured Amazon S3 destination, with
* elasticsearch-failed/
appended to the key prefix. When set to
* AllDocuments
, Kinesis Data Firehose delivers all incoming records
* to Amazon S3, and also writes failed documents with
* elasticsearch-failed/
appended to the prefix. For more information,
* see Amazon
* S3 Backup for the Amazon ES Destination. Default value is
* FailedDocumentsOnly
.
You can't change this backup mode after * you create the delivery stream.
*/ inline ElasticsearchDestinationConfiguration& WithS3BackupMode(ElasticsearchS3BackupMode&& value) { SetS3BackupMode(std::move(value)); return *this;} /** *The configuration for the backup Amazon S3 location.
*/ inline const S3DestinationConfiguration& GetS3Configuration() const{ return m_s3Configuration; } /** *The configuration for the backup Amazon S3 location.
*/ inline bool S3ConfigurationHasBeenSet() const { return m_s3ConfigurationHasBeenSet; } /** *The configuration for the backup Amazon S3 location.
*/ inline void SetS3Configuration(const S3DestinationConfiguration& value) { m_s3ConfigurationHasBeenSet = true; m_s3Configuration = value; } /** *The configuration for the backup Amazon S3 location.
*/ inline void SetS3Configuration(S3DestinationConfiguration&& value) { m_s3ConfigurationHasBeenSet = true; m_s3Configuration = std::move(value); } /** *The configuration for the backup Amazon S3 location.
*/ inline ElasticsearchDestinationConfiguration& WithS3Configuration(const S3DestinationConfiguration& value) { SetS3Configuration(value); return *this;} /** *The configuration for the backup Amazon S3 location.
*/ inline ElasticsearchDestinationConfiguration& WithS3Configuration(S3DestinationConfiguration&& value) { SetS3Configuration(std::move(value)); return *this;} /** *The data processing configuration.
*/ inline const ProcessingConfiguration& GetProcessingConfiguration() const{ return m_processingConfiguration; } /** *The data processing configuration.
*/ inline bool ProcessingConfigurationHasBeenSet() const { return m_processingConfigurationHasBeenSet; } /** *The data processing configuration.
*/ inline void SetProcessingConfiguration(const ProcessingConfiguration& value) { m_processingConfigurationHasBeenSet = true; m_processingConfiguration = value; } /** *The data processing configuration.
*/ inline void SetProcessingConfiguration(ProcessingConfiguration&& value) { m_processingConfigurationHasBeenSet = true; m_processingConfiguration = std::move(value); } /** *The data processing configuration.
*/ inline ElasticsearchDestinationConfiguration& WithProcessingConfiguration(const ProcessingConfiguration& value) { SetProcessingConfiguration(value); return *this;} /** *The data processing configuration.
*/ inline ElasticsearchDestinationConfiguration& WithProcessingConfiguration(ProcessingConfiguration&& value) { SetProcessingConfiguration(std::move(value)); return *this;} /** *The Amazon CloudWatch logging options for your delivery stream.
*/ inline const CloudWatchLoggingOptions& GetCloudWatchLoggingOptions() const{ return m_cloudWatchLoggingOptions; } /** *The Amazon CloudWatch logging options for your delivery stream.
*/ inline bool CloudWatchLoggingOptionsHasBeenSet() const { return m_cloudWatchLoggingOptionsHasBeenSet; } /** *The Amazon CloudWatch logging options for your delivery stream.
*/ inline void SetCloudWatchLoggingOptions(const CloudWatchLoggingOptions& value) { m_cloudWatchLoggingOptionsHasBeenSet = true; m_cloudWatchLoggingOptions = value; } /** *The Amazon CloudWatch logging options for your delivery stream.
*/ inline void SetCloudWatchLoggingOptions(CloudWatchLoggingOptions&& value) { m_cloudWatchLoggingOptionsHasBeenSet = true; m_cloudWatchLoggingOptions = std::move(value); } /** *The Amazon CloudWatch logging options for your delivery stream.
*/ inline ElasticsearchDestinationConfiguration& WithCloudWatchLoggingOptions(const CloudWatchLoggingOptions& value) { SetCloudWatchLoggingOptions(value); return *this;} /** *The Amazon CloudWatch logging options for your delivery stream.
*/ inline ElasticsearchDestinationConfiguration& WithCloudWatchLoggingOptions(CloudWatchLoggingOptions&& value) { SetCloudWatchLoggingOptions(std::move(value)); return *this;} /** *The details of the VPC of the Amazon ES destination.
*/ inline const VpcConfiguration& GetVpcConfiguration() const{ return m_vpcConfiguration; } /** *The details of the VPC of the Amazon ES destination.
*/ inline bool VpcConfigurationHasBeenSet() const { return m_vpcConfigurationHasBeenSet; } /** *The details of the VPC of the Amazon ES destination.
*/ inline void SetVpcConfiguration(const VpcConfiguration& value) { m_vpcConfigurationHasBeenSet = true; m_vpcConfiguration = value; } /** *The details of the VPC of the Amazon ES destination.
*/ inline void SetVpcConfiguration(VpcConfiguration&& value) { m_vpcConfigurationHasBeenSet = true; m_vpcConfiguration = std::move(value); } /** *The details of the VPC of the Amazon ES destination.
*/ inline ElasticsearchDestinationConfiguration& WithVpcConfiguration(const VpcConfiguration& value) { SetVpcConfiguration(value); return *this;} /** *The details of the VPC of the Amazon ES destination.
*/ inline ElasticsearchDestinationConfiguration& WithVpcConfiguration(VpcConfiguration&& value) { SetVpcConfiguration(std::move(value)); return *this;} private: Aws::String m_roleARN; bool m_roleARNHasBeenSet; Aws::String m_domainARN; bool m_domainARNHasBeenSet; Aws::String m_clusterEndpoint; bool m_clusterEndpointHasBeenSet; Aws::String m_indexName; bool m_indexNameHasBeenSet; Aws::String m_typeName; bool m_typeNameHasBeenSet; ElasticsearchIndexRotationPeriod m_indexRotationPeriod; bool m_indexRotationPeriodHasBeenSet; ElasticsearchBufferingHints m_bufferingHints; bool m_bufferingHintsHasBeenSet; ElasticsearchRetryOptions m_retryOptions; bool m_retryOptionsHasBeenSet; ElasticsearchS3BackupMode m_s3BackupMode; bool m_s3BackupModeHasBeenSet; S3DestinationConfiguration m_s3Configuration; bool m_s3ConfigurationHasBeenSet; ProcessingConfiguration m_processingConfiguration; bool m_processingConfigurationHasBeenSet; CloudWatchLoggingOptions m_cloudWatchLoggingOptions; bool m_cloudWatchLoggingOptionsHasBeenSet; VpcConfiguration m_vpcConfiguration; bool m_vpcConfigurationHasBeenSet; }; } // namespace Model } // namespace Firehose } // namespace Aws