AWS SDK for C++

AWS SDK for C++ Version 1.11.759

Loading...
Searching...
No Matches
RoutingProfile.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/connect/model/AgentAvailabilityTimer.h>
9#include <aws/connect/model/MediaConcurrency.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Connect {
25namespace Model {
26
33 public:
34 AWS_CONNECT_API RoutingProfile() = default;
35 AWS_CONNECT_API RoutingProfile(Aws::Utils::Json::JsonView jsonValue);
37 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
45 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
46 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
47 template <typename InstanceIdT = Aws::String>
48 void SetInstanceId(InstanceIdT&& value) {
49 m_instanceIdHasBeenSet = true;
50 m_instanceId = std::forward<InstanceIdT>(value);
51 }
52 template <typename InstanceIdT = Aws::String>
53 RoutingProfile& WithInstanceId(InstanceIdT&& value) {
54 SetInstanceId(std::forward<InstanceIdT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetName() const { return m_name; }
64 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
65 template <typename NameT = Aws::String>
66 void SetName(NameT&& value) {
67 m_nameHasBeenSet = true;
68 m_name = std::forward<NameT>(value);
69 }
70 template <typename NameT = Aws::String>
71 RoutingProfile& WithName(NameT&& value) {
72 SetName(std::forward<NameT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::String& GetRoutingProfileArn() const { return m_routingProfileArn; }
82 inline bool RoutingProfileArnHasBeenSet() const { return m_routingProfileArnHasBeenSet; }
83 template <typename RoutingProfileArnT = Aws::String>
84 void SetRoutingProfileArn(RoutingProfileArnT&& value) {
85 m_routingProfileArnHasBeenSet = true;
86 m_routingProfileArn = std::forward<RoutingProfileArnT>(value);
87 }
88 template <typename RoutingProfileArnT = Aws::String>
89 RoutingProfile& WithRoutingProfileArn(RoutingProfileArnT&& value) {
90 SetRoutingProfileArn(std::forward<RoutingProfileArnT>(value));
91 return *this;
92 }
94
96
99 inline const Aws::String& GetRoutingProfileId() const { return m_routingProfileId; }
100 inline bool RoutingProfileIdHasBeenSet() const { return m_routingProfileIdHasBeenSet; }
101 template <typename RoutingProfileIdT = Aws::String>
102 void SetRoutingProfileId(RoutingProfileIdT&& value) {
103 m_routingProfileIdHasBeenSet = true;
104 m_routingProfileId = std::forward<RoutingProfileIdT>(value);
105 }
106 template <typename RoutingProfileIdT = Aws::String>
107 RoutingProfile& WithRoutingProfileId(RoutingProfileIdT&& value) {
108 SetRoutingProfileId(std::forward<RoutingProfileIdT>(value));
109 return *this;
110 }
112
114
117 inline const Aws::String& GetDescription() const { return m_description; }
118 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
119 template <typename DescriptionT = Aws::String>
120 void SetDescription(DescriptionT&& value) {
121 m_descriptionHasBeenSet = true;
122 m_description = std::forward<DescriptionT>(value);
123 }
124 template <typename DescriptionT = Aws::String>
125 RoutingProfile& WithDescription(DescriptionT&& value) {
126 SetDescription(std::forward<DescriptionT>(value));
127 return *this;
128 }
130
132
136 inline const Aws::Vector<MediaConcurrency>& GetMediaConcurrencies() const { return m_mediaConcurrencies; }
137 inline bool MediaConcurrenciesHasBeenSet() const { return m_mediaConcurrenciesHasBeenSet; }
138 template <typename MediaConcurrenciesT = Aws::Vector<MediaConcurrency>>
139 void SetMediaConcurrencies(MediaConcurrenciesT&& value) {
140 m_mediaConcurrenciesHasBeenSet = true;
141 m_mediaConcurrencies = std::forward<MediaConcurrenciesT>(value);
142 }
143 template <typename MediaConcurrenciesT = Aws::Vector<MediaConcurrency>>
144 RoutingProfile& WithMediaConcurrencies(MediaConcurrenciesT&& value) {
145 SetMediaConcurrencies(std::forward<MediaConcurrenciesT>(value));
146 return *this;
147 }
148 template <typename MediaConcurrenciesT = MediaConcurrency>
149 RoutingProfile& AddMediaConcurrencies(MediaConcurrenciesT&& value) {
150 m_mediaConcurrenciesHasBeenSet = true;
151 m_mediaConcurrencies.emplace_back(std::forward<MediaConcurrenciesT>(value));
152 return *this;
153 }
155
157
160 inline const Aws::String& GetDefaultOutboundQueueId() const { return m_defaultOutboundQueueId; }
161 inline bool DefaultOutboundQueueIdHasBeenSet() const { return m_defaultOutboundQueueIdHasBeenSet; }
162 template <typename DefaultOutboundQueueIdT = Aws::String>
163 void SetDefaultOutboundQueueId(DefaultOutboundQueueIdT&& value) {
164 m_defaultOutboundQueueIdHasBeenSet = true;
165 m_defaultOutboundQueueId = std::forward<DefaultOutboundQueueIdT>(value);
166 }
167 template <typename DefaultOutboundQueueIdT = Aws::String>
168 RoutingProfile& WithDefaultOutboundQueueId(DefaultOutboundQueueIdT&& value) {
169 SetDefaultOutboundQueueId(std::forward<DefaultOutboundQueueIdT>(value));
170 return *this;
171 }
173
175
179 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
180 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
181 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
182 void SetTags(TagsT&& value) {
183 m_tagsHasBeenSet = true;
184 m_tags = std::forward<TagsT>(value);
185 }
186 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
187 RoutingProfile& WithTags(TagsT&& value) {
188 SetTags(std::forward<TagsT>(value));
189 return *this;
190 }
191 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
192 RoutingProfile& AddTags(TagsKeyT&& key, TagsValueT&& value) {
193 m_tagsHasBeenSet = true;
194 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
195 return *this;
196 }
198
200
203 inline long long GetNumberOfAssociatedQueues() const { return m_numberOfAssociatedQueues; }
204 inline bool NumberOfAssociatedQueuesHasBeenSet() const { return m_numberOfAssociatedQueuesHasBeenSet; }
205 inline void SetNumberOfAssociatedQueues(long long value) {
206 m_numberOfAssociatedQueuesHasBeenSet = true;
207 m_numberOfAssociatedQueues = value;
208 }
211 return *this;
212 }
214
216
219 inline long long GetNumberOfAssociatedManualAssignmentQueues() const { return m_numberOfAssociatedManualAssignmentQueues; }
220 inline bool NumberOfAssociatedManualAssignmentQueuesHasBeenSet() const { return m_numberOfAssociatedManualAssignmentQueuesHasBeenSet; }
221 inline void SetNumberOfAssociatedManualAssignmentQueues(long long value) {
222 m_numberOfAssociatedManualAssignmentQueuesHasBeenSet = true;
223 m_numberOfAssociatedManualAssignmentQueues = value;
224 }
227 return *this;
228 }
230
232
235 inline long long GetNumberOfAssociatedUsers() const { return m_numberOfAssociatedUsers; }
236 inline bool NumberOfAssociatedUsersHasBeenSet() const { return m_numberOfAssociatedUsersHasBeenSet; }
237 inline void SetNumberOfAssociatedUsers(long long value) {
238 m_numberOfAssociatedUsersHasBeenSet = true;
239 m_numberOfAssociatedUsers = value;
240 }
243 return *this;
244 }
246
248
253 inline AgentAvailabilityTimer GetAgentAvailabilityTimer() const { return m_agentAvailabilityTimer; }
254 inline bool AgentAvailabilityTimerHasBeenSet() const { return m_agentAvailabilityTimerHasBeenSet; }
256 m_agentAvailabilityTimerHasBeenSet = true;
257 m_agentAvailabilityTimer = value;
258 }
261 return *this;
262 }
264
266
269 inline const Aws::Utils::DateTime& GetLastModifiedTime() const { return m_lastModifiedTime; }
270 inline bool LastModifiedTimeHasBeenSet() const { return m_lastModifiedTimeHasBeenSet; }
271 template <typename LastModifiedTimeT = Aws::Utils::DateTime>
272 void SetLastModifiedTime(LastModifiedTimeT&& value) {
273 m_lastModifiedTimeHasBeenSet = true;
274 m_lastModifiedTime = std::forward<LastModifiedTimeT>(value);
275 }
276 template <typename LastModifiedTimeT = Aws::Utils::DateTime>
277 RoutingProfile& WithLastModifiedTime(LastModifiedTimeT&& value) {
278 SetLastModifiedTime(std::forward<LastModifiedTimeT>(value));
279 return *this;
280 }
282
284
287 inline const Aws::String& GetLastModifiedRegion() const { return m_lastModifiedRegion; }
288 inline bool LastModifiedRegionHasBeenSet() const { return m_lastModifiedRegionHasBeenSet; }
289 template <typename LastModifiedRegionT = Aws::String>
290 void SetLastModifiedRegion(LastModifiedRegionT&& value) {
291 m_lastModifiedRegionHasBeenSet = true;
292 m_lastModifiedRegion = std::forward<LastModifiedRegionT>(value);
293 }
294 template <typename LastModifiedRegionT = Aws::String>
295 RoutingProfile& WithLastModifiedRegion(LastModifiedRegionT&& value) {
296 SetLastModifiedRegion(std::forward<LastModifiedRegionT>(value));
297 return *this;
298 }
300
302
305 inline bool GetIsDefault() const { return m_isDefault; }
306 inline bool IsDefaultHasBeenSet() const { return m_isDefaultHasBeenSet; }
307 inline void SetIsDefault(bool value) {
308 m_isDefaultHasBeenSet = true;
309 m_isDefault = value;
310 }
311 inline RoutingProfile& WithIsDefault(bool value) {
312 SetIsDefault(value);
313 return *this;
314 }
316
318
321 inline const Aws::Vector<Aws::String>& GetAssociatedQueueIds() const { return m_associatedQueueIds; }
322 inline bool AssociatedQueueIdsHasBeenSet() const { return m_associatedQueueIdsHasBeenSet; }
323 template <typename AssociatedQueueIdsT = Aws::Vector<Aws::String>>
324 void SetAssociatedQueueIds(AssociatedQueueIdsT&& value) {
325 m_associatedQueueIdsHasBeenSet = true;
326 m_associatedQueueIds = std::forward<AssociatedQueueIdsT>(value);
327 }
328 template <typename AssociatedQueueIdsT = Aws::Vector<Aws::String>>
329 RoutingProfile& WithAssociatedQueueIds(AssociatedQueueIdsT&& value) {
330 SetAssociatedQueueIds(std::forward<AssociatedQueueIdsT>(value));
331 return *this;
332 }
333 template <typename AssociatedQueueIdsT = Aws::String>
334 RoutingProfile& AddAssociatedQueueIds(AssociatedQueueIdsT&& value) {
335 m_associatedQueueIdsHasBeenSet = true;
336 m_associatedQueueIds.emplace_back(std::forward<AssociatedQueueIdsT>(value));
337 return *this;
338 }
340
342
345 inline const Aws::Vector<Aws::String>& GetAssociatedManualAssignmentQueueIds() const { return m_associatedManualAssignmentQueueIds; }
346 inline bool AssociatedManualAssignmentQueueIdsHasBeenSet() const { return m_associatedManualAssignmentQueueIdsHasBeenSet; }
347 template <typename AssociatedManualAssignmentQueueIdsT = Aws::Vector<Aws::String>>
348 void SetAssociatedManualAssignmentQueueIds(AssociatedManualAssignmentQueueIdsT&& value) {
349 m_associatedManualAssignmentQueueIdsHasBeenSet = true;
350 m_associatedManualAssignmentQueueIds = std::forward<AssociatedManualAssignmentQueueIdsT>(value);
351 }
352 template <typename AssociatedManualAssignmentQueueIdsT = Aws::Vector<Aws::String>>
353 RoutingProfile& WithAssociatedManualAssignmentQueueIds(AssociatedManualAssignmentQueueIdsT&& value) {
354 SetAssociatedManualAssignmentQueueIds(std::forward<AssociatedManualAssignmentQueueIdsT>(value));
355 return *this;
356 }
357 template <typename AssociatedManualAssignmentQueueIdsT = Aws::String>
358 RoutingProfile& AddAssociatedManualAssignmentQueueIds(AssociatedManualAssignmentQueueIdsT&& value) {
359 m_associatedManualAssignmentQueueIdsHasBeenSet = true;
360 m_associatedManualAssignmentQueueIds.emplace_back(std::forward<AssociatedManualAssignmentQueueIdsT>(value));
361 return *this;
362 }
364 private:
365 Aws::String m_instanceId;
366
367 Aws::String m_name;
368
369 Aws::String m_routingProfileArn;
370
371 Aws::String m_routingProfileId;
372
373 Aws::String m_description;
374
375 Aws::Vector<MediaConcurrency> m_mediaConcurrencies;
376
377 Aws::String m_defaultOutboundQueueId;
378
380
381 long long m_numberOfAssociatedQueues{0};
382
383 long long m_numberOfAssociatedManualAssignmentQueues{0};
384
385 long long m_numberOfAssociatedUsers{0};
386
388
389 Aws::Utils::DateTime m_lastModifiedTime{};
390
391 Aws::String m_lastModifiedRegion;
392
393 bool m_isDefault{false};
394
395 Aws::Vector<Aws::String> m_associatedQueueIds;
396
397 Aws::Vector<Aws::String> m_associatedManualAssignmentQueueIds;
398 bool m_instanceIdHasBeenSet = false;
399 bool m_nameHasBeenSet = false;
400 bool m_routingProfileArnHasBeenSet = false;
401 bool m_routingProfileIdHasBeenSet = false;
402 bool m_descriptionHasBeenSet = false;
403 bool m_mediaConcurrenciesHasBeenSet = false;
404 bool m_defaultOutboundQueueIdHasBeenSet = false;
405 bool m_tagsHasBeenSet = false;
406 bool m_numberOfAssociatedQueuesHasBeenSet = false;
407 bool m_numberOfAssociatedManualAssignmentQueuesHasBeenSet = false;
408 bool m_numberOfAssociatedUsersHasBeenSet = false;
409 bool m_agentAvailabilityTimerHasBeenSet = false;
410 bool m_lastModifiedTimeHasBeenSet = false;
411 bool m_lastModifiedRegionHasBeenSet = false;
412 bool m_isDefaultHasBeenSet = false;
413 bool m_associatedQueueIdsHasBeenSet = false;
414 bool m_associatedManualAssignmentQueueIdsHasBeenSet = false;
415};
416
417} // namespace Model
418} // namespace Connect
419} // namespace Aws
RoutingProfile & AddTags(TagsKeyT &&key, TagsValueT &&value)
const Aws::Utils::DateTime & GetLastModifiedTime() const
const Aws::String & GetName() const
void SetRoutingProfileId(RoutingProfileIdT &&value)
bool AssociatedManualAssignmentQueueIdsHasBeenSet() const
RoutingProfile & WithTags(TagsT &&value)
RoutingProfile & WithLastModifiedRegion(LastModifiedRegionT &&value)
void SetNumberOfAssociatedManualAssignmentQueues(long long value)
const Aws::String & GetDefaultOutboundQueueId() const
RoutingProfile & WithDefaultOutboundQueueId(DefaultOutboundQueueIdT &&value)
void SetAssociatedManualAssignmentQueueIds(AssociatedManualAssignmentQueueIdsT &&value)
RoutingProfile & AddAssociatedManualAssignmentQueueIds(AssociatedManualAssignmentQueueIdsT &&value)
AgentAvailabilityTimer GetAgentAvailabilityTimer() const
AWS_CONNECT_API RoutingProfile()=default
void SetInstanceId(InstanceIdT &&value)
const Aws::String & GetRoutingProfileArn() const
void SetAgentAvailabilityTimer(AgentAvailabilityTimer value)
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetLastModifiedTime(LastModifiedTimeT &&value)
long long GetNumberOfAssociatedQueues() const
RoutingProfile & WithAssociatedManualAssignmentQueueIds(AssociatedManualAssignmentQueueIdsT &&value)
RoutingProfile & AddAssociatedQueueIds(AssociatedQueueIdsT &&value)
const Aws::String & GetDescription() const
RoutingProfile & WithDescription(DescriptionT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
RoutingProfile & WithInstanceId(InstanceIdT &&value)
const Aws::Vector< Aws::String > & GetAssociatedQueueIds() const
void SetNumberOfAssociatedUsers(long long value)
const Aws::String & GetRoutingProfileId() const
RoutingProfile & AddMediaConcurrencies(MediaConcurrenciesT &&value)
void SetRoutingProfileArn(RoutingProfileArnT &&value)
RoutingProfile & WithMediaConcurrencies(MediaConcurrenciesT &&value)
AWS_CONNECT_API RoutingProfile(Aws::Utils::Json::JsonView jsonValue)
RoutingProfile & WithRoutingProfileId(RoutingProfileIdT &&value)
bool NumberOfAssociatedManualAssignmentQueuesHasBeenSet() const
const Aws::Vector< MediaConcurrency > & GetMediaConcurrencies() const
void SetDescription(DescriptionT &&value)
RoutingProfile & WithAgentAvailabilityTimer(AgentAvailabilityTimer value)
RoutingProfile & WithNumberOfAssociatedManualAssignmentQueues(long long value)
RoutingProfile & WithAssociatedQueueIds(AssociatedQueueIdsT &&value)
RoutingProfile & WithNumberOfAssociatedUsers(long long value)
RoutingProfile & WithIsDefault(bool value)
const Aws::String & GetInstanceId() const
RoutingProfile & WithRoutingProfileArn(RoutingProfileArnT &&value)
void SetLastModifiedRegion(LastModifiedRegionT &&value)
void SetDefaultOutboundQueueId(DefaultOutboundQueueIdT &&value)
void SetAssociatedQueueIds(AssociatedQueueIdsT &&value)
const Aws::String & GetLastModifiedRegion() const
AWS_CONNECT_API RoutingProfile & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetMediaConcurrencies(MediaConcurrenciesT &&value)
RoutingProfile & WithName(NameT &&value)
RoutingProfile & WithNumberOfAssociatedQueues(long long value)
void SetNumberOfAssociatedQueues(long long value)
long long GetNumberOfAssociatedManualAssignmentQueues() const
const Aws::Vector< Aws::String > & GetAssociatedManualAssignmentQueueIds() const
RoutingProfile & WithLastModifiedTime(LastModifiedTimeT &&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
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue