AWS SDK for C++

AWS SDK for C++ Version 1.11.906

Loading...
Searching...
No Matches
ChannelParameters.h
1
6#pragma once
7#include <aws/endusermessaging/EndUserMessaging_EXPORTS.h>
8#include <aws/endusermessaging/model/NotifyParameters.h>
9#include <aws/endusermessaging/model/TextParameters.h>
10#include <aws/endusermessaging/model/VoiceParameters.h>
11#include <aws/endusermessaging/model/WhatsAppParameters.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace EndUserMessaging {
23namespace Model {
24
36 public:
37 AWS_ENDUSERMESSAGING_API ChannelParameters() = default;
38 AWS_ENDUSERMESSAGING_API ChannelParameters(Aws::Utils::Json::JsonView jsonValue);
39 AWS_ENDUSERMESSAGING_API ChannelParameters& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_ENDUSERMESSAGING_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
46 inline const TextParameters& GetText() const { return m_text; }
47 inline bool TextHasBeenSet() const { return m_textHasBeenSet; }
48 template <typename TextT = TextParameters>
49 void SetText(TextT&& value) {
50 m_textHasBeenSet = true;
51 m_text = std::forward<TextT>(value);
52 }
53 template <typename TextT = TextParameters>
54 ChannelParameters& WithText(TextT&& value) {
55 SetText(std::forward<TextT>(value));
56 return *this;
57 }
59
61
64 inline const VoiceParameters& GetVoice() const { return m_voice; }
65 inline bool VoiceHasBeenSet() const { return m_voiceHasBeenSet; }
66 template <typename VoiceT = VoiceParameters>
67 void SetVoice(VoiceT&& value) {
68 m_voiceHasBeenSet = true;
69 m_voice = std::forward<VoiceT>(value);
70 }
71 template <typename VoiceT = VoiceParameters>
72 ChannelParameters& WithVoice(VoiceT&& value) {
73 SetVoice(std::forward<VoiceT>(value));
74 return *this;
75 }
77
79
83 inline const NotifyParameters& GetNotify() const { return m_notify; }
84 inline bool NotifyHasBeenSet() const { return m_notifyHasBeenSet; }
85 template <typename NotifyT = NotifyParameters>
86 void SetNotify(NotifyT&& value) {
87 m_notifyHasBeenSet = true;
88 m_notify = std::forward<NotifyT>(value);
89 }
90 template <typename NotifyT = NotifyParameters>
91 ChannelParameters& WithNotify(NotifyT&& value) {
92 SetNotify(std::forward<NotifyT>(value));
93 return *this;
94 }
96
98
101 inline const WhatsAppParameters& GetWhatsApp() const { return m_whatsApp; }
102 inline bool WhatsAppHasBeenSet() const { return m_whatsAppHasBeenSet; }
103 template <typename WhatsAppT = WhatsAppParameters>
104 void SetWhatsApp(WhatsAppT&& value) {
105 m_whatsAppHasBeenSet = true;
106 m_whatsApp = std::forward<WhatsAppT>(value);
107 }
108 template <typename WhatsAppT = WhatsAppParameters>
109 ChannelParameters& WithWhatsApp(WhatsAppT&& value) {
110 SetWhatsApp(std::forward<WhatsAppT>(value));
111 return *this;
112 }
114 private:
115 TextParameters m_text;
116
117 VoiceParameters m_voice;
118
119 NotifyParameters m_notify;
120
121 WhatsAppParameters m_whatsApp;
122 bool m_textHasBeenSet = false;
123 bool m_voiceHasBeenSet = false;
124 bool m_notifyHasBeenSet = false;
125 bool m_whatsAppHasBeenSet = false;
126};
127
128} // namespace Model
129} // namespace EndUserMessaging
130} // namespace Aws
ChannelParameters & WithVoice(VoiceT &&value)
ChannelParameters & WithText(TextT &&value)
ChannelParameters & WithNotify(NotifyT &&value)
AWS_ENDUSERMESSAGING_API ChannelParameters(Aws::Utils::Json::JsonView jsonValue)
const WhatsAppParameters & GetWhatsApp() const
AWS_ENDUSERMESSAGING_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_ENDUSERMESSAGING_API ChannelParameters & operator=(Aws::Utils::Json::JsonView jsonValue)
ChannelParameters & WithWhatsApp(WhatsAppT &&value)
AWS_ENDUSERMESSAGING_API ChannelParameters()=default
Aws::Utils::Json::JsonValue JsonValue