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>
27namespace ConnectCampaignsV2 {
37 AWS_CONNECTCAMPAIGNSV2_API
Campaign() =
default;
46 template <
typename IdT = Aws::String>
48 m_idHasBeenSet =
true;
49 m_id = std::forward<IdT>(value);
51 template <
typename IdT = Aws::String>
53 SetId(std::forward<IdT>(value));
62 template <
typename ArnT = Aws::String>
64 m_arnHasBeenSet =
true;
65 m_arn = std::forward<ArnT>(value);
67 template <
typename ArnT = Aws::String>
69 SetArn(std::forward<ArnT>(value));
78 template <
typename NameT = Aws::String>
80 m_nameHasBeenSet =
true;
81 m_name = std::forward<NameT>(value);
83 template <
typename NameT = Aws::String>
85 SetName(std::forward<NameT>(value));
94 template <
typename ConnectInstanceIdT = Aws::String>
96 m_connectInstanceIdHasBeenSet =
true;
97 m_connectInstanceId = std::forward<ConnectInstanceIdT>(value);
99 template <
typename ConnectInstanceIdT = Aws::String>
110 template <
typename ChannelSubtypeConfigT = ChannelSubtypeConfig>
112 m_channelSubtypeConfigHasBeenSet =
true;
113 m_channelSubtypeConfig = std::forward<ChannelSubtypeConfigT>(value);
115 template <
typename ChannelSubtypeConfigT = ChannelSubtypeConfig>
127 m_typeHasBeenSet =
true;
140 template <
typename SourceT = Source>
142 m_sourceHasBeenSet =
true;
143 m_source = std::forward<SourceT>(value);
145 template <
typename SourceT = Source>
156 template <
typename ConnectCampaignFlowArnT = Aws::String>
158 m_connectCampaignFlowArnHasBeenSet =
true;
159 m_connectCampaignFlowArn = std::forward<ConnectCampaignFlowArnT>(value);
161 template <
typename ConnectCampaignFlowArnT = Aws::String>
172 template <
typename ScheduleT = Schedule>
174 m_scheduleHasBeenSet =
true;
175 m_schedule = std::forward<ScheduleT>(value);
177 template <
typename ScheduleT = Schedule>
188 template <
typename EntryLimitsConfigT = EntryLimitsConfig>
190 m_entryLimitsConfigHasBeenSet =
true;
191 m_entryLimitsConfig = std::forward<EntryLimitsConfigT>(value);
193 template <
typename EntryLimitsConfigT = EntryLimitsConfig>
204 template <
typename CommunicationTimeConfigT = CommunicationTimeConfig>
206 m_communicationTimeConfigHasBeenSet =
true;
207 m_communicationTimeConfig = std::forward<CommunicationTimeConfigT>(value);
209 template <
typename CommunicationTimeConfigT = CommunicationTimeConfig>
220 template <
typename CommunicationLimitsOverr
ideT = CommunicationLimitsConfig>
222 m_communicationLimitsOverrideHasBeenSet =
true;
223 m_communicationLimitsOverride = std::forward<CommunicationLimitsOverrideT>(value);
225 template <
typename CommunicationLimitsOverr
ideT = CommunicationLimitsConfig>
236 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
238 m_tagsHasBeenSet =
true;
239 m_tags = std::forward<TagsT>(value);
241 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
243 SetTags(std::forward<TagsT>(value));
246 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
248 m_tagsHasBeenSet =
true;
249 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
272 EntryLimitsConfig m_entryLimitsConfig;
274 CommunicationTimeConfig m_communicationTimeConfig;
276 CommunicationLimitsConfig m_communicationLimitsOverride;
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;
Campaign & WithConnectInstanceId(ConnectInstanceIdT &&value)
Campaign & WithCommunicationTimeConfig(CommunicationTimeConfigT &&value)
bool EntryLimitsConfigHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
Campaign & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetType(ExternalCampaignType value)
Campaign & WithName(NameT &&value)
void SetChannelSubtypeConfig(ChannelSubtypeConfigT &&value)
AWS_CONNECTCAMPAIGNSV2_API Campaign & operator=(Aws::Utils::Json::JsonView jsonValue)
Campaign & WithEntryLimitsConfig(EntryLimitsConfigT &&value)
const Aws::String & GetId() const
bool SourceHasBeenSet() const
AWS_CONNECTCAMPAIGNSV2_API Aws::Utils::Json::JsonValue Jsonize() const
bool CommunicationTimeConfigHasBeenSet() const
bool ArnHasBeenSet() const
bool IdHasBeenSet() const
const CommunicationTimeConfig & GetCommunicationTimeConfig() const
const Aws::String & GetConnectInstanceId() const
ExternalCampaignType GetType() const
void SetSchedule(ScheduleT &&value)
const Aws::String & GetName() const
AWS_CONNECTCAMPAIGNSV2_API Campaign()=default
void SetConnectCampaignFlowArn(ConnectCampaignFlowArnT &&value)
Campaign & WithArn(ArnT &&value)
AWS_CONNECTCAMPAIGNSV2_API Campaign(Aws::Utils::Json::JsonView jsonValue)
bool NameHasBeenSet() const
const Aws::String & GetConnectCampaignFlowArn() const
Campaign & WithTags(TagsT &&value)
bool ConnectCampaignFlowArnHasBeenSet() const
void SetName(NameT &&value)
Campaign & WithChannelSubtypeConfig(ChannelSubtypeConfigT &&value)
bool TagsHasBeenSet() const
bool CommunicationLimitsOverrideHasBeenSet() const
const Source & GetSource() const
bool TypeHasBeenSet() const
void SetSource(SourceT &&value)
const EntryLimitsConfig & GetEntryLimitsConfig() const
bool ConnectInstanceIdHasBeenSet() const
bool ScheduleHasBeenSet() const
void SetTags(TagsT &&value)
void SetCommunicationLimitsOverride(CommunicationLimitsOverrideT &&value)
const ChannelSubtypeConfig & GetChannelSubtypeConfig() const
const CommunicationLimitsConfig & GetCommunicationLimitsOverride() const
bool ChannelSubtypeConfigHasBeenSet() const
Campaign & WithSource(SourceT &&value)
Campaign & WithType(ExternalCampaignType value)
void SetEntryLimitsConfig(EntryLimitsConfigT &&value)
void SetArn(ArnT &&value)
void SetConnectInstanceId(ConnectInstanceIdT &&value)
Campaign & WithCommunicationLimitsOverride(CommunicationLimitsOverrideT &&value)
const Schedule & GetSchedule() const
void SetCommunicationTimeConfig(CommunicationTimeConfigT &&value)
Campaign & WithConnectCampaignFlowArn(ConnectCampaignFlowArnT &&value)
Campaign & WithId(IdT &&value)
const Aws::String & GetArn() const
Campaign & WithSchedule(ScheduleT &&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
Aws::Utils::Json::JsonValue JsonValue