AWS SDK for C++

AWS SDK for C++ Version 1.11.830

Loading...
Searching...
No Matches
CreateCampaignRequest.h
1
6#pragma once
7#include <aws/connectcampaignsv2/ConnectCampaignsV2Request.h>
8#include <aws/connectcampaignsv2/ConnectCampaignsV2_EXPORTS.h>
9#include <aws/connectcampaignsv2/model/ChannelSubtypeConfig.h>
10#include <aws/connectcampaignsv2/model/CommunicationLimitsConfig.h>
11#include <aws/connectcampaignsv2/model/CommunicationTimeConfig.h>
12#include <aws/connectcampaignsv2/model/EntryLimitsConfig.h>
13#include <aws/connectcampaignsv2/model/ExternalCampaignType.h>
14#include <aws/connectcampaignsv2/model/Schedule.h>
15#include <aws/connectcampaignsv2/model/Source.h>
16#include <aws/core/utils/memory/stl/AWSMap.h>
17#include <aws/core/utils/memory/stl/AWSString.h>
18
19#include <utility>
20
21namespace Aws {
22namespace ConnectCampaignsV2 {
23namespace Model {
24
31 public:
32 AWS_CONNECTCAMPAIGNSV2_API CreateCampaignRequest() = default;
33
34 // Service request name is the Operation name which will send this request out,
35 // each operation should has unique request name, so that we can get operation's name from this request.
36 // Note: this is not true for response, multiple operations may have the same response name,
37 // so we can not get operation's name from response.
38 inline virtual const char* GetServiceRequestName() const override { return "CreateCampaign"; }
39
40 AWS_CONNECTCAMPAIGNSV2_API Aws::String SerializePayload() const override;
41
43
44 inline const Aws::String& GetName() const { return m_name; }
45 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
46 template <typename NameT = Aws::String>
47 void SetName(NameT&& value) {
48 m_nameHasBeenSet = true;
49 m_name = std::forward<NameT>(value);
50 }
51 template <typename NameT = Aws::String>
53 SetName(std::forward<NameT>(value));
54 return *this;
55 }
57
59
60 inline const Aws::String& GetConnectInstanceId() const { return m_connectInstanceId; }
61 inline bool ConnectInstanceIdHasBeenSet() const { return m_connectInstanceIdHasBeenSet; }
62 template <typename ConnectInstanceIdT = Aws::String>
63 void SetConnectInstanceId(ConnectInstanceIdT&& value) {
64 m_connectInstanceIdHasBeenSet = true;
65 m_connectInstanceId = std::forward<ConnectInstanceIdT>(value);
66 }
67 template <typename ConnectInstanceIdT = Aws::String>
68 CreateCampaignRequest& WithConnectInstanceId(ConnectInstanceIdT&& value) {
69 SetConnectInstanceId(std::forward<ConnectInstanceIdT>(value));
70 return *this;
71 }
73
75
76 inline const ChannelSubtypeConfig& GetChannelSubtypeConfig() const { return m_channelSubtypeConfig; }
77 inline bool ChannelSubtypeConfigHasBeenSet() const { return m_channelSubtypeConfigHasBeenSet; }
78 template <typename ChannelSubtypeConfigT = ChannelSubtypeConfig>
79 void SetChannelSubtypeConfig(ChannelSubtypeConfigT&& value) {
80 m_channelSubtypeConfigHasBeenSet = true;
81 m_channelSubtypeConfig = std::forward<ChannelSubtypeConfigT>(value);
82 }
83 template <typename ChannelSubtypeConfigT = ChannelSubtypeConfig>
84 CreateCampaignRequest& WithChannelSubtypeConfig(ChannelSubtypeConfigT&& value) {
85 SetChannelSubtypeConfig(std::forward<ChannelSubtypeConfigT>(value));
86 return *this;
87 }
89
91
92 inline ExternalCampaignType GetType() const { return m_type; }
93 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
94 inline void SetType(ExternalCampaignType value) {
95 m_typeHasBeenSet = true;
96 m_type = value;
97 }
99 SetType(value);
100 return *this;
101 }
103
105
106 inline const Source& GetSource() const { return m_source; }
107 inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; }
108 template <typename SourceT = Source>
109 void SetSource(SourceT&& value) {
110 m_sourceHasBeenSet = true;
111 m_source = std::forward<SourceT>(value);
112 }
113 template <typename SourceT = Source>
115 SetSource(std::forward<SourceT>(value));
116 return *this;
117 }
119
121
122 inline const Aws::String& GetConnectCampaignFlowArn() const { return m_connectCampaignFlowArn; }
123 inline bool ConnectCampaignFlowArnHasBeenSet() const { return m_connectCampaignFlowArnHasBeenSet; }
124 template <typename ConnectCampaignFlowArnT = Aws::String>
125 void SetConnectCampaignFlowArn(ConnectCampaignFlowArnT&& value) {
126 m_connectCampaignFlowArnHasBeenSet = true;
127 m_connectCampaignFlowArn = std::forward<ConnectCampaignFlowArnT>(value);
128 }
129 template <typename ConnectCampaignFlowArnT = Aws::String>
130 CreateCampaignRequest& WithConnectCampaignFlowArn(ConnectCampaignFlowArnT&& value) {
131 SetConnectCampaignFlowArn(std::forward<ConnectCampaignFlowArnT>(value));
132 return *this;
133 }
135
137
138 inline const Schedule& GetSchedule() const { return m_schedule; }
139 inline bool ScheduleHasBeenSet() const { return m_scheduleHasBeenSet; }
140 template <typename ScheduleT = Schedule>
141 void SetSchedule(ScheduleT&& value) {
142 m_scheduleHasBeenSet = true;
143 m_schedule = std::forward<ScheduleT>(value);
144 }
145 template <typename ScheduleT = Schedule>
147 SetSchedule(std::forward<ScheduleT>(value));
148 return *this;
149 }
151
153
154 inline const EntryLimitsConfig& GetEntryLimitsConfig() const { return m_entryLimitsConfig; }
155 inline bool EntryLimitsConfigHasBeenSet() const { return m_entryLimitsConfigHasBeenSet; }
156 template <typename EntryLimitsConfigT = EntryLimitsConfig>
157 void SetEntryLimitsConfig(EntryLimitsConfigT&& value) {
158 m_entryLimitsConfigHasBeenSet = true;
159 m_entryLimitsConfig = std::forward<EntryLimitsConfigT>(value);
160 }
161 template <typename EntryLimitsConfigT = EntryLimitsConfig>
162 CreateCampaignRequest& WithEntryLimitsConfig(EntryLimitsConfigT&& value) {
163 SetEntryLimitsConfig(std::forward<EntryLimitsConfigT>(value));
164 return *this;
165 }
167
169
170 inline const CommunicationTimeConfig& GetCommunicationTimeConfig() const { return m_communicationTimeConfig; }
171 inline bool CommunicationTimeConfigHasBeenSet() const { return m_communicationTimeConfigHasBeenSet; }
172 template <typename CommunicationTimeConfigT = CommunicationTimeConfig>
173 void SetCommunicationTimeConfig(CommunicationTimeConfigT&& value) {
174 m_communicationTimeConfigHasBeenSet = true;
175 m_communicationTimeConfig = std::forward<CommunicationTimeConfigT>(value);
176 }
177 template <typename CommunicationTimeConfigT = CommunicationTimeConfig>
178 CreateCampaignRequest& WithCommunicationTimeConfig(CommunicationTimeConfigT&& value) {
179 SetCommunicationTimeConfig(std::forward<CommunicationTimeConfigT>(value));
180 return *this;
181 }
183
185
186 inline const CommunicationLimitsConfig& GetCommunicationLimitsOverride() const { return m_communicationLimitsOverride; }
187 inline bool CommunicationLimitsOverrideHasBeenSet() const { return m_communicationLimitsOverrideHasBeenSet; }
188 template <typename CommunicationLimitsOverrideT = CommunicationLimitsConfig>
189 void SetCommunicationLimitsOverride(CommunicationLimitsOverrideT&& value) {
190 m_communicationLimitsOverrideHasBeenSet = true;
191 m_communicationLimitsOverride = std::forward<CommunicationLimitsOverrideT>(value);
192 }
193 template <typename CommunicationLimitsOverrideT = CommunicationLimitsConfig>
194 CreateCampaignRequest& WithCommunicationLimitsOverride(CommunicationLimitsOverrideT&& value) {
195 SetCommunicationLimitsOverride(std::forward<CommunicationLimitsOverrideT>(value));
196 return *this;
197 }
199
201
202 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
203 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
204 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
205 void SetTags(TagsT&& value) {
206 m_tagsHasBeenSet = true;
207 m_tags = std::forward<TagsT>(value);
208 }
209 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
211 SetTags(std::forward<TagsT>(value));
212 return *this;
213 }
214 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
215 CreateCampaignRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
216 m_tagsHasBeenSet = true;
217 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
218 return *this;
219 }
221 private:
222 Aws::String m_name;
223
224 Aws::String m_connectInstanceId;
225
226 ChannelSubtypeConfig m_channelSubtypeConfig;
227
229
230 Source m_source;
231
232 Aws::String m_connectCampaignFlowArn;
233
234 Schedule m_schedule;
235
236 EntryLimitsConfig m_entryLimitsConfig;
237
238 CommunicationTimeConfig m_communicationTimeConfig;
239
240 CommunicationLimitsConfig m_communicationLimitsOverride;
241
243 bool m_nameHasBeenSet = false;
244 bool m_connectInstanceIdHasBeenSet = false;
245 bool m_channelSubtypeConfigHasBeenSet = false;
246 bool m_typeHasBeenSet = false;
247 bool m_sourceHasBeenSet = false;
248 bool m_connectCampaignFlowArnHasBeenSet = false;
249 bool m_scheduleHasBeenSet = false;
250 bool m_entryLimitsConfigHasBeenSet = false;
251 bool m_communicationTimeConfigHasBeenSet = false;
252 bool m_communicationLimitsOverrideHasBeenSet = false;
253 bool m_tagsHasBeenSet = false;
254};
255
256} // namespace Model
257} // namespace ConnectCampaignsV2
258} // namespace Aws
CreateCampaignRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
AWS_CONNECTCAMPAIGNSV2_API CreateCampaignRequest()=default
void SetConnectCampaignFlowArn(ConnectCampaignFlowArnT &&value)
CreateCampaignRequest & WithCommunicationLimitsOverride(CommunicationLimitsOverrideT &&value)
void SetCommunicationTimeConfig(CommunicationTimeConfigT &&value)
CreateCampaignRequest & WithSchedule(ScheduleT &&value)
void SetCommunicationLimitsOverride(CommunicationLimitsOverrideT &&value)
virtual const char * GetServiceRequestName() const override
CreateCampaignRequest & WithConnectCampaignFlowArn(ConnectCampaignFlowArnT &&value)
CreateCampaignRequest & WithType(ExternalCampaignType value)
const ChannelSubtypeConfig & GetChannelSubtypeConfig() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const CommunicationLimitsConfig & GetCommunicationLimitsOverride() const
AWS_CONNECTCAMPAIGNSV2_API Aws::String SerializePayload() const override
CreateCampaignRequest & WithCommunicationTimeConfig(CommunicationTimeConfigT &&value)
CreateCampaignRequest & WithEntryLimitsConfig(EntryLimitsConfigT &&value)
const CommunicationTimeConfig & GetCommunicationTimeConfig() const
CreateCampaignRequest & WithSource(SourceT &&value)
void SetChannelSubtypeConfig(ChannelSubtypeConfigT &&value)
CreateCampaignRequest & WithConnectInstanceId(ConnectInstanceIdT &&value)
CreateCampaignRequest & WithChannelSubtypeConfig(ChannelSubtypeConfigT &&value)
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