/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the firehose-2015-08-04.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.KinesisFirehose.Model
{
///
/// The destination description in Amazon ES.
///
public partial class ElasticsearchDestinationDescription
{
private ElasticsearchBufferingHints _bufferingHints;
private CloudWatchLoggingOptions _cloudWatchLoggingOptions;
private string _clusterEndpoint;
private string _domainARN;
private string _indexName;
private ElasticsearchIndexRotationPeriod _indexRotationPeriod;
private ProcessingConfiguration _processingConfiguration;
private ElasticsearchRetryOptions _retryOptions;
private string _roleARN;
private ElasticsearchS3BackupMode _s3BackupMode;
private S3DestinationDescription _s3DestinationDescription;
private string _typeName;
private VpcConfigurationDescription _vpcConfigurationDescription;
///
/// Gets and sets the property BufferingHints.
///
/// The buffering options.
///
///
public ElasticsearchBufferingHints BufferingHints
{
get { return this._bufferingHints; }
set { this._bufferingHints = value; }
}
// Check to see if BufferingHints property is set
internal bool IsSetBufferingHints()
{
return this._bufferingHints != null;
}
///
/// Gets and sets the property CloudWatchLoggingOptions.
///
/// The Amazon CloudWatch logging options.
///
///
public CloudWatchLoggingOptions CloudWatchLoggingOptions
{
get { return this._cloudWatchLoggingOptions; }
set { this._cloudWatchLoggingOptions = value; }
}
// Check to see if CloudWatchLoggingOptions property is set
internal bool IsSetCloudWatchLoggingOptions()
{
return this._cloudWatchLoggingOptions != null;
}
///
/// Gets and sets the property ClusterEndpoint.
///
/// The endpoint to use when communicating with the cluster. Kinesis Data Firehose uses
/// either this ClusterEndpoint
or the DomainARN
field to send
/// data to Amazon ES.
///
///
[AWSProperty(Min=1, Max=512)]
public string ClusterEndpoint
{
get { return this._clusterEndpoint; }
set { this._clusterEndpoint = value; }
}
// Check to see if ClusterEndpoint property is set
internal bool IsSetClusterEndpoint()
{
return this._clusterEndpoint != null;
}
///
/// Gets and sets the property DomainARN.
///
/// The ARN of the Amazon ES domain. For more information, see Amazon
/// Resource Names (ARNs) and Amazon Web Services Service Namespaces.
///
///
///
/// Kinesis Data Firehose uses either ClusterEndpoint
or DomainARN
/// to send data to Amazon ES.
///
///
[AWSProperty(Min=1, Max=512)]
public string DomainARN
{
get { return this._domainARN; }
set { this._domainARN = value; }
}
// Check to see if DomainARN property is set
internal bool IsSetDomainARN()
{
return this._domainARN != null;
}
///
/// Gets and sets the property IndexName.
///
/// The Elasticsearch index name.
///
///
[AWSProperty(Min=1, Max=80)]
public string IndexName
{
get { return this._indexName; }
set { this._indexName = value; }
}
// Check to see if IndexName property is set
internal bool IsSetIndexName()
{
return this._indexName != null;
}
///
/// Gets and sets the property IndexRotationPeriod.
///
/// The Elasticsearch index rotation period
///
///
public ElasticsearchIndexRotationPeriod IndexRotationPeriod
{
get { return this._indexRotationPeriod; }
set { this._indexRotationPeriod = value; }
}
// Check to see if IndexRotationPeriod property is set
internal bool IsSetIndexRotationPeriod()
{
return this._indexRotationPeriod != null;
}
///
/// Gets and sets the property ProcessingConfiguration.
///
/// The data processing configuration.
///
///
public ProcessingConfiguration ProcessingConfiguration
{
get { return this._processingConfiguration; }
set { this._processingConfiguration = value; }
}
// Check to see if ProcessingConfiguration property is set
internal bool IsSetProcessingConfiguration()
{
return this._processingConfiguration != null;
}
///
/// Gets and sets the property RetryOptions.
///
/// The Amazon ES retry options.
///
///
public ElasticsearchRetryOptions RetryOptions
{
get { return this._retryOptions; }
set { this._retryOptions = value; }
}
// Check to see if RetryOptions property is set
internal bool IsSetRetryOptions()
{
return this._retryOptions != null;
}
///
/// Gets and sets the property RoleARN.
///
/// The Amazon Resource Name (ARN) of the Amazon Web Services credentials. For more information,
/// see Amazon
/// Resource Names (ARNs) and Amazon Web Services Service Namespaces.
///
///
[AWSProperty(Min=1, Max=512)]
public string RoleARN
{
get { return this._roleARN; }
set { this._roleARN = value; }
}
// Check to see if RoleARN property is set
internal bool IsSetRoleARN()
{
return this._roleARN != null;
}
///
/// Gets and sets the property S3BackupMode.
///
/// The Amazon S3 backup mode.
///
///
public ElasticsearchS3BackupMode S3BackupMode
{
get { return this._s3BackupMode; }
set { this._s3BackupMode = value; }
}
// Check to see if S3BackupMode property is set
internal bool IsSetS3BackupMode()
{
return this._s3BackupMode != null;
}
///
/// Gets and sets the property S3DestinationDescription.
///
/// The Amazon S3 destination.
///
///
public S3DestinationDescription S3DestinationDescription
{
get { return this._s3DestinationDescription; }
set { this._s3DestinationDescription = value; }
}
// Check to see if S3DestinationDescription property is set
internal bool IsSetS3DestinationDescription()
{
return this._s3DestinationDescription != null;
}
///
/// Gets and sets the property TypeName.
///
/// The Elasticsearch type name. This applies to Elasticsearch 6.x and lower versions.
/// For Elasticsearch 7.x and OpenSearch Service 1.x, there's no value for TypeName
.
///
///
[AWSProperty(Min=0, Max=100)]
public string TypeName
{
get { return this._typeName; }
set { this._typeName = value; }
}
// Check to see if TypeName property is set
internal bool IsSetTypeName()
{
return this._typeName != null;
}
///
/// Gets and sets the property VpcConfigurationDescription.
///
/// The details of the VPC of the Amazon ES destination.
///
///
public VpcConfigurationDescription VpcConfigurationDescription
{
get { return this._vpcConfigurationDescription; }
set { this._vpcConfigurationDescription = value; }
}
// Check to see if VpcConfigurationDescription property is set
internal bool IsSetVpcConfigurationDescription()
{
return this._vpcConfigurationDescription != null;
}
}
}