AWS SDK for C++

AWS SDK for C++ Version 1.11.759

Loading...
Searching...
No Matches
UserData.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/connect/model/AgentContactReference.h>
9#include <aws/connect/model/AgentStatusReference.h>
10#include <aws/connect/model/Channel.h>
11#include <aws/connect/model/HierarchyPathReference.h>
12#include <aws/connect/model/RoutingProfileReference.h>
13#include <aws/connect/model/UserReference.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/core/utils/memory/stl/AWSString.h>
16#include <aws/core/utils/memory/stl/AWSVector.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Json {
23class JsonValue;
24class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace Connect {
28namespace Model {
29
35class UserData {
36 public:
37 AWS_CONNECT_API UserData() = default;
38 AWS_CONNECT_API UserData(Aws::Utils::Json::JsonView jsonValue);
39 AWS_CONNECT_API UserData& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
47 inline const UserReference& GetUser() const { return m_user; }
48 inline bool UserHasBeenSet() const { return m_userHasBeenSet; }
49 template <typename UserT = UserReference>
50 void SetUser(UserT&& value) {
51 m_userHasBeenSet = true;
52 m_user = std::forward<UserT>(value);
53 }
54 template <typename UserT = UserReference>
55 UserData& WithUser(UserT&& value) {
56 SetUser(std::forward<UserT>(value));
57 return *this;
58 }
60
62
65 inline const RoutingProfileReference& GetRoutingProfile() const { return m_routingProfile; }
66 inline bool RoutingProfileHasBeenSet() const { return m_routingProfileHasBeenSet; }
67 template <typename RoutingProfileT = RoutingProfileReference>
68 void SetRoutingProfile(RoutingProfileT&& value) {
69 m_routingProfileHasBeenSet = true;
70 m_routingProfile = std::forward<RoutingProfileT>(value);
71 }
72 template <typename RoutingProfileT = RoutingProfileReference>
73 UserData& WithRoutingProfile(RoutingProfileT&& value) {
74 SetRoutingProfile(std::forward<RoutingProfileT>(value));
75 return *this;
76 }
78
80
84 inline const HierarchyPathReference& GetHierarchyPath() const { return m_hierarchyPath; }
85 inline bool HierarchyPathHasBeenSet() const { return m_hierarchyPathHasBeenSet; }
86 template <typename HierarchyPathT = HierarchyPathReference>
87 void SetHierarchyPath(HierarchyPathT&& value) {
88 m_hierarchyPathHasBeenSet = true;
89 m_hierarchyPath = std::forward<HierarchyPathT>(value);
90 }
91 template <typename HierarchyPathT = HierarchyPathReference>
92 UserData& WithHierarchyPath(HierarchyPathT&& value) {
93 SetHierarchyPath(std::forward<HierarchyPathT>(value));
94 return *this;
95 }
97
99
104 inline const AgentStatusReference& GetStatus() const { return m_status; }
105 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
106 template <typename StatusT = AgentStatusReference>
107 void SetStatus(StatusT&& value) {
108 m_statusHasBeenSet = true;
109 m_status = std::forward<StatusT>(value);
110 }
111 template <typename StatusT = AgentStatusReference>
112 UserData& WithStatus(StatusT&& value) {
113 SetStatus(std::forward<StatusT>(value));
114 return *this;
115 }
117
119
123 inline const Aws::Map<Channel, int>& GetAvailableSlotsByChannel() const { return m_availableSlotsByChannel; }
124 inline bool AvailableSlotsByChannelHasBeenSet() const { return m_availableSlotsByChannelHasBeenSet; }
125 template <typename AvailableSlotsByChannelT = Aws::Map<Channel, int>>
126 void SetAvailableSlotsByChannel(AvailableSlotsByChannelT&& value) {
127 m_availableSlotsByChannelHasBeenSet = true;
128 m_availableSlotsByChannel = std::forward<AvailableSlotsByChannelT>(value);
129 }
130 template <typename AvailableSlotsByChannelT = Aws::Map<Channel, int>>
131 UserData& WithAvailableSlotsByChannel(AvailableSlotsByChannelT&& value) {
132 SetAvailableSlotsByChannel(std::forward<AvailableSlotsByChannelT>(value));
133 return *this;
134 }
136 m_availableSlotsByChannelHasBeenSet = true;
137 m_availableSlotsByChannel.emplace(key, value);
138 return *this;
139 }
141
143
149 inline const Aws::Map<Channel, int>& GetMaxSlotsByChannel() const { return m_maxSlotsByChannel; }
150 inline bool MaxSlotsByChannelHasBeenSet() const { return m_maxSlotsByChannelHasBeenSet; }
151 template <typename MaxSlotsByChannelT = Aws::Map<Channel, int>>
152 void SetMaxSlotsByChannel(MaxSlotsByChannelT&& value) {
153 m_maxSlotsByChannelHasBeenSet = true;
154 m_maxSlotsByChannel = std::forward<MaxSlotsByChannelT>(value);
155 }
156 template <typename MaxSlotsByChannelT = Aws::Map<Channel, int>>
157 UserData& WithMaxSlotsByChannel(MaxSlotsByChannelT&& value) {
158 SetMaxSlotsByChannel(std::forward<MaxSlotsByChannelT>(value));
159 return *this;
160 }
161 inline UserData& AddMaxSlotsByChannel(Channel key, int value) {
162 m_maxSlotsByChannelHasBeenSet = true;
163 m_maxSlotsByChannel.emplace(key, value);
164 return *this;
165 }
167
169
173 inline const Aws::Map<Channel, int>& GetActiveSlotsByChannel() const { return m_activeSlotsByChannel; }
174 inline bool ActiveSlotsByChannelHasBeenSet() const { return m_activeSlotsByChannelHasBeenSet; }
175 template <typename ActiveSlotsByChannelT = Aws::Map<Channel, int>>
176 void SetActiveSlotsByChannel(ActiveSlotsByChannelT&& value) {
177 m_activeSlotsByChannelHasBeenSet = true;
178 m_activeSlotsByChannel = std::forward<ActiveSlotsByChannelT>(value);
179 }
180 template <typename ActiveSlotsByChannelT = Aws::Map<Channel, int>>
181 UserData& WithActiveSlotsByChannel(ActiveSlotsByChannelT&& value) {
182 SetActiveSlotsByChannel(std::forward<ActiveSlotsByChannelT>(value));
183 return *this;
184 }
185 inline UserData& AddActiveSlotsByChannel(Channel key, int value) {
186 m_activeSlotsByChannelHasBeenSet = true;
187 m_activeSlotsByChannel.emplace(key, value);
188 return *this;
189 }
191
193
196 inline const Aws::Vector<AgentContactReference>& GetContacts() const { return m_contacts; }
197 inline bool ContactsHasBeenSet() const { return m_contactsHasBeenSet; }
198 template <typename ContactsT = Aws::Vector<AgentContactReference>>
199 void SetContacts(ContactsT&& value) {
200 m_contactsHasBeenSet = true;
201 m_contacts = std::forward<ContactsT>(value);
202 }
203 template <typename ContactsT = Aws::Vector<AgentContactReference>>
204 UserData& WithContacts(ContactsT&& value) {
205 SetContacts(std::forward<ContactsT>(value));
206 return *this;
207 }
208 template <typename ContactsT = AgentContactReference>
209 UserData& AddContacts(ContactsT&& value) {
210 m_contactsHasBeenSet = true;
211 m_contacts.emplace_back(std::forward<ContactsT>(value));
212 return *this;
213 }
215
217
220 inline const Aws::String& GetNextStatus() const { return m_nextStatus; }
221 inline bool NextStatusHasBeenSet() const { return m_nextStatusHasBeenSet; }
222 template <typename NextStatusT = Aws::String>
223 void SetNextStatus(NextStatusT&& value) {
224 m_nextStatusHasBeenSet = true;
225 m_nextStatus = std::forward<NextStatusT>(value);
226 }
227 template <typename NextStatusT = Aws::String>
228 UserData& WithNextStatus(NextStatusT&& value) {
229 SetNextStatus(std::forward<NextStatusT>(value));
230 return *this;
231 }
233 private:
234 UserReference m_user;
235
236 RoutingProfileReference m_routingProfile;
237
238 HierarchyPathReference m_hierarchyPath;
239
240 AgentStatusReference m_status;
241
242 Aws::Map<Channel, int> m_availableSlotsByChannel;
243
244 Aws::Map<Channel, int> m_maxSlotsByChannel;
245
246 Aws::Map<Channel, int> m_activeSlotsByChannel;
247
249
250 Aws::String m_nextStatus;
251 bool m_userHasBeenSet = false;
252 bool m_routingProfileHasBeenSet = false;
253 bool m_hierarchyPathHasBeenSet = false;
254 bool m_statusHasBeenSet = false;
255 bool m_availableSlotsByChannelHasBeenSet = false;
256 bool m_maxSlotsByChannelHasBeenSet = false;
257 bool m_activeSlotsByChannelHasBeenSet = false;
258 bool m_contactsHasBeenSet = false;
259 bool m_nextStatusHasBeenSet = false;
260};
261
262} // namespace Model
263} // namespace Connect
264} // namespace Aws
UserData & WithMaxSlotsByChannel(MaxSlotsByChannelT &&value)
Definition UserData.h:157
AWS_CONNECT_API UserData(Aws::Utils::Json::JsonView jsonValue)
void SetAvailableSlotsByChannel(AvailableSlotsByChannelT &&value)
Definition UserData.h:126
const RoutingProfileReference & GetRoutingProfile() const
Definition UserData.h:65
void SetNextStatus(NextStatusT &&value)
Definition UserData.h:223
UserData & AddAvailableSlotsByChannel(Channel key, int value)
Definition UserData.h:135
void SetRoutingProfile(RoutingProfileT &&value)
Definition UserData.h:68
UserData & WithContacts(ContactsT &&value)
Definition UserData.h:204
void SetActiveSlotsByChannel(ActiveSlotsByChannelT &&value)
Definition UserData.h:176
const AgentStatusReference & GetStatus() const
Definition UserData.h:104
bool HierarchyPathHasBeenSet() const
Definition UserData.h:85
UserData & WithStatus(StatusT &&value)
Definition UserData.h:112
UserData & WithUser(UserT &&value)
Definition UserData.h:55
const Aws::Map< Channel, int > & GetAvailableSlotsByChannel() const
Definition UserData.h:123
void SetMaxSlotsByChannel(MaxSlotsByChannelT &&value)
Definition UserData.h:152
UserData & WithRoutingProfile(RoutingProfileT &&value)
Definition UserData.h:73
UserData & AddContacts(ContactsT &&value)
Definition UserData.h:209
const HierarchyPathReference & GetHierarchyPath() const
Definition UserData.h:84
const Aws::Map< Channel, int > & GetActiveSlotsByChannel() const
Definition UserData.h:173
void SetContacts(ContactsT &&value)
Definition UserData.h:199
UserData & WithHierarchyPath(HierarchyPathT &&value)
Definition UserData.h:92
const Aws::Map< Channel, int > & GetMaxSlotsByChannel() const
Definition UserData.h:149
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
bool NextStatusHasBeenSet() const
Definition UserData.h:221
void SetUser(UserT &&value)
Definition UserData.h:50
UserData & WithAvailableSlotsByChannel(AvailableSlotsByChannelT &&value)
Definition UserData.h:131
bool RoutingProfileHasBeenSet() const
Definition UserData.h:66
UserData & AddActiveSlotsByChannel(Channel key, int value)
Definition UserData.h:185
const Aws::Vector< AgentContactReference > & GetContacts() const
Definition UserData.h:196
UserData & WithNextStatus(NextStatusT &&value)
Definition UserData.h:228
bool AvailableSlotsByChannelHasBeenSet() const
Definition UserData.h:124
bool ActiveSlotsByChannelHasBeenSet() const
Definition UserData.h:174
const Aws::String & GetNextStatus() const
Definition UserData.h:220
AWS_CONNECT_API UserData()=default
UserData & WithActiveSlotsByChannel(ActiveSlotsByChannelT &&value)
Definition UserData.h:181
const UserReference & GetUser() const
Definition UserData.h:47
bool ContactsHasBeenSet() const
Definition UserData.h:197
UserData & AddMaxSlotsByChannel(Channel key, int value)
Definition UserData.h:161
void SetHierarchyPath(HierarchyPathT &&value)
Definition UserData.h:87
void SetStatus(StatusT &&value)
Definition UserData.h:107
AWS_CONNECT_API UserData & operator=(Aws::Utils::Json::JsonView jsonValue)
bool MaxSlotsByChannelHasBeenSet() const
Definition UserData.h:150
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