AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
EventDestination.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/pinpoint-email/PinpointEmail_EXPORTS.h>
10#include <aws/pinpoint-email/model/CloudWatchDestination.h>
11#include <aws/pinpoint-email/model/EventType.h>
12#include <aws/pinpoint-email/model/KinesisFirehoseDestination.h>
13#include <aws/pinpoint-email/model/PinpointDestination.h>
14#include <aws/pinpoint-email/model/SnsDestination.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace PinpointEmail {
26namespace Model {
27
39 public:
40 AWS_PINPOINTEMAIL_API EventDestination() = default;
41 AWS_PINPOINTEMAIL_API EventDestination(Aws::Utils::Json::JsonView jsonValue);
42 AWS_PINPOINTEMAIL_API EventDestination& operator=(Aws::Utils::Json::JsonView jsonValue);
43 AWS_PINPOINTEMAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
44
46
49 inline const Aws::String& GetName() const { return m_name; }
50 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
51 template <typename NameT = Aws::String>
52 void SetName(NameT&& value) {
53 m_nameHasBeenSet = true;
54 m_name = std::forward<NameT>(value);
55 }
56 template <typename NameT = Aws::String>
57 EventDestination& WithName(NameT&& value) {
58 SetName(std::forward<NameT>(value));
59 return *this;
60 }
62
64
71 inline bool GetEnabled() const { return m_enabled; }
72 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; }
73 inline void SetEnabled(bool value) {
74 m_enabledHasBeenSet = true;
75 m_enabled = value;
76 }
77 inline EventDestination& WithEnabled(bool value) {
78 SetEnabled(value);
79 return *this;
80 }
82
84
88 inline const Aws::Vector<EventType>& GetMatchingEventTypes() const { return m_matchingEventTypes; }
89 inline bool MatchingEventTypesHasBeenSet() const { return m_matchingEventTypesHasBeenSet; }
90 template <typename MatchingEventTypesT = Aws::Vector<EventType>>
91 void SetMatchingEventTypes(MatchingEventTypesT&& value) {
92 m_matchingEventTypesHasBeenSet = true;
93 m_matchingEventTypes = std::forward<MatchingEventTypesT>(value);
94 }
95 template <typename MatchingEventTypesT = Aws::Vector<EventType>>
96 EventDestination& WithMatchingEventTypes(MatchingEventTypesT&& value) {
97 SetMatchingEventTypes(std::forward<MatchingEventTypesT>(value));
98 return *this;
99 }
101 m_matchingEventTypesHasBeenSet = true;
102 m_matchingEventTypes.push_back(value);
103 return *this;
104 }
106
108
113 inline const KinesisFirehoseDestination& GetKinesisFirehoseDestination() const { return m_kinesisFirehoseDestination; }
114 inline bool KinesisFirehoseDestinationHasBeenSet() const { return m_kinesisFirehoseDestinationHasBeenSet; }
115 template <typename KinesisFirehoseDestinationT = KinesisFirehoseDestination>
116 void SetKinesisFirehoseDestination(KinesisFirehoseDestinationT&& value) {
117 m_kinesisFirehoseDestinationHasBeenSet = true;
118 m_kinesisFirehoseDestination = std::forward<KinesisFirehoseDestinationT>(value);
119 }
120 template <typename KinesisFirehoseDestinationT = KinesisFirehoseDestination>
121 EventDestination& WithKinesisFirehoseDestination(KinesisFirehoseDestinationT&& value) {
122 SetKinesisFirehoseDestination(std::forward<KinesisFirehoseDestinationT>(value));
123 return *this;
124 }
126
128
133 inline const CloudWatchDestination& GetCloudWatchDestination() const { return m_cloudWatchDestination; }
134 inline bool CloudWatchDestinationHasBeenSet() const { return m_cloudWatchDestinationHasBeenSet; }
135 template <typename CloudWatchDestinationT = CloudWatchDestination>
136 void SetCloudWatchDestination(CloudWatchDestinationT&& value) {
137 m_cloudWatchDestinationHasBeenSet = true;
138 m_cloudWatchDestination = std::forward<CloudWatchDestinationT>(value);
139 }
140 template <typename CloudWatchDestinationT = CloudWatchDestination>
141 EventDestination& WithCloudWatchDestination(CloudWatchDestinationT&& value) {
142 SetCloudWatchDestination(std::forward<CloudWatchDestinationT>(value));
143 return *this;
144 }
146
148
152 inline const SnsDestination& GetSnsDestination() const { return m_snsDestination; }
153 inline bool SnsDestinationHasBeenSet() const { return m_snsDestinationHasBeenSet; }
154 template <typename SnsDestinationT = SnsDestination>
155 void SetSnsDestination(SnsDestinationT&& value) {
156 m_snsDestinationHasBeenSet = true;
157 m_snsDestination = std::forward<SnsDestinationT>(value);
158 }
159 template <typename SnsDestinationT = SnsDestination>
160 EventDestination& WithSnsDestination(SnsDestinationT&& value) {
161 SetSnsDestination(std::forward<SnsDestinationT>(value));
162 return *this;
163 }
165
167
172 inline const PinpointDestination& GetPinpointDestination() const { return m_pinpointDestination; }
173 inline bool PinpointDestinationHasBeenSet() const { return m_pinpointDestinationHasBeenSet; }
174 template <typename PinpointDestinationT = PinpointDestination>
175 void SetPinpointDestination(PinpointDestinationT&& value) {
176 m_pinpointDestinationHasBeenSet = true;
177 m_pinpointDestination = std::forward<PinpointDestinationT>(value);
178 }
179 template <typename PinpointDestinationT = PinpointDestination>
180 EventDestination& WithPinpointDestination(PinpointDestinationT&& value) {
181 SetPinpointDestination(std::forward<PinpointDestinationT>(value));
182 return *this;
183 }
185 private:
186 Aws::String m_name;
187
188 bool m_enabled{false};
189
190 Aws::Vector<EventType> m_matchingEventTypes;
191
192 KinesisFirehoseDestination m_kinesisFirehoseDestination;
193
194 CloudWatchDestination m_cloudWatchDestination;
195
196 SnsDestination m_snsDestination;
197
198 PinpointDestination m_pinpointDestination;
199 bool m_nameHasBeenSet = false;
200 bool m_enabledHasBeenSet = false;
201 bool m_matchingEventTypesHasBeenSet = false;
202 bool m_kinesisFirehoseDestinationHasBeenSet = false;
203 bool m_cloudWatchDestinationHasBeenSet = false;
204 bool m_snsDestinationHasBeenSet = false;
205 bool m_pinpointDestinationHasBeenSet = false;
206};
207
208} // namespace Model
209} // namespace PinpointEmail
210} // namespace Aws
void SetPinpointDestination(PinpointDestinationT &&value)
EventDestination & WithCloudWatchDestination(CloudWatchDestinationT &&value)
EventDestination & WithName(NameT &&value)
const SnsDestination & GetSnsDestination() const
const KinesisFirehoseDestination & GetKinesisFirehoseDestination() const
const Aws::Vector< EventType > & GetMatchingEventTypes() const
void SetSnsDestination(SnsDestinationT &&value)
AWS_PINPOINTEMAIL_API EventDestination(Aws::Utils::Json::JsonView jsonValue)
AWS_PINPOINTEMAIL_API EventDestination & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_PINPOINTEMAIL_API EventDestination()=default
void SetKinesisFirehoseDestination(KinesisFirehoseDestinationT &&value)
EventDestination & WithMatchingEventTypes(MatchingEventTypesT &&value)
EventDestination & WithKinesisFirehoseDestination(KinesisFirehoseDestinationT &&value)
const PinpointDestination & GetPinpointDestination() const
EventDestination & WithEnabled(bool value)
const CloudWatchDestination & GetCloudWatchDestination() const
void SetMatchingEventTypes(MatchingEventTypesT &&value)
void SetCloudWatchDestination(CloudWatchDestinationT &&value)
EventDestination & WithPinpointDestination(PinpointDestinationT &&value)
EventDestination & WithSnsDestination(SnsDestinationT &&value)
AWS_PINPOINTEMAIL_API Aws::Utils::Json::JsonValue Jsonize() const
EventDestination & AddMatchingEventTypes(EventType value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue