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/ExternalCampaignType.h>
12#include <aws/connectcampaignsv2/model/Schedule.h>
13#include <aws/connectcampaignsv2/model/Source.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/core/utils/memory/stl/AWSString.h>
26namespace ConnectCampaignsV2 {
36 AWS_CONNECTCAMPAIGNSV2_API
Campaign() =
default;
45 template <
typename IdT = Aws::String>
47 m_idHasBeenSet =
true;
48 m_id = std::forward<IdT>(value);
50 template <
typename IdT = Aws::String>
52 SetId(std::forward<IdT>(value));
61 template <
typename ArnT = Aws::String>
63 m_arnHasBeenSet =
true;
64 m_arn = std::forward<ArnT>(value);
66 template <
typename ArnT = Aws::String>
68 SetArn(std::forward<ArnT>(value));
77 template <
typename NameT = Aws::String>
79 m_nameHasBeenSet =
true;
80 m_name = std::forward<NameT>(value);
82 template <
typename NameT = Aws::String>
84 SetName(std::forward<NameT>(value));
93 template <
typename ConnectInstanceIdT = Aws::String>
95 m_connectInstanceIdHasBeenSet =
true;
96 m_connectInstanceId = std::forward<ConnectInstanceIdT>(value);
98 template <
typename ConnectInstanceIdT = Aws::String>
109 template <
typename ChannelSubtypeConfigT = ChannelSubtypeConfig>
111 m_channelSubtypeConfigHasBeenSet =
true;
112 m_channelSubtypeConfig = std::forward<ChannelSubtypeConfigT>(value);
114 template <
typename ChannelSubtypeConfigT = ChannelSubtypeConfig>
126 m_typeHasBeenSet =
true;
139 template <
typename SourceT = Source>
141 m_sourceHasBeenSet =
true;
142 m_source = std::forward<SourceT>(value);
144 template <
typename SourceT = Source>
155 template <
typename ConnectCampaignFlowArnT = Aws::String>
157 m_connectCampaignFlowArnHasBeenSet =
true;
158 m_connectCampaignFlowArn = std::forward<ConnectCampaignFlowArnT>(value);
160 template <
typename ConnectCampaignFlowArnT = Aws::String>
171 template <
typename ScheduleT = Schedule>
173 m_scheduleHasBeenSet =
true;
174 m_schedule = std::forward<ScheduleT>(value);
176 template <
typename ScheduleT = Schedule>
187 template <
typename CommunicationTimeConfigT = CommunicationTimeConfig>
189 m_communicationTimeConfigHasBeenSet =
true;
190 m_communicationTimeConfig = std::forward<CommunicationTimeConfigT>(value);
192 template <
typename CommunicationTimeConfigT = CommunicationTimeConfig>
203 template <
typename CommunicationLimitsOverr
ideT = CommunicationLimitsConfig>
205 m_communicationLimitsOverrideHasBeenSet =
true;
206 m_communicationLimitsOverride = std::forward<CommunicationLimitsOverrideT>(value);
208 template <
typename CommunicationLimitsOverr
ideT = CommunicationLimitsConfig>
219 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
221 m_tagsHasBeenSet =
true;
222 m_tags = std::forward<TagsT>(value);
224 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
226 SetTags(std::forward<TagsT>(value));
229 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
231 m_tagsHasBeenSet =
true;
232 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
255 CommunicationTimeConfig m_communicationTimeConfig;
257 CommunicationLimitsConfig m_communicationLimitsOverride;
260 bool m_idHasBeenSet =
false;
261 bool m_arnHasBeenSet =
false;
262 bool m_nameHasBeenSet =
false;
263 bool m_connectInstanceIdHasBeenSet =
false;
264 bool m_channelSubtypeConfigHasBeenSet =
false;
265 bool m_typeHasBeenSet =
false;
266 bool m_sourceHasBeenSet =
false;
267 bool m_connectCampaignFlowArnHasBeenSet =
false;
268 bool m_scheduleHasBeenSet =
false;
269 bool m_communicationTimeConfigHasBeenSet =
false;
270 bool m_communicationLimitsOverrideHasBeenSet =
false;
271 bool m_tagsHasBeenSet =
false;
Campaign & WithConnectInstanceId(ConnectInstanceIdT &&value)
Campaign & WithCommunicationTimeConfig(CommunicationTimeConfigT &&value)
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)
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)
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 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