/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SESV2 { namespace Model { /** *

An object that defines an Amazon Kinesis Data Firehose destination for email * events. You can use Amazon Kinesis Data Firehose to stream data to other * services, such as Amazon S3 and Amazon Redshift.

See Also:

AWS * API Reference

*/ class KinesisFirehoseDestination { public: AWS_SESV2_API KinesisFirehoseDestination(); AWS_SESV2_API KinesisFirehoseDestination(Aws::Utils::Json::JsonView jsonValue); AWS_SESV2_API KinesisFirehoseDestination& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SESV2_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The Amazon Resource Name (ARN) of the IAM role that the Amazon SES API v2 * uses to send email events to the Amazon Kinesis Data Firehose stream.

*/ inline const Aws::String& GetIamRoleArn() const{ return m_iamRoleArn; } /** *

The Amazon Resource Name (ARN) of the IAM role that the Amazon SES API v2 * uses to send email events to the Amazon Kinesis Data Firehose stream.

*/ inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the IAM role that the Amazon SES API v2 * uses to send email events to the Amazon Kinesis Data Firehose stream.

*/ inline void SetIamRoleArn(const Aws::String& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = value; } /** *

The Amazon Resource Name (ARN) of the IAM role that the Amazon SES API v2 * uses to send email events to the Amazon Kinesis Data Firehose stream.

*/ inline void SetIamRoleArn(Aws::String&& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the IAM role that the Amazon SES API v2 * uses to send email events to the Amazon Kinesis Data Firehose stream.

*/ inline void SetIamRoleArn(const char* value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the IAM role that the Amazon SES API v2 * uses to send email events to the Amazon Kinesis Data Firehose stream.

*/ inline KinesisFirehoseDestination& WithIamRoleArn(const Aws::String& value) { SetIamRoleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role that the Amazon SES API v2 * uses to send email events to the Amazon Kinesis Data Firehose stream.

*/ inline KinesisFirehoseDestination& WithIamRoleArn(Aws::String&& value) { SetIamRoleArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM role that the Amazon SES API v2 * uses to send email events to the Amazon Kinesis Data Firehose stream.

*/ inline KinesisFirehoseDestination& WithIamRoleArn(const char* value) { SetIamRoleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose stream * that the Amazon SES API v2 sends email events to.

*/ inline const Aws::String& GetDeliveryStreamArn() const{ return m_deliveryStreamArn; } /** *

The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose stream * that the Amazon SES API v2 sends email events to.

*/ inline bool DeliveryStreamArnHasBeenSet() const { return m_deliveryStreamArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose stream * that the Amazon SES API v2 sends email events to.

*/ inline void SetDeliveryStreamArn(const Aws::String& value) { m_deliveryStreamArnHasBeenSet = true; m_deliveryStreamArn = value; } /** *

The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose stream * that the Amazon SES API v2 sends email events to.

*/ inline void SetDeliveryStreamArn(Aws::String&& value) { m_deliveryStreamArnHasBeenSet = true; m_deliveryStreamArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose stream * that the Amazon SES API v2 sends email events to.

*/ inline void SetDeliveryStreamArn(const char* value) { m_deliveryStreamArnHasBeenSet = true; m_deliveryStreamArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose stream * that the Amazon SES API v2 sends email events to.

*/ inline KinesisFirehoseDestination& WithDeliveryStreamArn(const Aws::String& value) { SetDeliveryStreamArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose stream * that the Amazon SES API v2 sends email events to.

*/ inline KinesisFirehoseDestination& WithDeliveryStreamArn(Aws::String&& value) { SetDeliveryStreamArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose stream * that the Amazon SES API v2 sends email events to.

*/ inline KinesisFirehoseDestination& WithDeliveryStreamArn(const char* value) { SetDeliveryStreamArn(value); return *this;} private: Aws::String m_iamRoleArn; bool m_iamRoleArnHasBeenSet = false; Aws::String m_deliveryStreamArn; bool m_deliveryStreamArnHasBeenSet = false; }; } // namespace Model } // namespace SESV2 } // namespace Aws