AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
CreateRoutingProfileRequest.h
1
6#pragma once
7#include <aws/connect/ConnectRequest.h>
8#include <aws/connect/Connect_EXPORTS.h>
9#include <aws/connect/model/AgentAvailabilityTimer.h>
10#include <aws/connect/model/MediaConcurrency.h>
11#include <aws/connect/model/RoutingProfileManualAssignmentQueueConfig.h>
12#include <aws/connect/model/RoutingProfileQueueConfig.h>
13#include <aws/core/utils/memory/stl/AWSMap.h>
14#include <aws/core/utils/memory/stl/AWSString.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Connect {
21namespace Model {
22
26 public:
27 AWS_CONNECT_API CreateRoutingProfileRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "CreateRoutingProfile"; }
34
35 AWS_CONNECT_API Aws::String SerializePayload() const override;
36
38
43 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
44 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
45 template <typename InstanceIdT = Aws::String>
46 void SetInstanceId(InstanceIdT&& value) {
47 m_instanceIdHasBeenSet = true;
48 m_instanceId = std::forward<InstanceIdT>(value);
49 }
50 template <typename InstanceIdT = Aws::String>
52 SetInstanceId(std::forward<InstanceIdT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetName() const { return m_name; }
62 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
63 template <typename NameT = Aws::String>
64 void SetName(NameT&& value) {
65 m_nameHasBeenSet = true;
66 m_name = std::forward<NameT>(value);
67 }
68 template <typename NameT = Aws::String>
70 SetName(std::forward<NameT>(value));
71 return *this;
72 }
74
76
79 inline const Aws::String& GetDescription() const { return m_description; }
80 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
81 template <typename DescriptionT = Aws::String>
82 void SetDescription(DescriptionT&& value) {
83 m_descriptionHasBeenSet = true;
84 m_description = std::forward<DescriptionT>(value);
85 }
86 template <typename DescriptionT = Aws::String>
88 SetDescription(std::forward<DescriptionT>(value));
89 return *this;
90 }
92
94
97 inline const Aws::String& GetDefaultOutboundQueueId() const { return m_defaultOutboundQueueId; }
98 inline bool DefaultOutboundQueueIdHasBeenSet() const { return m_defaultOutboundQueueIdHasBeenSet; }
99 template <typename DefaultOutboundQueueIdT = Aws::String>
100 void SetDefaultOutboundQueueId(DefaultOutboundQueueIdT&& value) {
101 m_defaultOutboundQueueIdHasBeenSet = true;
102 m_defaultOutboundQueueId = std::forward<DefaultOutboundQueueIdT>(value);
103 }
104 template <typename DefaultOutboundQueueIdT = Aws::String>
105 CreateRoutingProfileRequest& WithDefaultOutboundQueueId(DefaultOutboundQueueIdT&& value) {
106 SetDefaultOutboundQueueId(std::forward<DefaultOutboundQueueIdT>(value));
107 return *this;
108 }
110
112
122 inline const Aws::Vector<RoutingProfileQueueConfig>& GetQueueConfigs() const { return m_queueConfigs; }
123 inline bool QueueConfigsHasBeenSet() const { return m_queueConfigsHasBeenSet; }
124 template <typename QueueConfigsT = Aws::Vector<RoutingProfileQueueConfig>>
125 void SetQueueConfigs(QueueConfigsT&& value) {
126 m_queueConfigsHasBeenSet = true;
127 m_queueConfigs = std::forward<QueueConfigsT>(value);
128 }
129 template <typename QueueConfigsT = Aws::Vector<RoutingProfileQueueConfig>>
131 SetQueueConfigs(std::forward<QueueConfigsT>(value));
132 return *this;
133 }
134 template <typename QueueConfigsT = RoutingProfileQueueConfig>
136 m_queueConfigsHasBeenSet = true;
137 m_queueConfigs.emplace_back(std::forward<QueueConfigsT>(value));
138 return *this;
139 }
141
143
154 return m_manualAssignmentQueueConfigs;
155 }
156 inline bool ManualAssignmentQueueConfigsHasBeenSet() const { return m_manualAssignmentQueueConfigsHasBeenSet; }
157 template <typename ManualAssignmentQueueConfigsT = Aws::Vector<RoutingProfileManualAssignmentQueueConfig>>
158 void SetManualAssignmentQueueConfigs(ManualAssignmentQueueConfigsT&& value) {
159 m_manualAssignmentQueueConfigsHasBeenSet = true;
160 m_manualAssignmentQueueConfigs = std::forward<ManualAssignmentQueueConfigsT>(value);
161 }
162 template <typename ManualAssignmentQueueConfigsT = Aws::Vector<RoutingProfileManualAssignmentQueueConfig>>
163 CreateRoutingProfileRequest& WithManualAssignmentQueueConfigs(ManualAssignmentQueueConfigsT&& value) {
164 SetManualAssignmentQueueConfigs(std::forward<ManualAssignmentQueueConfigsT>(value));
165 return *this;
166 }
167 template <typename ManualAssignmentQueueConfigsT = RoutingProfileManualAssignmentQueueConfig>
168 CreateRoutingProfileRequest& AddManualAssignmentQueueConfigs(ManualAssignmentQueueConfigsT&& value) {
169 m_manualAssignmentQueueConfigsHasBeenSet = true;
170 m_manualAssignmentQueueConfigs.emplace_back(std::forward<ManualAssignmentQueueConfigsT>(value));
171 return *this;
172 }
174
176
180 inline const Aws::Vector<MediaConcurrency>& GetMediaConcurrencies() const { return m_mediaConcurrencies; }
181 inline bool MediaConcurrenciesHasBeenSet() const { return m_mediaConcurrenciesHasBeenSet; }
182 template <typename MediaConcurrenciesT = Aws::Vector<MediaConcurrency>>
183 void SetMediaConcurrencies(MediaConcurrenciesT&& value) {
184 m_mediaConcurrenciesHasBeenSet = true;
185 m_mediaConcurrencies = std::forward<MediaConcurrenciesT>(value);
186 }
187 template <typename MediaConcurrenciesT = Aws::Vector<MediaConcurrency>>
189 SetMediaConcurrencies(std::forward<MediaConcurrenciesT>(value));
190 return *this;
191 }
192 template <typename MediaConcurrenciesT = MediaConcurrency>
194 m_mediaConcurrenciesHasBeenSet = true;
195 m_mediaConcurrencies.emplace_back(std::forward<MediaConcurrenciesT>(value));
196 return *this;
197 }
199
201
205 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
206 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
207 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
208 void SetTags(TagsT&& value) {
209 m_tagsHasBeenSet = true;
210 m_tags = std::forward<TagsT>(value);
211 }
212 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
214 SetTags(std::forward<TagsT>(value));
215 return *this;
216 }
217 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
218 CreateRoutingProfileRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
219 m_tagsHasBeenSet = true;
220 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
221 return *this;
222 }
224
226
231 inline AgentAvailabilityTimer GetAgentAvailabilityTimer() const { return m_agentAvailabilityTimer; }
232 inline bool AgentAvailabilityTimerHasBeenSet() const { return m_agentAvailabilityTimerHasBeenSet; }
234 m_agentAvailabilityTimerHasBeenSet = true;
235 m_agentAvailabilityTimer = value;
236 }
239 return *this;
240 }
242 private:
243 Aws::String m_instanceId;
244
245 Aws::String m_name;
246
247 Aws::String m_description;
248
249 Aws::String m_defaultOutboundQueueId;
250
252
253 Aws::Vector<RoutingProfileManualAssignmentQueueConfig> m_manualAssignmentQueueConfigs;
254
255 Aws::Vector<MediaConcurrency> m_mediaConcurrencies;
256
258
260 bool m_instanceIdHasBeenSet = false;
261 bool m_nameHasBeenSet = false;
262 bool m_descriptionHasBeenSet = false;
263 bool m_defaultOutboundQueueIdHasBeenSet = false;
264 bool m_queueConfigsHasBeenSet = false;
265 bool m_manualAssignmentQueueConfigsHasBeenSet = false;
266 bool m_mediaConcurrenciesHasBeenSet = false;
267 bool m_tagsHasBeenSet = false;
268 bool m_agentAvailabilityTimerHasBeenSet = false;
269};
270
271} // namespace Model
272} // namespace Connect
273} // namespace Aws
CreateRoutingProfileRequest & WithTags(TagsT &&value)
CreateRoutingProfileRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateRoutingProfileRequest & WithAgentAvailabilityTimer(AgentAvailabilityTimer value)
void SetManualAssignmentQueueConfigs(ManualAssignmentQueueConfigsT &&value)
CreateRoutingProfileRequest & AddMediaConcurrencies(MediaConcurrenciesT &&value)
void SetDefaultOutboundQueueId(DefaultOutboundQueueIdT &&value)
const Aws::Vector< RoutingProfileManualAssignmentQueueConfig > & GetManualAssignmentQueueConfigs() const
virtual const char * GetServiceRequestName() const override
CreateRoutingProfileRequest & WithDefaultOutboundQueueId(DefaultOutboundQueueIdT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateRoutingProfileRequest & WithQueueConfigs(QueueConfigsT &&value)
const Aws::Vector< RoutingProfileQueueConfig > & GetQueueConfigs() const
CreateRoutingProfileRequest & AddManualAssignmentQueueConfigs(ManualAssignmentQueueConfigsT &&value)
AWS_CONNECT_API CreateRoutingProfileRequest()=default
AWS_CONNECT_API Aws::String SerializePayload() const override
CreateRoutingProfileRequest & WithMediaConcurrencies(MediaConcurrenciesT &&value)
const Aws::Vector< MediaConcurrency > & GetMediaConcurrencies() const
CreateRoutingProfileRequest & WithManualAssignmentQueueConfigs(ManualAssignmentQueueConfigsT &&value)
CreateRoutingProfileRequest & WithInstanceId(InstanceIdT &&value)
CreateRoutingProfileRequest & WithName(NameT &&value)
CreateRoutingProfileRequest & AddQueueConfigs(QueueConfigsT &&value)
CreateRoutingProfileRequest & WithDescription(DescriptionT &&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