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

The content of the email, composed of a subject line, an HTML part, and a * text-only part.

See Also:

AWS API * Reference

*/ class Template { public: AWS_SES_API Template(); AWS_SES_API Template(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_SES_API Template& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_SES_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_SES_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The name of the template. You will refer to this name when you send email * using the SendTemplatedEmail or SendBulkTemplatedEmail * operations.

*/ inline const Aws::String& GetTemplateName() const{ return m_templateName; } /** *

The name of the template. You will refer to this name when you send email * using the SendTemplatedEmail or SendBulkTemplatedEmail * operations.

*/ inline bool TemplateNameHasBeenSet() const { return m_templateNameHasBeenSet; } /** *

The name of the template. You will refer to this name when you send email * using the SendTemplatedEmail or SendBulkTemplatedEmail * operations.

*/ inline void SetTemplateName(const Aws::String& value) { m_templateNameHasBeenSet = true; m_templateName = value; } /** *

The name of the template. You will refer to this name when you send email * using the SendTemplatedEmail or SendBulkTemplatedEmail * operations.

*/ inline void SetTemplateName(Aws::String&& value) { m_templateNameHasBeenSet = true; m_templateName = std::move(value); } /** *

The name of the template. You will refer to this name when you send email * using the SendTemplatedEmail or SendBulkTemplatedEmail * operations.

*/ inline void SetTemplateName(const char* value) { m_templateNameHasBeenSet = true; m_templateName.assign(value); } /** *

The name of the template. You will refer to this name when you send email * using the SendTemplatedEmail or SendBulkTemplatedEmail * operations.

*/ inline Template& WithTemplateName(const Aws::String& value) { SetTemplateName(value); return *this;} /** *

The name of the template. You will refer to this name when you send email * using the SendTemplatedEmail or SendBulkTemplatedEmail * operations.

*/ inline Template& WithTemplateName(Aws::String&& value) { SetTemplateName(std::move(value)); return *this;} /** *

The name of the template. You will refer to this name when you send email * using the SendTemplatedEmail or SendBulkTemplatedEmail * operations.

*/ inline Template& WithTemplateName(const char* value) { SetTemplateName(value); return *this;} /** *

The subject line of the email.

*/ inline const Aws::String& GetSubjectPart() const{ return m_subjectPart; } /** *

The subject line of the email.

*/ inline bool SubjectPartHasBeenSet() const { return m_subjectPartHasBeenSet; } /** *

The subject line of the email.

*/ inline void SetSubjectPart(const Aws::String& value) { m_subjectPartHasBeenSet = true; m_subjectPart = value; } /** *

The subject line of the email.

*/ inline void SetSubjectPart(Aws::String&& value) { m_subjectPartHasBeenSet = true; m_subjectPart = std::move(value); } /** *

The subject line of the email.

*/ inline void SetSubjectPart(const char* value) { m_subjectPartHasBeenSet = true; m_subjectPart.assign(value); } /** *

The subject line of the email.

*/ inline Template& WithSubjectPart(const Aws::String& value) { SetSubjectPart(value); return *this;} /** *

The subject line of the email.

*/ inline Template& WithSubjectPart(Aws::String&& value) { SetSubjectPart(std::move(value)); return *this;} /** *

The subject line of the email.

*/ inline Template& WithSubjectPart(const char* value) { SetSubjectPart(value); return *this;} /** *

The email body that will be visible to recipients whose email clients do not * display HTML.

*/ inline const Aws::String& GetTextPart() const{ return m_textPart; } /** *

The email body that will be visible to recipients whose email clients do not * display HTML.

*/ inline bool TextPartHasBeenSet() const { return m_textPartHasBeenSet; } /** *

The email body that will be visible to recipients whose email clients do not * display HTML.

*/ inline void SetTextPart(const Aws::String& value) { m_textPartHasBeenSet = true; m_textPart = value; } /** *

The email body that will be visible to recipients whose email clients do not * display HTML.

*/ inline void SetTextPart(Aws::String&& value) { m_textPartHasBeenSet = true; m_textPart = std::move(value); } /** *

The email body that will be visible to recipients whose email clients do not * display HTML.

*/ inline void SetTextPart(const char* value) { m_textPartHasBeenSet = true; m_textPart.assign(value); } /** *

The email body that will be visible to recipients whose email clients do not * display HTML.

*/ inline Template& WithTextPart(const Aws::String& value) { SetTextPart(value); return *this;} /** *

The email body that will be visible to recipients whose email clients do not * display HTML.

*/ inline Template& WithTextPart(Aws::String&& value) { SetTextPart(std::move(value)); return *this;} /** *

The email body that will be visible to recipients whose email clients do not * display HTML.

*/ inline Template& WithTextPart(const char* value) { SetTextPart(value); return *this;} /** *

The HTML body of the email.

*/ inline const Aws::String& GetHtmlPart() const{ return m_htmlPart; } /** *

The HTML body of the email.

*/ inline bool HtmlPartHasBeenSet() const { return m_htmlPartHasBeenSet; } /** *

The HTML body of the email.

*/ inline void SetHtmlPart(const Aws::String& value) { m_htmlPartHasBeenSet = true; m_htmlPart = value; } /** *

The HTML body of the email.

*/ inline void SetHtmlPart(Aws::String&& value) { m_htmlPartHasBeenSet = true; m_htmlPart = std::move(value); } /** *

The HTML body of the email.

*/ inline void SetHtmlPart(const char* value) { m_htmlPartHasBeenSet = true; m_htmlPart.assign(value); } /** *

The HTML body of the email.

*/ inline Template& WithHtmlPart(const Aws::String& value) { SetHtmlPart(value); return *this;} /** *

The HTML body of the email.

*/ inline Template& WithHtmlPart(Aws::String&& value) { SetHtmlPart(std::move(value)); return *this;} /** *

The HTML body of the email.

*/ inline Template& WithHtmlPart(const char* value) { SetHtmlPart(value); return *this;} private: Aws::String m_templateName; bool m_templateNameHasBeenSet = false; Aws::String m_subjectPart; bool m_subjectPartHasBeenSet = false; Aws::String m_textPart; bool m_textPartHasBeenSet = false; Aws::String m_htmlPart; bool m_htmlPartHasBeenSet = false; }; } // namespace Model } // namespace SES } // namespace Aws