AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
EventDestination.h
1
6#pragma once
7#include <aws/pinpoint-email/PinpointEmail_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/pinpoint-email/model/KinesisFirehoseDestination.h>
11#include <aws/pinpoint-email/model/CloudWatchDestination.h>
12#include <aws/pinpoint-email/model/SnsDestination.h>
13#include <aws/pinpoint-email/model/PinpointDestination.h>
14#include <aws/pinpoint-email/model/EventType.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace PinpointEmail
28{
29namespace Model
30{
31
43 {
44 public:
45 AWS_PINPOINTEMAIL_API EventDestination() = default;
46 AWS_PINPOINTEMAIL_API EventDestination(Aws::Utils::Json::JsonView jsonValue);
47 AWS_PINPOINTEMAIL_API EventDestination& operator=(Aws::Utils::Json::JsonView jsonValue);
48 AWS_PINPOINTEMAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
49
50
52
55 inline const Aws::String& GetName() const { return m_name; }
56 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
57 template<typename NameT = Aws::String>
58 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
59 template<typename NameT = Aws::String>
60 EventDestination& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
62
64
71 inline bool GetEnabled() const { return m_enabled; }
72 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; }
73 inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; }
74 inline EventDestination& WithEnabled(bool value) { SetEnabled(value); return *this;}
76
78
82 inline const Aws::Vector<EventType>& GetMatchingEventTypes() const { return m_matchingEventTypes; }
83 inline bool MatchingEventTypesHasBeenSet() const { return m_matchingEventTypesHasBeenSet; }
84 template<typename MatchingEventTypesT = Aws::Vector<EventType>>
85 void SetMatchingEventTypes(MatchingEventTypesT&& value) { m_matchingEventTypesHasBeenSet = true; m_matchingEventTypes = std::forward<MatchingEventTypesT>(value); }
86 template<typename MatchingEventTypesT = Aws::Vector<EventType>>
87 EventDestination& WithMatchingEventTypes(MatchingEventTypesT&& value) { SetMatchingEventTypes(std::forward<MatchingEventTypesT>(value)); return *this;}
88 inline EventDestination& AddMatchingEventTypes(EventType value) { m_matchingEventTypesHasBeenSet = true; m_matchingEventTypes.push_back(value); return *this; }
90
92
97 inline const KinesisFirehoseDestination& GetKinesisFirehoseDestination() const { return m_kinesisFirehoseDestination; }
98 inline bool KinesisFirehoseDestinationHasBeenSet() const { return m_kinesisFirehoseDestinationHasBeenSet; }
99 template<typename KinesisFirehoseDestinationT = KinesisFirehoseDestination>
100 void SetKinesisFirehoseDestination(KinesisFirehoseDestinationT&& value) { m_kinesisFirehoseDestinationHasBeenSet = true; m_kinesisFirehoseDestination = std::forward<KinesisFirehoseDestinationT>(value); }
101 template<typename KinesisFirehoseDestinationT = KinesisFirehoseDestination>
102 EventDestination& WithKinesisFirehoseDestination(KinesisFirehoseDestinationT&& value) { SetKinesisFirehoseDestination(std::forward<KinesisFirehoseDestinationT>(value)); return *this;}
104
106
111 inline const CloudWatchDestination& GetCloudWatchDestination() const { return m_cloudWatchDestination; }
112 inline bool CloudWatchDestinationHasBeenSet() const { return m_cloudWatchDestinationHasBeenSet; }
113 template<typename CloudWatchDestinationT = CloudWatchDestination>
114 void SetCloudWatchDestination(CloudWatchDestinationT&& value) { m_cloudWatchDestinationHasBeenSet = true; m_cloudWatchDestination = std::forward<CloudWatchDestinationT>(value); }
115 template<typename CloudWatchDestinationT = CloudWatchDestination>
116 EventDestination& WithCloudWatchDestination(CloudWatchDestinationT&& value) { SetCloudWatchDestination(std::forward<CloudWatchDestinationT>(value)); return *this;}
118
120
124 inline const SnsDestination& GetSnsDestination() const { return m_snsDestination; }
125 inline bool SnsDestinationHasBeenSet() const { return m_snsDestinationHasBeenSet; }
126 template<typename SnsDestinationT = SnsDestination>
127 void SetSnsDestination(SnsDestinationT&& value) { m_snsDestinationHasBeenSet = true; m_snsDestination = std::forward<SnsDestinationT>(value); }
128 template<typename SnsDestinationT = SnsDestination>
129 EventDestination& WithSnsDestination(SnsDestinationT&& value) { SetSnsDestination(std::forward<SnsDestinationT>(value)); return *this;}
131
133
138 inline const PinpointDestination& GetPinpointDestination() const { return m_pinpointDestination; }
139 inline bool PinpointDestinationHasBeenSet() const { return m_pinpointDestinationHasBeenSet; }
140 template<typename PinpointDestinationT = PinpointDestination>
141 void SetPinpointDestination(PinpointDestinationT&& value) { m_pinpointDestinationHasBeenSet = true; m_pinpointDestination = std::forward<PinpointDestinationT>(value); }
142 template<typename PinpointDestinationT = PinpointDestination>
143 EventDestination& WithPinpointDestination(PinpointDestinationT&& value) { SetPinpointDestination(std::forward<PinpointDestinationT>(value)); return *this;}
145 private:
146
147 Aws::String m_name;
148 bool m_nameHasBeenSet = false;
149
150 bool m_enabled{false};
151 bool m_enabledHasBeenSet = false;
152
153 Aws::Vector<EventType> m_matchingEventTypes;
154 bool m_matchingEventTypesHasBeenSet = false;
155
156 KinesisFirehoseDestination m_kinesisFirehoseDestination;
157 bool m_kinesisFirehoseDestinationHasBeenSet = false;
158
159 CloudWatchDestination m_cloudWatchDestination;
160 bool m_cloudWatchDestinationHasBeenSet = false;
161
162 SnsDestination m_snsDestination;
163 bool m_snsDestinationHasBeenSet = false;
164
165 PinpointDestination m_pinpointDestination;
166 bool m_pinpointDestinationHasBeenSet = false;
167 };
168
169} // namespace Model
170} // namespace PinpointEmail
171} // 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