AWS SDK for C++

AWS SDK for C++ Version 1.11.848

Loading...
Searching...
No Matches
SearchCriteria.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/connect/model/AgentHierarchyGroups.h>
9#include <aws/connect/model/AiAgentsCriteria.h>
10#include <aws/connect/model/Channel.h>
11#include <aws/connect/model/ContactAnalysis.h>
12#include <aws/connect/model/ContactInitiationMethod.h>
13#include <aws/connect/model/ControlPlaneTagFilter.h>
14#include <aws/connect/model/NameCriteria.h>
15#include <aws/connect/model/SearchContactsAdditionalTimeRange.h>
16#include <aws/connect/model/SearchableContactAttributes.h>
17#include <aws/connect/model/SearchableRoutingCriteria.h>
18#include <aws/connect/model/SearchableSegmentAttributes.h>
19#include <aws/core/utils/memory/stl/AWSString.h>
20#include <aws/core/utils/memory/stl/AWSVector.h>
21
22#include <utility>
23
24namespace Aws {
25namespace Utils {
26namespace Json {
27class JsonValue;
28class JsonView;
29} // namespace Json
30} // namespace Utils
31namespace Connect {
32namespace Model {
33
41 public:
42 AWS_CONNECT_API SearchCriteria() = default;
43 AWS_CONNECT_API SearchCriteria(Aws::Utils::Json::JsonView jsonValue);
45 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
46
48
51 inline const NameCriteria& GetName() const { return m_name; }
52 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
53 template <typename NameT = NameCriteria>
54 void SetName(NameT&& value) {
55 m_nameHasBeenSet = true;
56 m_name = std::forward<NameT>(value);
57 }
58 template <typename NameT = NameCriteria>
59 SearchCriteria& WithName(NameT&& value) {
60 SetName(std::forward<NameT>(value));
61 return *this;
62 }
64
66
69 inline const Aws::Vector<Aws::String>& GetAgentIds() const { return m_agentIds; }
70 inline bool AgentIdsHasBeenSet() const { return m_agentIdsHasBeenSet; }
71 template <typename AgentIdsT = Aws::Vector<Aws::String>>
72 void SetAgentIds(AgentIdsT&& value) {
73 m_agentIdsHasBeenSet = true;
74 m_agentIds = std::forward<AgentIdsT>(value);
75 }
76 template <typename AgentIdsT = Aws::Vector<Aws::String>>
77 SearchCriteria& WithAgentIds(AgentIdsT&& value) {
78 SetAgentIds(std::forward<AgentIdsT>(value));
79 return *this;
80 }
81 template <typename AgentIdsT = Aws::String>
82 SearchCriteria& AddAgentIds(AgentIdsT&& value) {
83 m_agentIdsHasBeenSet = true;
84 m_agentIds.emplace_back(std::forward<AgentIdsT>(value));
85 return *this;
86 }
88
90
94 inline const AgentHierarchyGroups& GetAgentHierarchyGroups() const { return m_agentHierarchyGroups; }
95 inline bool AgentHierarchyGroupsHasBeenSet() const { return m_agentHierarchyGroupsHasBeenSet; }
96 template <typename AgentHierarchyGroupsT = AgentHierarchyGroups>
97 void SetAgentHierarchyGroups(AgentHierarchyGroupsT&& value) {
98 m_agentHierarchyGroupsHasBeenSet = true;
99 m_agentHierarchyGroups = std::forward<AgentHierarchyGroupsT>(value);
100 }
101 template <typename AgentHierarchyGroupsT = AgentHierarchyGroups>
102 SearchCriteria& WithAgentHierarchyGroups(AgentHierarchyGroupsT&& value) {
103 SetAgentHierarchyGroups(std::forward<AgentHierarchyGroupsT>(value));
104 return *this;
105 }
107
109
112 inline const Aws::Vector<Channel>& GetChannels() const { return m_channels; }
113 inline bool ChannelsHasBeenSet() const { return m_channelsHasBeenSet; }
114 template <typename ChannelsT = Aws::Vector<Channel>>
115 void SetChannels(ChannelsT&& value) {
116 m_channelsHasBeenSet = true;
117 m_channels = std::forward<ChannelsT>(value);
118 }
119 template <typename ChannelsT = Aws::Vector<Channel>>
120 SearchCriteria& WithChannels(ChannelsT&& value) {
121 SetChannels(std::forward<ChannelsT>(value));
122 return *this;
123 }
125 m_channelsHasBeenSet = true;
126 m_channels.push_back(value);
127 return *this;
128 }
130
132
136 inline const ContactAnalysis& GetContactAnalysis() const { return m_contactAnalysis; }
137 inline bool ContactAnalysisHasBeenSet() const { return m_contactAnalysisHasBeenSet; }
138 template <typename ContactAnalysisT = ContactAnalysis>
139 void SetContactAnalysis(ContactAnalysisT&& value) {
140 m_contactAnalysisHasBeenSet = true;
141 m_contactAnalysis = std::forward<ContactAnalysisT>(value);
142 }
143 template <typename ContactAnalysisT = ContactAnalysis>
144 SearchCriteria& WithContactAnalysis(ContactAnalysisT&& value) {
145 SetContactAnalysis(std::forward<ContactAnalysisT>(value));
146 return *this;
147 }
149
151
154 inline const Aws::Vector<ContactInitiationMethod>& GetInitiationMethods() const { return m_initiationMethods; }
155 inline bool InitiationMethodsHasBeenSet() const { return m_initiationMethodsHasBeenSet; }
156 template <typename InitiationMethodsT = Aws::Vector<ContactInitiationMethod>>
157 void SetInitiationMethods(InitiationMethodsT&& value) {
158 m_initiationMethodsHasBeenSet = true;
159 m_initiationMethods = std::forward<InitiationMethodsT>(value);
160 }
161 template <typename InitiationMethodsT = Aws::Vector<ContactInitiationMethod>>
162 SearchCriteria& WithInitiationMethods(InitiationMethodsT&& value) {
163 SetInitiationMethods(std::forward<InitiationMethodsT>(value));
164 return *this;
165 }
167 m_initiationMethodsHasBeenSet = true;
168 m_initiationMethods.push_back(value);
169 return *this;
170 }
172
174
177 inline const Aws::Vector<Aws::String>& GetQueueIds() const { return m_queueIds; }
178 inline bool QueueIdsHasBeenSet() const { return m_queueIdsHasBeenSet; }
179 template <typename QueueIdsT = Aws::Vector<Aws::String>>
180 void SetQueueIds(QueueIdsT&& value) {
181 m_queueIdsHasBeenSet = true;
182 m_queueIds = std::forward<QueueIdsT>(value);
183 }
184 template <typename QueueIdsT = Aws::Vector<Aws::String>>
185 SearchCriteria& WithQueueIds(QueueIdsT&& value) {
186 SetQueueIds(std::forward<QueueIdsT>(value));
187 return *this;
188 }
189 template <typename QueueIdsT = Aws::String>
190 SearchCriteria& AddQueueIds(QueueIdsT&& value) {
191 m_queueIdsHasBeenSet = true;
192 m_queueIds.emplace_back(std::forward<QueueIdsT>(value));
193 return *this;
194 }
196
198
201 inline const SearchableRoutingCriteria& GetRoutingCriteria() const { return m_routingCriteria; }
202 inline bool RoutingCriteriaHasBeenSet() const { return m_routingCriteriaHasBeenSet; }
203 template <typename RoutingCriteriaT = SearchableRoutingCriteria>
204 void SetRoutingCriteria(RoutingCriteriaT&& value) {
205 m_routingCriteriaHasBeenSet = true;
206 m_routingCriteria = std::forward<RoutingCriteriaT>(value);
207 }
208 template <typename RoutingCriteriaT = SearchableRoutingCriteria>
209 SearchCriteria& WithRoutingCriteria(RoutingCriteriaT&& value) {
210 SetRoutingCriteria(std::forward<RoutingCriteriaT>(value));
211 return *this;
212 }
214
216
219 inline const SearchContactsAdditionalTimeRange& GetAdditionalTimeRange() const { return m_additionalTimeRange; }
220 inline bool AdditionalTimeRangeHasBeenSet() const { return m_additionalTimeRangeHasBeenSet; }
221 template <typename AdditionalTimeRangeT = SearchContactsAdditionalTimeRange>
222 void SetAdditionalTimeRange(AdditionalTimeRangeT&& value) {
223 m_additionalTimeRangeHasBeenSet = true;
224 m_additionalTimeRange = std::forward<AdditionalTimeRangeT>(value);
225 }
226 template <typename AdditionalTimeRangeT = SearchContactsAdditionalTimeRange>
227 SearchCriteria& WithAdditionalTimeRange(AdditionalTimeRangeT&& value) {
228 SetAdditionalTimeRange(std::forward<AdditionalTimeRangeT>(value));
229 return *this;
230 }
232
234
245 inline const SearchableContactAttributes& GetSearchableContactAttributes() const { return m_searchableContactAttributes; }
246 inline bool SearchableContactAttributesHasBeenSet() const { return m_searchableContactAttributesHasBeenSet; }
247 template <typename SearchableContactAttributesT = SearchableContactAttributes>
248 void SetSearchableContactAttributes(SearchableContactAttributesT&& value) {
249 m_searchableContactAttributesHasBeenSet = true;
250 m_searchableContactAttributes = std::forward<SearchableContactAttributesT>(value);
251 }
252 template <typename SearchableContactAttributesT = SearchableContactAttributes>
253 SearchCriteria& WithSearchableContactAttributes(SearchableContactAttributesT&& value) {
254 SetSearchableContactAttributes(std::forward<SearchableContactAttributesT>(value));
255 return *this;
256 }
258
260
263 inline const SearchableSegmentAttributes& GetSearchableSegmentAttributes() const { return m_searchableSegmentAttributes; }
264 inline bool SearchableSegmentAttributesHasBeenSet() const { return m_searchableSegmentAttributesHasBeenSet; }
265 template <typename SearchableSegmentAttributesT = SearchableSegmentAttributes>
266 void SetSearchableSegmentAttributes(SearchableSegmentAttributesT&& value) {
267 m_searchableSegmentAttributesHasBeenSet = true;
268 m_searchableSegmentAttributes = std::forward<SearchableSegmentAttributesT>(value);
269 }
270 template <typename SearchableSegmentAttributesT = SearchableSegmentAttributes>
271 SearchCriteria& WithSearchableSegmentAttributes(SearchableSegmentAttributesT&& value) {
272 SetSearchableSegmentAttributes(std::forward<SearchableSegmentAttributesT>(value));
273 return *this;
274 }
276
278
281 inline const Aws::Vector<Aws::String>& GetActiveRegions() const { return m_activeRegions; }
282 inline bool ActiveRegionsHasBeenSet() const { return m_activeRegionsHasBeenSet; }
283 template <typename ActiveRegionsT = Aws::Vector<Aws::String>>
284 void SetActiveRegions(ActiveRegionsT&& value) {
285 m_activeRegionsHasBeenSet = true;
286 m_activeRegions = std::forward<ActiveRegionsT>(value);
287 }
288 template <typename ActiveRegionsT = Aws::Vector<Aws::String>>
289 SearchCriteria& WithActiveRegions(ActiveRegionsT&& value) {
290 SetActiveRegions(std::forward<ActiveRegionsT>(value));
291 return *this;
292 }
293 template <typename ActiveRegionsT = Aws::String>
294 SearchCriteria& AddActiveRegions(ActiveRegionsT&& value) {
295 m_activeRegionsHasBeenSet = true;
296 m_activeRegions.emplace_back(std::forward<ActiveRegionsT>(value));
297 return *this;
298 }
300
302
303 inline const ControlPlaneTagFilter& GetContactTags() const { return m_contactTags; }
304 inline bool ContactTagsHasBeenSet() const { return m_contactTagsHasBeenSet; }
305 template <typename ContactTagsT = ControlPlaneTagFilter>
306 void SetContactTags(ContactTagsT&& value) {
307 m_contactTagsHasBeenSet = true;
308 m_contactTags = std::forward<ContactTagsT>(value);
309 }
310 template <typename ContactTagsT = ControlPlaneTagFilter>
311 SearchCriteria& WithContactTags(ContactTagsT&& value) {
312 SetContactTags(std::forward<ContactTagsT>(value));
313 return *this;
314 }
316
318
321 inline const AiAgentsCriteria& GetAiAgents() const { return m_aiAgents; }
322 inline bool AiAgentsHasBeenSet() const { return m_aiAgentsHasBeenSet; }
323 template <typename AiAgentsT = AiAgentsCriteria>
324 void SetAiAgents(AiAgentsT&& value) {
325 m_aiAgentsHasBeenSet = true;
326 m_aiAgents = std::forward<AiAgentsT>(value);
327 }
328 template <typename AiAgentsT = AiAgentsCriteria>
329 SearchCriteria& WithAiAgents(AiAgentsT&& value) {
330 SetAiAgents(std::forward<AiAgentsT>(value));
331 return *this;
332 }
334 private:
335 NameCriteria m_name;
336
337 Aws::Vector<Aws::String> m_agentIds;
338
339 AgentHierarchyGroups m_agentHierarchyGroups;
340
341 Aws::Vector<Channel> m_channels;
342
343 ContactAnalysis m_contactAnalysis;
344
345 Aws::Vector<ContactInitiationMethod> m_initiationMethods;
346
347 Aws::Vector<Aws::String> m_queueIds;
348
349 SearchableRoutingCriteria m_routingCriteria;
350
351 SearchContactsAdditionalTimeRange m_additionalTimeRange;
352
353 SearchableContactAttributes m_searchableContactAttributes;
354
355 SearchableSegmentAttributes m_searchableSegmentAttributes;
356
357 Aws::Vector<Aws::String> m_activeRegions;
358
359 ControlPlaneTagFilter m_contactTags;
360
361 AiAgentsCriteria m_aiAgents;
362 bool m_nameHasBeenSet = false;
363 bool m_agentIdsHasBeenSet = false;
364 bool m_agentHierarchyGroupsHasBeenSet = false;
365 bool m_channelsHasBeenSet = false;
366 bool m_contactAnalysisHasBeenSet = false;
367 bool m_initiationMethodsHasBeenSet = false;
368 bool m_queueIdsHasBeenSet = false;
369 bool m_routingCriteriaHasBeenSet = false;
370 bool m_additionalTimeRangeHasBeenSet = false;
371 bool m_searchableContactAttributesHasBeenSet = false;
372 bool m_searchableSegmentAttributesHasBeenSet = false;
373 bool m_activeRegionsHasBeenSet = false;
374 bool m_contactTagsHasBeenSet = false;
375 bool m_aiAgentsHasBeenSet = false;
376};
377
378} // namespace Model
379} // namespace Connect
380} // namespace Aws
SearchCriteria & WithChannels(ChannelsT &&value)
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< Aws::String > & GetAgentIds() const
void SetAiAgents(AiAgentsT &&value)
void SetQueueIds(QueueIdsT &&value)
SearchCriteria & WithAiAgents(AiAgentsT &&value)
SearchCriteria & AddQueueIds(QueueIdsT &&value)
AWS_CONNECT_API SearchCriteria & operator=(Aws::Utils::Json::JsonView jsonValue)
const NameCriteria & GetName() const
const AiAgentsCriteria & GetAiAgents() const
const SearchableRoutingCriteria & GetRoutingCriteria() const
SearchCriteria & AddAgentIds(AgentIdsT &&value)
SearchCriteria & WithContactAnalysis(ContactAnalysisT &&value)
SearchCriteria & WithInitiationMethods(InitiationMethodsT &&value)
SearchCriteria & AddActiveRegions(ActiveRegionsT &&value)
void SetContactAnalysis(ContactAnalysisT &&value)
SearchCriteria & WithContactTags(ContactTagsT &&value)
SearchCriteria & WithSearchableContactAttributes(SearchableContactAttributesT &&value)
const SearchableContactAttributes & GetSearchableContactAttributes() const
SearchCriteria & WithAdditionalTimeRange(AdditionalTimeRangeT &&value)
AWS_CONNECT_API SearchCriteria()=default
SearchCriteria & WithRoutingCriteria(RoutingCriteriaT &&value)
SearchCriteria & AddChannels(Channel value)
SearchCriteria & WithAgentIds(AgentIdsT &&value)
const Aws::Vector< Aws::String > & GetQueueIds() const
const SearchableSegmentAttributes & GetSearchableSegmentAttributes() const
void SetRoutingCriteria(RoutingCriteriaT &&value)
AWS_CONNECT_API SearchCriteria(Aws::Utils::Json::JsonView jsonValue)
SearchCriteria & WithSearchableSegmentAttributes(SearchableSegmentAttributesT &&value)
void SetSearchableSegmentAttributes(SearchableSegmentAttributesT &&value)
const Aws::Vector< ContactInitiationMethod > & GetInitiationMethods() const
SearchCriteria & AddInitiationMethods(ContactInitiationMethod value)
const Aws::Vector< Aws::String > & GetActiveRegions() const
void SetAgentHierarchyGroups(AgentHierarchyGroupsT &&value)
void SetInitiationMethods(InitiationMethodsT &&value)
SearchCriteria & WithName(NameT &&value)
void SetSearchableContactAttributes(SearchableContactAttributesT &&value)
const AgentHierarchyGroups & GetAgentHierarchyGroups() const
void SetAgentIds(AgentIdsT &&value)
const ControlPlaneTagFilter & GetContactTags() const
const Aws::Vector< Channel > & GetChannels() const
void SetChannels(ChannelsT &&value)
void SetContactTags(ContactTagsT &&value)
void SetActiveRegions(ActiveRegionsT &&value)
SearchCriteria & WithActiveRegions(ActiveRegionsT &&value)
const ContactAnalysis & GetContactAnalysis() const
const SearchContactsAdditionalTimeRange & GetAdditionalTimeRange() const
SearchCriteria & WithQueueIds(QueueIdsT &&value)
void SetAdditionalTimeRange(AdditionalTimeRangeT &&value)
SearchCriteria & WithAgentHierarchyGroups(AgentHierarchyGroupsT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue