7#include <aws/qconnect/QConnect_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/qconnect/model/ChannelSubtype.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/qconnect/model/MessageTemplateContentProvider.h>
12#include <aws/qconnect/model/GroupingConfiguration.h>
13#include <aws/qconnect/model/MessageTemplateAttributes.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15#include <aws/core/utils/memory/stl/AWSMap.h>
16#include <aws/qconnect/model/MessageTemplateAttributeType.h>
17#include <aws/qconnect/model/MessageTemplateAttachment.h>
55 template<
typename MessageTemplateArnT = Aws::String>
57 template<
typename MessageTemplateArnT = Aws::String>
67 template<
typename MessageTemplateIdT = Aws::String>
69 template<
typename MessageTemplateIdT = Aws::String>
79 template<
typename KnowledgeBaseArnT = Aws::String>
81 template<
typename KnowledgeBaseArnT = Aws::String>
91 template<
typename KnowledgeBaseIdT = Aws::String>
93 template<
typename KnowledgeBaseIdT = Aws::String>
103 template<
typename NameT = Aws::String>
104 void SetName(
NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
105 template<
typename NameT = Aws::String>
125 template<
typename CreatedTimeT = Aws::Utils::DateTime>
127 template<
typename CreatedTimeT = Aws::Utils::DateTime>
137 template<
typename LastModifiedTimeT = Aws::Utils::DateTime>
139 template<
typename LastModifiedTimeT = Aws::Utils::DateTime>
150 template<
typename LastModifiedByT = Aws::String>
152 template<
typename LastModifiedByT = Aws::String>
162 template<
typename ContentT = MessageTemplateContentProv
ider>
163 void SetContent(
ContentT&& value) { m_contentHasBeenSet =
true; m_content = std::forward<ContentT>(value); }
164 template<
typename ContentT = MessageTemplateContentProv
ider>
174 template<
typename DescriptionT = Aws::String>
176 template<
typename DescriptionT = Aws::String>
190 template<
typename LanguageT = Aws::String>
191 void SetLanguage(
LanguageT&& value) { m_languageHasBeenSet =
true; m_language = std::forward<LanguageT>(value); }
192 template<
typename LanguageT = Aws::String>
200 template<
typename GroupingConfigurationT = GroupingConfiguration>
202 template<
typename GroupingConfigurationT = GroupingConfiguration>
215 template<
typename DefaultAttributesT = MessageTemplateAttributes>
217 template<
typename DefaultAttributesT = MessageTemplateAttributes>
227 template<
typename AttributeTypesT = Aws::Vector<MessageTemplateAttributeType>>
229 template<
typename AttributeTypesT = Aws::Vector<MessageTemplateAttributeType>>
240 template<
typename AttachmentsT = Aws::Vector<MessageTemplateAttachment>>
242 template<
typename AttachmentsT = Aws::Vector<MessageTemplateAttachment>>
244 template<
typename AttachmentsT = MessageTemplateAttachment>
254 inline void SetIsActive(
bool value) { m_isActiveHasBeenSet =
true; m_isActive = value; }
264 inline void SetVersionNumber(
long long value) { m_versionNumberHasBeenSet =
true; m_versionNumber = value; }
278 template<
typename MessageTemplateContentSha256T = Aws::String>
280 template<
typename MessageTemplateContentSha256T = Aws::String>
290 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
291 void SetTags(
TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
292 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
294 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
296 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(
key), std::forward<TagsValueT>(value));
return *
this;
302 bool m_messageTemplateArnHasBeenSet =
false;
305 bool m_messageTemplateIdHasBeenSet =
false;
308 bool m_knowledgeBaseArnHasBeenSet =
false;
311 bool m_knowledgeBaseIdHasBeenSet =
false;
314 bool m_nameHasBeenSet =
false;
317 bool m_channelSubtypeHasBeenSet =
false;
320 bool m_createdTimeHasBeenSet =
false;
323 bool m_lastModifiedTimeHasBeenSet =
false;
326 bool m_lastModifiedByHasBeenSet =
false;
328 MessageTemplateContentProvider m_content;
329 bool m_contentHasBeenSet =
false;
332 bool m_descriptionHasBeenSet =
false;
335 bool m_languageHasBeenSet =
false;
337 GroupingConfiguration m_groupingConfiguration;
338 bool m_groupingConfigurationHasBeenSet =
false;
340 MessageTemplateAttributes m_defaultAttributes;
341 bool m_defaultAttributesHasBeenSet =
false;
344 bool m_attributeTypesHasBeenSet =
false;
347 bool m_attachmentsHasBeenSet =
false;
349 bool m_isActive{
false};
350 bool m_isActiveHasBeenSet =
false;
352 long long m_versionNumber{0};
353 bool m_versionNumberHasBeenSet =
false;
356 bool m_messageTemplateContentSha256HasBeenSet =
false;
359 bool m_tagsHasBeenSet =
false;
ExtendedMessageTemplateData & WithLanguage(LanguageT &&value)
bool VersionNumberHasBeenSet() const
const Aws::String & GetMessageTemplateArn() const
ExtendedMessageTemplateData & WithGroupingConfiguration(GroupingConfigurationT &&value)
ExtendedMessageTemplateData & AddAttachments(AttachmentsT &&value)
ExtendedMessageTemplateData & WithLastModifiedBy(LastModifiedByT &&value)
ExtendedMessageTemplateData & WithDefaultAttributes(DefaultAttributesT &&value)
bool ContentHasBeenSet() const
ExtendedMessageTemplateData & WithMessageTemplateArn(MessageTemplateArnT &&value)
ExtendedMessageTemplateData & WithAttachments(AttachmentsT &&value)
ExtendedMessageTemplateData & WithDescription(DescriptionT &&value)
bool LastModifiedByHasBeenSet() const
void SetContent(ContentT &&value)
long long GetVersionNumber() const
ExtendedMessageTemplateData & WithMessageTemplateContentSha256(MessageTemplateContentSha256T &&value)
bool GroupingConfigurationHasBeenSet() const
ExtendedMessageTemplateData & WithTags(TagsT &&value)
ChannelSubtype GetChannelSubtype() const
const Aws::String & GetMessageTemplateContentSha256() const
AWS_QCONNECT_API ExtendedMessageTemplateData & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_QCONNECT_API ExtendedMessageTemplateData()=default
ExtendedMessageTemplateData & WithIsActive(bool value)
void SetCreatedTime(CreatedTimeT &&value)
const Aws::Vector< MessageTemplateAttributeType > & GetAttributeTypes() const
bool DefaultAttributesHasBeenSet() const
void SetName(NameT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
bool AttributeTypesHasBeenSet() const
void SetMessageTemplateId(MessageTemplateIdT &&value)
AWS_QCONNECT_API ExtendedMessageTemplateData(Aws::Utils::Json::JsonView jsonValue)
void SetKnowledgeBaseId(KnowledgeBaseIdT &&value)
void SetGroupingConfiguration(GroupingConfigurationT &&value)
ExtendedMessageTemplateData & WithAttributeTypes(AttributeTypesT &&value)
bool MessageTemplateArnHasBeenSet() const
const Aws::Utils::DateTime & GetCreatedTime() const
bool LastModifiedTimeHasBeenSet() const
ExtendedMessageTemplateData & WithChannelSubtype(ChannelSubtype value)
ExtendedMessageTemplateData & AddAttributeTypes(MessageTemplateAttributeType value)
bool DescriptionHasBeenSet() const
void SetLastModifiedTime(LastModifiedTimeT &&value)
bool CreatedTimeHasBeenSet() const
bool MessageTemplateIdHasBeenSet() const
bool ChannelSubtypeHasBeenSet() const
const Aws::String & GetKnowledgeBaseArn() const
void SetMessageTemplateArn(MessageTemplateArnT &&value)
bool NameHasBeenSet() const
void SetIsActive(bool value)
const Aws::String & GetDescription() const
const MessageTemplateContentProvider & GetContent() const
void SetDefaultAttributes(DefaultAttributesT &&value)
void SetChannelSubtype(ChannelSubtype value)
bool AttachmentsHasBeenSet() const
ExtendedMessageTemplateData & WithLastModifiedTime(LastModifiedTimeT &&value)
ExtendedMessageTemplateData & WithContent(ContentT &&value)
void SetLanguage(LanguageT &&value)
AWS_QCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetLastModifiedBy() const
const MessageTemplateAttributes & GetDefaultAttributes() const
ExtendedMessageTemplateData & WithKnowledgeBaseId(KnowledgeBaseIdT &&value)
ExtendedMessageTemplateData & AddTags(TagsKeyT &&key, TagsValueT &&value)
bool KnowledgeBaseArnHasBeenSet() const
ExtendedMessageTemplateData & WithMessageTemplateId(MessageTemplateIdT &&value)
bool IsActiveHasBeenSet() const
void SetTags(TagsT &&value)
const Aws::Vector< MessageTemplateAttachment > & GetAttachments() const
void SetLastModifiedBy(LastModifiedByT &&value)
const Aws::String & GetMessageTemplateId() const
bool LanguageHasBeenSet() const
ExtendedMessageTemplateData & WithCreatedTime(CreatedTimeT &&value)
const Aws::Utils::DateTime & GetLastModifiedTime() const
void SetKnowledgeBaseArn(KnowledgeBaseArnT &&value)
const Aws::String & GetName() const
const GroupingConfiguration & GetGroupingConfiguration() const
void SetVersionNumber(long long value)
void SetAttachments(AttachmentsT &&value)
bool MessageTemplateContentSha256HasBeenSet() const
bool TagsHasBeenSet() const
bool KnowledgeBaseIdHasBeenSet() const
const Aws::String & GetKnowledgeBaseId() const
void SetAttributeTypes(AttributeTypesT &&value)
ExtendedMessageTemplateData & WithKnowledgeBaseArn(KnowledgeBaseArnT &&value)
void SetMessageTemplateContentSha256(MessageTemplateContentSha256T &&value)
ExtendedMessageTemplateData & WithVersionNumber(long long value)
const Aws::String & GetLanguage() const
void SetDescription(DescriptionT &&value)
ExtendedMessageTemplateData & WithName(NameT &&value)
MessageTemplateAttributeType
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue