AWS SDK for C++

AWS SDK for C++ Version 1.11.867

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
155 return m_manualAssignmentQueueConfigs;
156 }
157 inline bool ManualAssignmentQueueConfigsHasBeenSet() const { return m_manualAssignmentQueueConfigsHasBeenSet; }
158 template <typename ManualAssignmentQueueConfigsT = Aws::Vector<RoutingProfileManualAssignmentQueueConfig>>
159 void SetManualAssignmentQueueConfigs(ManualAssignmentQueueConfigsT&& value) {
160 m_manualAssignmentQueueConfigsHasBeenSet = true;
161 m_manualAssignmentQueueConfigs = std::forward<ManualAssignmentQueueConfigsT>(value);
162 }
163 template <typename ManualAssignmentQueueConfigsT = Aws::Vector<RoutingProfileManualAssignmentQueueConfig>>
164 CreateRoutingProfileRequest& WithManualAssignmentQueueConfigs(ManualAssignmentQueueConfigsT&& value) {
165 SetManualAssignmentQueueConfigs(std::forward<ManualAssignmentQueueConfigsT>(value));
166 return *this;
167 }
168 template <typename ManualAssignmentQueueConfigsT = RoutingProfileManualAssignmentQueueConfig>
169 CreateRoutingProfileRequest& AddManualAssignmentQueueConfigs(ManualAssignmentQueueConfigsT&& value) {
170 m_manualAssignmentQueueConfigsHasBeenSet = true;
171 m_manualAssignmentQueueConfigs.emplace_back(std::forward<ManualAssignmentQueueConfigsT>(value));
172 return *this;
173 }
175
177
181 inline const Aws::Vector<MediaConcurrency>& GetMediaConcurrencies() const { return m_mediaConcurrencies; }
182 inline bool MediaConcurrenciesHasBeenSet() const { return m_mediaConcurrenciesHasBeenSet; }
183 template <typename MediaConcurrenciesT = Aws::Vector<MediaConcurrency>>
184 void SetMediaConcurrencies(MediaConcurrenciesT&& value) {
185 m_mediaConcurrenciesHasBeenSet = true;
186 m_mediaConcurrencies = std::forward<MediaConcurrenciesT>(value);
187 }
188 template <typename MediaConcurrenciesT = Aws::Vector<MediaConcurrency>>
190 SetMediaConcurrencies(std::forward<MediaConcurrenciesT>(value));
191 return *this;
192 }
193 template <typename MediaConcurrenciesT = MediaConcurrency>
195 m_mediaConcurrenciesHasBeenSet = true;
196 m_mediaConcurrencies.emplace_back(std::forward<MediaConcurrenciesT>(value));
197 return *this;
198 }
200
202
206 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
207 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
208 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
209 void SetTags(TagsT&& value) {
210 m_tagsHasBeenSet = true;
211 m_tags = std::forward<TagsT>(value);
212 }
213 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
215 SetTags(std::forward<TagsT>(value));
216 return *this;
217 }
218 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
219 CreateRoutingProfileRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
220 m_tagsHasBeenSet = true;
221 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
222 return *this;
223 }
225
227
232 inline AgentAvailabilityTimer GetAgentAvailabilityTimer() const { return m_agentAvailabilityTimer; }
233 inline bool AgentAvailabilityTimerHasBeenSet() const { return m_agentAvailabilityTimerHasBeenSet; }
235 m_agentAvailabilityTimerHasBeenSet = true;
236 m_agentAvailabilityTimer = value;
237 }
240 return *this;
241 }
243 private:
244 Aws::String m_instanceId;
245
246 Aws::String m_name;
247
248 Aws::String m_description;
249
250 Aws::String m_defaultOutboundQueueId;
251
253
254 Aws::Vector<RoutingProfileManualAssignmentQueueConfig> m_manualAssignmentQueueConfigs;
255
256 Aws::Vector<MediaConcurrency> m_mediaConcurrencies;
257
259
261 bool m_instanceIdHasBeenSet = false;
262 bool m_nameHasBeenSet = false;
263 bool m_descriptionHasBeenSet = false;
264 bool m_defaultOutboundQueueIdHasBeenSet = false;
265 bool m_queueConfigsHasBeenSet = false;
266 bool m_manualAssignmentQueueConfigsHasBeenSet = false;
267 bool m_mediaConcurrenciesHasBeenSet = false;
268 bool m_tagsHasBeenSet = false;
269 bool m_agentAvailabilityTimerHasBeenSet = false;
270};
271
272} // namespace Model
273} // namespace Connect
274} // 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