AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
NotificationAction.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/iotevents/IoTEvents_EXPORTS.h>
9#include <aws/iotevents/model/EmailConfiguration.h>
10#include <aws/iotevents/model/NotificationTargetActions.h>
11#include <aws/iotevents/model/SMSConfiguration.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace IoTEvents {
23namespace Model {
24
33 public:
34 AWS_IOTEVENTS_API NotificationAction() = default;
35 AWS_IOTEVENTS_API NotificationAction(Aws::Utils::Json::JsonView jsonValue);
37 AWS_IOTEVENTS_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
46 inline const NotificationTargetActions& GetAction() const { return m_action; }
47 inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; }
48 template <typename ActionT = NotificationTargetActions>
49 void SetAction(ActionT&& value) {
50 m_actionHasBeenSet = true;
51 m_action = std::forward<ActionT>(value);
52 }
53 template <typename ActionT = NotificationTargetActions>
54 NotificationAction& WithAction(ActionT&& value) {
55 SetAction(std::forward<ActionT>(value));
56 return *this;
57 }
59
61
64 inline const Aws::Vector<SMSConfiguration>& GetSmsConfigurations() const { return m_smsConfigurations; }
65 inline bool SmsConfigurationsHasBeenSet() const { return m_smsConfigurationsHasBeenSet; }
66 template <typename SmsConfigurationsT = Aws::Vector<SMSConfiguration>>
67 void SetSmsConfigurations(SmsConfigurationsT&& value) {
68 m_smsConfigurationsHasBeenSet = true;
69 m_smsConfigurations = std::forward<SmsConfigurationsT>(value);
70 }
71 template <typename SmsConfigurationsT = Aws::Vector<SMSConfiguration>>
72 NotificationAction& WithSmsConfigurations(SmsConfigurationsT&& value) {
73 SetSmsConfigurations(std::forward<SmsConfigurationsT>(value));
74 return *this;
75 }
76 template <typename SmsConfigurationsT = SMSConfiguration>
77 NotificationAction& AddSmsConfigurations(SmsConfigurationsT&& value) {
78 m_smsConfigurationsHasBeenSet = true;
79 m_smsConfigurations.emplace_back(std::forward<SmsConfigurationsT>(value));
80 return *this;
81 }
83
85
88 inline const Aws::Vector<EmailConfiguration>& GetEmailConfigurations() const { return m_emailConfigurations; }
89 inline bool EmailConfigurationsHasBeenSet() const { return m_emailConfigurationsHasBeenSet; }
90 template <typename EmailConfigurationsT = Aws::Vector<EmailConfiguration>>
91 void SetEmailConfigurations(EmailConfigurationsT&& value) {
92 m_emailConfigurationsHasBeenSet = true;
93 m_emailConfigurations = std::forward<EmailConfigurationsT>(value);
94 }
95 template <typename EmailConfigurationsT = Aws::Vector<EmailConfiguration>>
96 NotificationAction& WithEmailConfigurations(EmailConfigurationsT&& value) {
97 SetEmailConfigurations(std::forward<EmailConfigurationsT>(value));
98 return *this;
99 }
100 template <typename EmailConfigurationsT = EmailConfiguration>
101 NotificationAction& AddEmailConfigurations(EmailConfigurationsT&& value) {
102 m_emailConfigurationsHasBeenSet = true;
103 m_emailConfigurations.emplace_back(std::forward<EmailConfigurationsT>(value));
104 return *this;
105 }
107 private:
109
110 Aws::Vector<SMSConfiguration> m_smsConfigurations;
111
112 Aws::Vector<EmailConfiguration> m_emailConfigurations;
113 bool m_actionHasBeenSet = false;
114 bool m_smsConfigurationsHasBeenSet = false;
115 bool m_emailConfigurationsHasBeenSet = false;
116};
117
118} // namespace Model
119} // namespace IoTEvents
120} // namespace Aws
void SetSmsConfigurations(SmsConfigurationsT &&value)
AWS_IOTEVENTS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_IOTEVENTS_API NotificationAction()=default
NotificationAction & AddEmailConfigurations(EmailConfigurationsT &&value)
AWS_IOTEVENTS_API NotificationAction(Aws::Utils::Json::JsonView jsonValue)
NotificationAction & WithEmailConfigurations(EmailConfigurationsT &&value)
NotificationAction & WithAction(ActionT &&value)
const NotificationTargetActions & GetAction() const
AWS_IOTEVENTS_API NotificationAction & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetEmailConfigurations(EmailConfigurationsT &&value)
const Aws::Vector< EmailConfiguration > & GetEmailConfigurations() const
NotificationAction & AddSmsConfigurations(SmsConfigurationsT &&value)
const Aws::Vector< SMSConfiguration > & GetSmsConfigurations() const
NotificationAction & WithSmsConfigurations(SmsConfigurationsT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue