AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
MessageTemplateContentProvider.h
1
6#pragma once
7#include <aws/qconnect/QConnect_EXPORTS.h>
8#include <aws/qconnect/model/EmailMessageTemplateContent.h>
9#include <aws/qconnect/model/PushMessageTemplateContent.h>
10#include <aws/qconnect/model/SMSMessageTemplateContent.h>
11#include <aws/qconnect/model/WhatsAppMessageTemplateContent.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace QConnect {
23namespace Model {
24
31 public:
32 AWS_QCONNECT_API MessageTemplateContentProvider() = default;
35 AWS_QCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline const EmailMessageTemplateContent& GetEmail() const { return m_email; }
43 inline bool EmailHasBeenSet() const { return m_emailHasBeenSet; }
44 template <typename EmailT = EmailMessageTemplateContent>
45 void SetEmail(EmailT&& value) {
46 m_emailHasBeenSet = true;
47 m_email = std::forward<EmailT>(value);
48 }
49 template <typename EmailT = EmailMessageTemplateContent>
51 SetEmail(std::forward<EmailT>(value));
52 return *this;
53 }
55
57
61 inline const SMSMessageTemplateContent& GetSms() const { return m_sms; }
62 inline bool SmsHasBeenSet() const { return m_smsHasBeenSet; }
63 template <typename SmsT = SMSMessageTemplateContent>
64 void SetSms(SmsT&& value) {
65 m_smsHasBeenSet = true;
66 m_sms = std::forward<SmsT>(value);
67 }
68 template <typename SmsT = SMSMessageTemplateContent>
70 SetSms(std::forward<SmsT>(value));
71 return *this;
72 }
74
76
80 inline const WhatsAppMessageTemplateContent& GetWhatsApp() const { return m_whatsApp; }
81 inline bool WhatsAppHasBeenSet() const { return m_whatsAppHasBeenSet; }
82 template <typename WhatsAppT = WhatsAppMessageTemplateContent>
83 void SetWhatsApp(WhatsAppT&& value) {
84 m_whatsAppHasBeenSet = true;
85 m_whatsApp = std::forward<WhatsAppT>(value);
86 }
87 template <typename WhatsAppT = WhatsAppMessageTemplateContent>
89 SetWhatsApp(std::forward<WhatsAppT>(value));
90 return *this;
91 }
93
95
96 inline const PushMessageTemplateContent& GetPush() const { return m_push; }
97 inline bool PushHasBeenSet() const { return m_pushHasBeenSet; }
98 template <typename PushT = PushMessageTemplateContent>
99 void SetPush(PushT&& value) {
100 m_pushHasBeenSet = true;
101 m_push = std::forward<PushT>(value);
102 }
103 template <typename PushT = PushMessageTemplateContent>
105 SetPush(std::forward<PushT>(value));
106 return *this;
107 }
109 private:
111
113
115
117 bool m_emailHasBeenSet = false;
118 bool m_smsHasBeenSet = false;
119 bool m_whatsAppHasBeenSet = false;
120 bool m_pushHasBeenSet = false;
121};
122
123} // namespace Model
124} // namespace QConnect
125} // namespace Aws
MessageTemplateContentProvider & WithWhatsApp(WhatsAppT &&value)
AWS_QCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_QCONNECT_API MessageTemplateContentProvider & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_QCONNECT_API MessageTemplateContentProvider()=default
AWS_QCONNECT_API MessageTemplateContentProvider(Aws::Utils::Json::JsonView jsonValue)
MessageTemplateContentProvider & WithEmail(EmailT &&value)
MessageTemplateContentProvider & WithPush(PushT &&value)
const WhatsAppMessageTemplateContent & GetWhatsApp() const
MessageTemplateContentProvider & WithSms(SmsT &&value)
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
Aws::Utils::Json::JsonValue JsonValue