/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes the destination for a delivery stream.See Also:
* AWS
* API Reference
The ID of the destination.
*/ inline const Aws::String& GetDestinationId() const{ return m_destinationId; } /** *The ID of the destination.
*/ inline bool DestinationIdHasBeenSet() const { return m_destinationIdHasBeenSet; } /** *The ID of the destination.
*/ inline void SetDestinationId(const Aws::String& value) { m_destinationIdHasBeenSet = true; m_destinationId = value; } /** *The ID of the destination.
*/ inline void SetDestinationId(Aws::String&& value) { m_destinationIdHasBeenSet = true; m_destinationId = std::move(value); } /** *The ID of the destination.
*/ inline void SetDestinationId(const char* value) { m_destinationIdHasBeenSet = true; m_destinationId.assign(value); } /** *The ID of the destination.
*/ inline DestinationDescription& WithDestinationId(const Aws::String& value) { SetDestinationId(value); return *this;} /** *The ID of the destination.
*/ inline DestinationDescription& WithDestinationId(Aws::String&& value) { SetDestinationId(std::move(value)); return *this;} /** *The ID of the destination.
*/ inline DestinationDescription& WithDestinationId(const char* value) { SetDestinationId(value); return *this;} /** *[Deprecated] The destination in Amazon S3.
*/ inline const S3DestinationDescription& GetS3DestinationDescription() const{ return m_s3DestinationDescription; } /** *[Deprecated] The destination in Amazon S3.
*/ inline bool S3DestinationDescriptionHasBeenSet() const { return m_s3DestinationDescriptionHasBeenSet; } /** *[Deprecated] The destination in Amazon S3.
*/ inline void SetS3DestinationDescription(const S3DestinationDescription& value) { m_s3DestinationDescriptionHasBeenSet = true; m_s3DestinationDescription = value; } /** *[Deprecated] The destination in Amazon S3.
*/ inline void SetS3DestinationDescription(S3DestinationDescription&& value) { m_s3DestinationDescriptionHasBeenSet = true; m_s3DestinationDescription = std::move(value); } /** *[Deprecated] The destination in Amazon S3.
*/ inline DestinationDescription& WithS3DestinationDescription(const S3DestinationDescription& value) { SetS3DestinationDescription(value); return *this;} /** *[Deprecated] The destination in Amazon S3.
*/ inline DestinationDescription& WithS3DestinationDescription(S3DestinationDescription&& value) { SetS3DestinationDescription(std::move(value)); return *this;} /** *The destination in Amazon S3.
*/ inline const ExtendedS3DestinationDescription& GetExtendedS3DestinationDescription() const{ return m_extendedS3DestinationDescription; } /** *The destination in Amazon S3.
*/ inline bool ExtendedS3DestinationDescriptionHasBeenSet() const { return m_extendedS3DestinationDescriptionHasBeenSet; } /** *The destination in Amazon S3.
*/ inline void SetExtendedS3DestinationDescription(const ExtendedS3DestinationDescription& value) { m_extendedS3DestinationDescriptionHasBeenSet = true; m_extendedS3DestinationDescription = value; } /** *The destination in Amazon S3.
*/ inline void SetExtendedS3DestinationDescription(ExtendedS3DestinationDescription&& value) { m_extendedS3DestinationDescriptionHasBeenSet = true; m_extendedS3DestinationDescription = std::move(value); } /** *The destination in Amazon S3.
*/ inline DestinationDescription& WithExtendedS3DestinationDescription(const ExtendedS3DestinationDescription& value) { SetExtendedS3DestinationDescription(value); return *this;} /** *The destination in Amazon S3.
*/ inline DestinationDescription& WithExtendedS3DestinationDescription(ExtendedS3DestinationDescription&& value) { SetExtendedS3DestinationDescription(std::move(value)); return *this;} /** *The destination in Amazon Redshift.
*/ inline const RedshiftDestinationDescription& GetRedshiftDestinationDescription() const{ return m_redshiftDestinationDescription; } /** *The destination in Amazon Redshift.
*/ inline bool RedshiftDestinationDescriptionHasBeenSet() const { return m_redshiftDestinationDescriptionHasBeenSet; } /** *The destination in Amazon Redshift.
*/ inline void SetRedshiftDestinationDescription(const RedshiftDestinationDescription& value) { m_redshiftDestinationDescriptionHasBeenSet = true; m_redshiftDestinationDescription = value; } /** *The destination in Amazon Redshift.
*/ inline void SetRedshiftDestinationDescription(RedshiftDestinationDescription&& value) { m_redshiftDestinationDescriptionHasBeenSet = true; m_redshiftDestinationDescription = std::move(value); } /** *The destination in Amazon Redshift.
*/ inline DestinationDescription& WithRedshiftDestinationDescription(const RedshiftDestinationDescription& value) { SetRedshiftDestinationDescription(value); return *this;} /** *The destination in Amazon Redshift.
*/ inline DestinationDescription& WithRedshiftDestinationDescription(RedshiftDestinationDescription&& value) { SetRedshiftDestinationDescription(std::move(value)); return *this;} /** *The destination in Amazon ES.
*/ inline const ElasticsearchDestinationDescription& GetElasticsearchDestinationDescription() const{ return m_elasticsearchDestinationDescription; } /** *The destination in Amazon ES.
*/ inline bool ElasticsearchDestinationDescriptionHasBeenSet() const { return m_elasticsearchDestinationDescriptionHasBeenSet; } /** *The destination in Amazon ES.
*/ inline void SetElasticsearchDestinationDescription(const ElasticsearchDestinationDescription& value) { m_elasticsearchDestinationDescriptionHasBeenSet = true; m_elasticsearchDestinationDescription = value; } /** *The destination in Amazon ES.
*/ inline void SetElasticsearchDestinationDescription(ElasticsearchDestinationDescription&& value) { m_elasticsearchDestinationDescriptionHasBeenSet = true; m_elasticsearchDestinationDescription = std::move(value); } /** *The destination in Amazon ES.
*/ inline DestinationDescription& WithElasticsearchDestinationDescription(const ElasticsearchDestinationDescription& value) { SetElasticsearchDestinationDescription(value); return *this;} /** *The destination in Amazon ES.
*/ inline DestinationDescription& WithElasticsearchDestinationDescription(ElasticsearchDestinationDescription&& value) { SetElasticsearchDestinationDescription(std::move(value)); return *this;} /** *The destination in Splunk.
*/ inline const SplunkDestinationDescription& GetSplunkDestinationDescription() const{ return m_splunkDestinationDescription; } /** *The destination in Splunk.
*/ inline bool SplunkDestinationDescriptionHasBeenSet() const { return m_splunkDestinationDescriptionHasBeenSet; } /** *The destination in Splunk.
*/ inline void SetSplunkDestinationDescription(const SplunkDestinationDescription& value) { m_splunkDestinationDescriptionHasBeenSet = true; m_splunkDestinationDescription = value; } /** *The destination in Splunk.
*/ inline void SetSplunkDestinationDescription(SplunkDestinationDescription&& value) { m_splunkDestinationDescriptionHasBeenSet = true; m_splunkDestinationDescription = std::move(value); } /** *The destination in Splunk.
*/ inline DestinationDescription& WithSplunkDestinationDescription(const SplunkDestinationDescription& value) { SetSplunkDestinationDescription(value); return *this;} /** *The destination in Splunk.
*/ inline DestinationDescription& WithSplunkDestinationDescription(SplunkDestinationDescription&& value) { SetSplunkDestinationDescription(std::move(value)); return *this;} /** *Describes the specified HTTP endpoint destination.
*/ inline const HttpEndpointDestinationDescription& GetHttpEndpointDestinationDescription() const{ return m_httpEndpointDestinationDescription; } /** *Describes the specified HTTP endpoint destination.
*/ inline bool HttpEndpointDestinationDescriptionHasBeenSet() const { return m_httpEndpointDestinationDescriptionHasBeenSet; } /** *Describes the specified HTTP endpoint destination.
*/ inline void SetHttpEndpointDestinationDescription(const HttpEndpointDestinationDescription& value) { m_httpEndpointDestinationDescriptionHasBeenSet = true; m_httpEndpointDestinationDescription = value; } /** *Describes the specified HTTP endpoint destination.
*/ inline void SetHttpEndpointDestinationDescription(HttpEndpointDestinationDescription&& value) { m_httpEndpointDestinationDescriptionHasBeenSet = true; m_httpEndpointDestinationDescription = std::move(value); } /** *Describes the specified HTTP endpoint destination.
*/ inline DestinationDescription& WithHttpEndpointDestinationDescription(const HttpEndpointDestinationDescription& value) { SetHttpEndpointDestinationDescription(value); return *this;} /** *Describes the specified HTTP endpoint destination.
*/ inline DestinationDescription& WithHttpEndpointDestinationDescription(HttpEndpointDestinationDescription&& value) { SetHttpEndpointDestinationDescription(std::move(value)); return *this;} private: Aws::String m_destinationId; bool m_destinationIdHasBeenSet; S3DestinationDescription m_s3DestinationDescription; bool m_s3DestinationDescriptionHasBeenSet; ExtendedS3DestinationDescription m_extendedS3DestinationDescription; bool m_extendedS3DestinationDescriptionHasBeenSet; RedshiftDestinationDescription m_redshiftDestinationDescription; bool m_redshiftDestinationDescriptionHasBeenSet; ElasticsearchDestinationDescription m_elasticsearchDestinationDescription; bool m_elasticsearchDestinationDescriptionHasBeenSet; SplunkDestinationDescription m_splunkDestinationDescription; bool m_splunkDestinationDescriptionHasBeenSet; HttpEndpointDestinationDescription m_httpEndpointDestinationDescription; bool m_httpEndpointDestinationDescriptionHasBeenSet; }; } // namespace Model } // namespace Firehose } // namespace Aws