AWS SDK for C++

AWS SDK for C++ Version 1.11.791

Loading...
Searching...
No Matches
Campaign.h
1
6#pragma once
7#include <aws/connectcampaignsv2/ConnectCampaignsV2_EXPORTS.h>
8#include <aws/connectcampaignsv2/model/ChannelSubtypeConfig.h>
9#include <aws/connectcampaignsv2/model/CommunicationLimitsConfig.h>
10#include <aws/connectcampaignsv2/model/CommunicationTimeConfig.h>
11#include <aws/connectcampaignsv2/model/EntryLimitsConfig.h>
12#include <aws/connectcampaignsv2/model/ExternalCampaignType.h>
13#include <aws/connectcampaignsv2/model/Schedule.h>
14#include <aws/connectcampaignsv2/model/Source.h>
15#include <aws/core/utils/memory/stl/AWSMap.h>
16#include <aws/core/utils/memory/stl/AWSString.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Json {
23class JsonValue;
24class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace ConnectCampaignsV2 {
28namespace Model {
29
35class Campaign {
36 public:
37 AWS_CONNECTCAMPAIGNSV2_API Campaign() = default;
38 AWS_CONNECTCAMPAIGNSV2_API Campaign(Aws::Utils::Json::JsonView jsonValue);
39 AWS_CONNECTCAMPAIGNSV2_API Campaign& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_CONNECTCAMPAIGNSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
44 inline const Aws::String& GetId() const { return m_id; }
45 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
46 template <typename IdT = Aws::String>
47 void SetId(IdT&& value) {
48 m_idHasBeenSet = true;
49 m_id = std::forward<IdT>(value);
50 }
51 template <typename IdT = Aws::String>
52 Campaign& WithId(IdT&& value) {
53 SetId(std::forward<IdT>(value));
54 return *this;
55 }
57
59
60 inline const Aws::String& GetArn() const { return m_arn; }
61 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
62 template <typename ArnT = Aws::String>
63 void SetArn(ArnT&& value) {
64 m_arnHasBeenSet = true;
65 m_arn = std::forward<ArnT>(value);
66 }
67 template <typename ArnT = Aws::String>
68 Campaign& WithArn(ArnT&& value) {
69 SetArn(std::forward<ArnT>(value));
70 return *this;
71 }
73
75
76 inline const Aws::String& GetName() const { return m_name; }
77 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
78 template <typename NameT = Aws::String>
79 void SetName(NameT&& value) {
80 m_nameHasBeenSet = true;
81 m_name = std::forward<NameT>(value);
82 }
83 template <typename NameT = Aws::String>
84 Campaign& WithName(NameT&& value) {
85 SetName(std::forward<NameT>(value));
86 return *this;
87 }
89
91
92 inline const Aws::String& GetConnectInstanceId() const { return m_connectInstanceId; }
93 inline bool ConnectInstanceIdHasBeenSet() const { return m_connectInstanceIdHasBeenSet; }
94 template <typename ConnectInstanceIdT = Aws::String>
95 void SetConnectInstanceId(ConnectInstanceIdT&& value) {
96 m_connectInstanceIdHasBeenSet = true;
97 m_connectInstanceId = std::forward<ConnectInstanceIdT>(value);
98 }
99 template <typename ConnectInstanceIdT = Aws::String>
100 Campaign& WithConnectInstanceId(ConnectInstanceIdT&& value) {
101 SetConnectInstanceId(std::forward<ConnectInstanceIdT>(value));
102 return *this;
103 }
105
107
108 inline const ChannelSubtypeConfig& GetChannelSubtypeConfig() const { return m_channelSubtypeConfig; }
109 inline bool ChannelSubtypeConfigHasBeenSet() const { return m_channelSubtypeConfigHasBeenSet; }
110 template <typename ChannelSubtypeConfigT = ChannelSubtypeConfig>
111 void SetChannelSubtypeConfig(ChannelSubtypeConfigT&& value) {
112 m_channelSubtypeConfigHasBeenSet = true;
113 m_channelSubtypeConfig = std::forward<ChannelSubtypeConfigT>(value);
114 }
115 template <typename ChannelSubtypeConfigT = ChannelSubtypeConfig>
116 Campaign& WithChannelSubtypeConfig(ChannelSubtypeConfigT&& value) {
117 SetChannelSubtypeConfig(std::forward<ChannelSubtypeConfigT>(value));
118 return *this;
119 }
121
123
124 inline ExternalCampaignType GetType() const { return m_type; }
125 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
126 inline void SetType(ExternalCampaignType value) {
127 m_typeHasBeenSet = true;
128 m_type = value;
129 }
131 SetType(value);
132 return *this;
133 }
135
137
138 inline const Source& GetSource() const { return m_source; }
139 inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; }
140 template <typename SourceT = Source>
141 void SetSource(SourceT&& value) {
142 m_sourceHasBeenSet = true;
143 m_source = std::forward<SourceT>(value);
144 }
145 template <typename SourceT = Source>
146 Campaign& WithSource(SourceT&& value) {
147 SetSource(std::forward<SourceT>(value));
148 return *this;
149 }
151
153
154 inline const Aws::String& GetConnectCampaignFlowArn() const { return m_connectCampaignFlowArn; }
155 inline bool ConnectCampaignFlowArnHasBeenSet() const { return m_connectCampaignFlowArnHasBeenSet; }
156 template <typename ConnectCampaignFlowArnT = Aws::String>
157 void SetConnectCampaignFlowArn(ConnectCampaignFlowArnT&& value) {
158 m_connectCampaignFlowArnHasBeenSet = true;
159 m_connectCampaignFlowArn = std::forward<ConnectCampaignFlowArnT>(value);
160 }
161 template <typename ConnectCampaignFlowArnT = Aws::String>
162 Campaign& WithConnectCampaignFlowArn(ConnectCampaignFlowArnT&& value) {
163 SetConnectCampaignFlowArn(std::forward<ConnectCampaignFlowArnT>(value));
164 return *this;
165 }
167
169
170 inline const Schedule& GetSchedule() const { return m_schedule; }
171 inline bool ScheduleHasBeenSet() const { return m_scheduleHasBeenSet; }
172 template <typename ScheduleT = Schedule>
173 void SetSchedule(ScheduleT&& value) {
174 m_scheduleHasBeenSet = true;
175 m_schedule = std::forward<ScheduleT>(value);
176 }
177 template <typename ScheduleT = Schedule>
178 Campaign& WithSchedule(ScheduleT&& value) {
179 SetSchedule(std::forward<ScheduleT>(value));
180 return *this;
181 }
183
185
186 inline const EntryLimitsConfig& GetEntryLimitsConfig() const { return m_entryLimitsConfig; }
187 inline bool EntryLimitsConfigHasBeenSet() const { return m_entryLimitsConfigHasBeenSet; }
188 template <typename EntryLimitsConfigT = EntryLimitsConfig>
189 void SetEntryLimitsConfig(EntryLimitsConfigT&& value) {
190 m_entryLimitsConfigHasBeenSet = true;
191 m_entryLimitsConfig = std::forward<EntryLimitsConfigT>(value);
192 }
193 template <typename EntryLimitsConfigT = EntryLimitsConfig>
194 Campaign& WithEntryLimitsConfig(EntryLimitsConfigT&& value) {
195 SetEntryLimitsConfig(std::forward<EntryLimitsConfigT>(value));
196 return *this;
197 }
199
201
202 inline const CommunicationTimeConfig& GetCommunicationTimeConfig() const { return m_communicationTimeConfig; }
203 inline bool CommunicationTimeConfigHasBeenSet() const { return m_communicationTimeConfigHasBeenSet; }
204 template <typename CommunicationTimeConfigT = CommunicationTimeConfig>
205 void SetCommunicationTimeConfig(CommunicationTimeConfigT&& value) {
206 m_communicationTimeConfigHasBeenSet = true;
207 m_communicationTimeConfig = std::forward<CommunicationTimeConfigT>(value);
208 }
209 template <typename CommunicationTimeConfigT = CommunicationTimeConfig>
210 Campaign& WithCommunicationTimeConfig(CommunicationTimeConfigT&& value) {
211 SetCommunicationTimeConfig(std::forward<CommunicationTimeConfigT>(value));
212 return *this;
213 }
215
217
218 inline const CommunicationLimitsConfig& GetCommunicationLimitsOverride() const { return m_communicationLimitsOverride; }
219 inline bool CommunicationLimitsOverrideHasBeenSet() const { return m_communicationLimitsOverrideHasBeenSet; }
220 template <typename CommunicationLimitsOverrideT = CommunicationLimitsConfig>
221 void SetCommunicationLimitsOverride(CommunicationLimitsOverrideT&& value) {
222 m_communicationLimitsOverrideHasBeenSet = true;
223 m_communicationLimitsOverride = std::forward<CommunicationLimitsOverrideT>(value);
224 }
225 template <typename CommunicationLimitsOverrideT = CommunicationLimitsConfig>
226 Campaign& WithCommunicationLimitsOverride(CommunicationLimitsOverrideT&& value) {
227 SetCommunicationLimitsOverride(std::forward<CommunicationLimitsOverrideT>(value));
228 return *this;
229 }
231
233
234 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
235 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
236 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
237 void SetTags(TagsT&& value) {
238 m_tagsHasBeenSet = true;
239 m_tags = std::forward<TagsT>(value);
240 }
241 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
242 Campaign& WithTags(TagsT&& value) {
243 SetTags(std::forward<TagsT>(value));
244 return *this;
245 }
246 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
247 Campaign& AddTags(TagsKeyT&& key, TagsValueT&& value) {
248 m_tagsHasBeenSet = true;
249 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
250 return *this;
251 }
253 private:
254 Aws::String m_id;
255
256 Aws::String m_arn;
257
258 Aws::String m_name;
259
260 Aws::String m_connectInstanceId;
261
262 ChannelSubtypeConfig m_channelSubtypeConfig;
263
265
266 Source m_source;
267
268 Aws::String m_connectCampaignFlowArn;
269
270 Schedule m_schedule;
271
272 EntryLimitsConfig m_entryLimitsConfig;
273
274 CommunicationTimeConfig m_communicationTimeConfig;
275
276 CommunicationLimitsConfig m_communicationLimitsOverride;
277
279 bool m_idHasBeenSet = false;
280 bool m_arnHasBeenSet = false;
281 bool m_nameHasBeenSet = false;
282 bool m_connectInstanceIdHasBeenSet = false;
283 bool m_channelSubtypeConfigHasBeenSet = false;
284 bool m_typeHasBeenSet = false;
285 bool m_sourceHasBeenSet = false;
286 bool m_connectCampaignFlowArnHasBeenSet = false;
287 bool m_scheduleHasBeenSet = false;
288 bool m_entryLimitsConfigHasBeenSet = false;
289 bool m_communicationTimeConfigHasBeenSet = false;
290 bool m_communicationLimitsOverrideHasBeenSet = false;
291 bool m_tagsHasBeenSet = false;
292};
293
294} // namespace Model
295} // namespace ConnectCampaignsV2
296} // namespace Aws
Campaign & WithConnectInstanceId(ConnectInstanceIdT &&value)
Definition Campaign.h:100
Campaign & WithCommunicationTimeConfig(CommunicationTimeConfigT &&value)
Definition Campaign.h:210
const Aws::Map< Aws::String, Aws::String > & GetTags() const
Definition Campaign.h:234
Campaign & AddTags(TagsKeyT &&key, TagsValueT &&value)
Definition Campaign.h:247
void SetType(ExternalCampaignType value)
Definition Campaign.h:126
Campaign & WithName(NameT &&value)
Definition Campaign.h:84
void SetChannelSubtypeConfig(ChannelSubtypeConfigT &&value)
Definition Campaign.h:111
AWS_CONNECTCAMPAIGNSV2_API Campaign & operator=(Aws::Utils::Json::JsonView jsonValue)
Campaign & WithEntryLimitsConfig(EntryLimitsConfigT &&value)
Definition Campaign.h:194
const Aws::String & GetId() const
Definition Campaign.h:44
AWS_CONNECTCAMPAIGNSV2_API Aws::Utils::Json::JsonValue Jsonize() const
const CommunicationTimeConfig & GetCommunicationTimeConfig() const
Definition Campaign.h:202
const Aws::String & GetConnectInstanceId() const
Definition Campaign.h:92
ExternalCampaignType GetType() const
Definition Campaign.h:124
void SetSchedule(ScheduleT &&value)
Definition Campaign.h:173
const Aws::String & GetName() const
Definition Campaign.h:76
AWS_CONNECTCAMPAIGNSV2_API Campaign()=default
void SetConnectCampaignFlowArn(ConnectCampaignFlowArnT &&value)
Definition Campaign.h:157
Campaign & WithArn(ArnT &&value)
Definition Campaign.h:68
AWS_CONNECTCAMPAIGNSV2_API Campaign(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetConnectCampaignFlowArn() const
Definition Campaign.h:154
Campaign & WithTags(TagsT &&value)
Definition Campaign.h:242
Campaign & WithChannelSubtypeConfig(ChannelSubtypeConfigT &&value)
Definition Campaign.h:116
const EntryLimitsConfig & GetEntryLimitsConfig() const
Definition Campaign.h:186
void SetCommunicationLimitsOverride(CommunicationLimitsOverrideT &&value)
Definition Campaign.h:221
const ChannelSubtypeConfig & GetChannelSubtypeConfig() const
Definition Campaign.h:108
const CommunicationLimitsConfig & GetCommunicationLimitsOverride() const
Definition Campaign.h:218
Campaign & WithSource(SourceT &&value)
Definition Campaign.h:146
Campaign & WithType(ExternalCampaignType value)
Definition Campaign.h:130
void SetEntryLimitsConfig(EntryLimitsConfigT &&value)
Definition Campaign.h:189
void SetConnectInstanceId(ConnectInstanceIdT &&value)
Definition Campaign.h:95
Campaign & WithCommunicationLimitsOverride(CommunicationLimitsOverrideT &&value)
Definition Campaign.h:226
const Schedule & GetSchedule() const
Definition Campaign.h:170
void SetCommunicationTimeConfig(CommunicationTimeConfigT &&value)
Definition Campaign.h:205
Campaign & WithConnectCampaignFlowArn(ConnectCampaignFlowArnT &&value)
Definition Campaign.h:162
Campaign & WithId(IdT &&value)
Definition Campaign.h:52
const Aws::String & GetArn() const
Definition Campaign.h:60
Campaign & WithSchedule(ScheduleT &&value)
Definition Campaign.h:178
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue