/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SESV2 { namespace Model { class BulkEmailEntry { public: AWS_SESV2_API BulkEmailEntry(); AWS_SESV2_API BulkEmailEntry(Aws::Utils::Json::JsonView jsonValue); AWS_SESV2_API BulkEmailEntry& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SESV2_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Represents the destination of the message, consisting of To:, CC:, and BCC: * fields.

Amazon SES does not support the SMTPUTF8 extension, as * described in RFC6531. For this * reason, the local part of a destination email address (the part of the email * address that precedes the @ sign) may only contain 7-bit ASCII * characters. If the domain part of an address (the part after the @ sign) * contains non-ASCII characters, they must be encoded using Punycode, as described * in RFC3492.

*/ inline const Destination& GetDestination() const{ return m_destination; } /** *

Represents the destination of the message, consisting of To:, CC:, and BCC: * fields.

Amazon SES does not support the SMTPUTF8 extension, as * described in RFC6531. For this * reason, the local part of a destination email address (the part of the email * address that precedes the @ sign) may only contain 7-bit ASCII * characters. If the domain part of an address (the part after the @ sign) * contains non-ASCII characters, they must be encoded using Punycode, as described * in RFC3492.

*/ inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; } /** *

Represents the destination of the message, consisting of To:, CC:, and BCC: * fields.

Amazon SES does not support the SMTPUTF8 extension, as * described in RFC6531. For this * reason, the local part of a destination email address (the part of the email * address that precedes the @ sign) may only contain 7-bit ASCII * characters. If the domain part of an address (the part after the @ sign) * contains non-ASCII characters, they must be encoded using Punycode, as described * in RFC3492.

*/ inline void SetDestination(const Destination& value) { m_destinationHasBeenSet = true; m_destination = value; } /** *

Represents the destination of the message, consisting of To:, CC:, and BCC: * fields.

Amazon SES does not support the SMTPUTF8 extension, as * described in RFC6531. For this * reason, the local part of a destination email address (the part of the email * address that precedes the @ sign) may only contain 7-bit ASCII * characters. If the domain part of an address (the part after the @ sign) * contains non-ASCII characters, they must be encoded using Punycode, as described * in RFC3492.

*/ inline void SetDestination(Destination&& value) { m_destinationHasBeenSet = true; m_destination = std::move(value); } /** *

Represents the destination of the message, consisting of To:, CC:, and BCC: * fields.

Amazon SES does not support the SMTPUTF8 extension, as * described in RFC6531. For this * reason, the local part of a destination email address (the part of the email * address that precedes the @ sign) may only contain 7-bit ASCII * characters. If the domain part of an address (the part after the @ sign) * contains non-ASCII characters, they must be encoded using Punycode, as described * in RFC3492.

*/ inline BulkEmailEntry& WithDestination(const Destination& value) { SetDestination(value); return *this;} /** *

Represents the destination of the message, consisting of To:, CC:, and BCC: * fields.

Amazon SES does not support the SMTPUTF8 extension, as * described in RFC6531. For this * reason, the local part of a destination email address (the part of the email * address that precedes the @ sign) may only contain 7-bit ASCII * characters. If the domain part of an address (the part after the @ sign) * contains non-ASCII characters, they must be encoded using Punycode, as described * in RFC3492.

*/ inline BulkEmailEntry& WithDestination(Destination&& value) { SetDestination(std::move(value)); return *this;} /** *

A list of tags, in the form of name/value pairs, to apply to an email that * you send using the SendBulkTemplatedEmail operation. Tags * correspond to characteristics of the email that you define, so that you can * publish email sending events.

*/ inline const Aws::Vector& GetReplacementTags() const{ return m_replacementTags; } /** *

A list of tags, in the form of name/value pairs, to apply to an email that * you send using the SendBulkTemplatedEmail operation. Tags * correspond to characteristics of the email that you define, so that you can * publish email sending events.

*/ inline bool ReplacementTagsHasBeenSet() const { return m_replacementTagsHasBeenSet; } /** *

A list of tags, in the form of name/value pairs, to apply to an email that * you send using the SendBulkTemplatedEmail operation. Tags * correspond to characteristics of the email that you define, so that you can * publish email sending events.

*/ inline void SetReplacementTags(const Aws::Vector& value) { m_replacementTagsHasBeenSet = true; m_replacementTags = value; } /** *

A list of tags, in the form of name/value pairs, to apply to an email that * you send using the SendBulkTemplatedEmail operation. Tags * correspond to characteristics of the email that you define, so that you can * publish email sending events.

*/ inline void SetReplacementTags(Aws::Vector&& value) { m_replacementTagsHasBeenSet = true; m_replacementTags = std::move(value); } /** *

A list of tags, in the form of name/value pairs, to apply to an email that * you send using the SendBulkTemplatedEmail operation. Tags * correspond to characteristics of the email that you define, so that you can * publish email sending events.

*/ inline BulkEmailEntry& WithReplacementTags(const Aws::Vector& value) { SetReplacementTags(value); return *this;} /** *

A list of tags, in the form of name/value pairs, to apply to an email that * you send using the SendBulkTemplatedEmail operation. Tags * correspond to characteristics of the email that you define, so that you can * publish email sending events.

*/ inline BulkEmailEntry& WithReplacementTags(Aws::Vector&& value) { SetReplacementTags(std::move(value)); return *this;} /** *

A list of tags, in the form of name/value pairs, to apply to an email that * you send using the SendBulkTemplatedEmail operation. Tags * correspond to characteristics of the email that you define, so that you can * publish email sending events.

*/ inline BulkEmailEntry& AddReplacementTags(const MessageTag& value) { m_replacementTagsHasBeenSet = true; m_replacementTags.push_back(value); return *this; } /** *

A list of tags, in the form of name/value pairs, to apply to an email that * you send using the SendBulkTemplatedEmail operation. Tags * correspond to characteristics of the email that you define, so that you can * publish email sending events.

*/ inline BulkEmailEntry& AddReplacementTags(MessageTag&& value) { m_replacementTagsHasBeenSet = true; m_replacementTags.push_back(std::move(value)); return *this; } /** *

The ReplacementEmailContent associated with a * BulkEmailEntry.

*/ inline const ReplacementEmailContent& GetReplacementEmailContent() const{ return m_replacementEmailContent; } /** *

The ReplacementEmailContent associated with a * BulkEmailEntry.

*/ inline bool ReplacementEmailContentHasBeenSet() const { return m_replacementEmailContentHasBeenSet; } /** *

The ReplacementEmailContent associated with a * BulkEmailEntry.

*/ inline void SetReplacementEmailContent(const ReplacementEmailContent& value) { m_replacementEmailContentHasBeenSet = true; m_replacementEmailContent = value; } /** *

The ReplacementEmailContent associated with a * BulkEmailEntry.

*/ inline void SetReplacementEmailContent(ReplacementEmailContent&& value) { m_replacementEmailContentHasBeenSet = true; m_replacementEmailContent = std::move(value); } /** *

The ReplacementEmailContent associated with a * BulkEmailEntry.

*/ inline BulkEmailEntry& WithReplacementEmailContent(const ReplacementEmailContent& value) { SetReplacementEmailContent(value); return *this;} /** *

The ReplacementEmailContent associated with a * BulkEmailEntry.

*/ inline BulkEmailEntry& WithReplacementEmailContent(ReplacementEmailContent&& value) { SetReplacementEmailContent(std::move(value)); return *this;} private: Destination m_destination; bool m_destinationHasBeenSet = false; Aws::Vector m_replacementTags; bool m_replacementTagsHasBeenSet = false; ReplacementEmailContent m_replacementEmailContent; bool m_replacementEmailContentHasBeenSet = false; }; } // namespace Model } // namespace SESV2 } // namespace Aws