AWS SDK for C++

AWS SDK for C++ Version 1.11.912

Loading...
Searching...
No Matches
RuleAction.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/connect/model/ActionType.h>
9#include <aws/connect/model/AssignContactCategoryActionDefinition.h>
10#include <aws/connect/model/AssignSlaActionDefinition.h>
11#include <aws/connect/model/CreateCaseActionDefinition.h>
12#include <aws/connect/model/EndAssociatedTasksActionDefinition.h>
13#include <aws/connect/model/EventBridgeActionDefinition.h>
14#include <aws/connect/model/ExtractInformationActionDefinition.h>
15#include <aws/connect/model/SendInAppNotificationActionDefinition.h>
16#include <aws/connect/model/SendNotificationActionDefinition.h>
17#include <aws/connect/model/SubmitAutoEvaluationActionDefinition.h>
18#include <aws/connect/model/TaskActionDefinition.h>
19#include <aws/connect/model/UpdateCaseActionDefinition.h>
20
21#include <utility>
22
23namespace Aws {
24namespace Utils {
25namespace Json {
26class JsonValue;
27class JsonView;
28} // namespace Json
29} // namespace Utils
30namespace Connect {
31namespace Model {
32
40 public:
41 AWS_CONNECT_API RuleAction() = default;
42 AWS_CONNECT_API RuleAction(Aws::Utils::Json::JsonView jsonValue);
43 AWS_CONNECT_API RuleAction& operator=(Aws::Utils::Json::JsonView jsonValue);
44 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
45
47
50 inline ActionType GetActionType() const { return m_actionType; }
51 inline bool ActionTypeHasBeenSet() const { return m_actionTypeHasBeenSet; }
52 inline void SetActionType(ActionType value) {
53 m_actionTypeHasBeenSet = true;
54 m_actionType = value;
55 }
57 SetActionType(value);
58 return *this;
59 }
61
63
69 inline const TaskActionDefinition& GetTaskAction() const { return m_taskAction; }
70 inline bool TaskActionHasBeenSet() const { return m_taskActionHasBeenSet; }
71 template <typename TaskActionT = TaskActionDefinition>
72 void SetTaskAction(TaskActionT&& value) {
73 m_taskActionHasBeenSet = true;
74 m_taskAction = std::forward<TaskActionT>(value);
75 }
76 template <typename TaskActionT = TaskActionDefinition>
77 RuleAction& WithTaskAction(TaskActionT&& value) {
78 SetTaskAction(std::forward<TaskActionT>(value));
79 return *this;
80 }
82
84
92 inline const EventBridgeActionDefinition& GetEventBridgeAction() const { return m_eventBridgeAction; }
93 inline bool EventBridgeActionHasBeenSet() const { return m_eventBridgeActionHasBeenSet; }
94 template <typename EventBridgeActionT = EventBridgeActionDefinition>
95 void SetEventBridgeAction(EventBridgeActionT&& value) {
96 m_eventBridgeActionHasBeenSet = true;
97 m_eventBridgeAction = std::forward<EventBridgeActionT>(value);
98 }
99 template <typename EventBridgeActionT = EventBridgeActionDefinition>
100 RuleAction& WithEventBridgeAction(EventBridgeActionT&& value) {
101 SetEventBridgeAction(std::forward<EventBridgeActionT>(value));
102 return *this;
103 }
105
107
116 inline const AssignContactCategoryActionDefinition& GetAssignContactCategoryAction() const { return m_assignContactCategoryAction; }
117 inline bool AssignContactCategoryActionHasBeenSet() const { return m_assignContactCategoryActionHasBeenSet; }
118 template <typename AssignContactCategoryActionT = AssignContactCategoryActionDefinition>
119 void SetAssignContactCategoryAction(AssignContactCategoryActionT&& value) {
120 m_assignContactCategoryActionHasBeenSet = true;
121 m_assignContactCategoryAction = std::forward<AssignContactCategoryActionT>(value);
122 }
123 template <typename AssignContactCategoryActionT = AssignContactCategoryActionDefinition>
124 RuleAction& WithAssignContactCategoryAction(AssignContactCategoryActionT&& value) {
125 SetAssignContactCategoryAction(std::forward<AssignContactCategoryActionT>(value));
126 return *this;
127 }
129
131
139 inline const SendNotificationActionDefinition& GetSendNotificationAction() const { return m_sendNotificationAction; }
140 inline bool SendNotificationActionHasBeenSet() const { return m_sendNotificationActionHasBeenSet; }
141 template <typename SendNotificationActionT = SendNotificationActionDefinition>
142 void SetSendNotificationAction(SendNotificationActionT&& value) {
143 m_sendNotificationActionHasBeenSet = true;
144 m_sendNotificationAction = std::forward<SendNotificationActionT>(value);
145 }
146 template <typename SendNotificationActionT = SendNotificationActionDefinition>
147 RuleAction& WithSendNotificationAction(SendNotificationActionT&& value) {
148 SetSendNotificationAction(std::forward<SendNotificationActionT>(value));
149 return *this;
150 }
152
154
159 inline const CreateCaseActionDefinition& GetCreateCaseAction() const { return m_createCaseAction; }
160 inline bool CreateCaseActionHasBeenSet() const { return m_createCaseActionHasBeenSet; }
161 template <typename CreateCaseActionT = CreateCaseActionDefinition>
162 void SetCreateCaseAction(CreateCaseActionT&& value) {
163 m_createCaseActionHasBeenSet = true;
164 m_createCaseAction = std::forward<CreateCaseActionT>(value);
165 }
166 template <typename CreateCaseActionT = CreateCaseActionDefinition>
167 RuleAction& WithCreateCaseAction(CreateCaseActionT&& value) {
168 SetCreateCaseAction(std::forward<CreateCaseActionT>(value));
169 return *this;
170 }
172
174
179 inline const UpdateCaseActionDefinition& GetUpdateCaseAction() const { return m_updateCaseAction; }
180 inline bool UpdateCaseActionHasBeenSet() const { return m_updateCaseActionHasBeenSet; }
181 template <typename UpdateCaseActionT = UpdateCaseActionDefinition>
182 void SetUpdateCaseAction(UpdateCaseActionT&& value) {
183 m_updateCaseActionHasBeenSet = true;
184 m_updateCaseAction = std::forward<UpdateCaseActionT>(value);
185 }
186 template <typename UpdateCaseActionT = UpdateCaseActionDefinition>
187 RuleAction& WithUpdateCaseAction(UpdateCaseActionT&& value) {
188 SetUpdateCaseAction(std::forward<UpdateCaseActionT>(value));
189 return *this;
190 }
192
194
197 inline const AssignSlaActionDefinition& GetAssignSlaAction() const { return m_assignSlaAction; }
198 inline bool AssignSlaActionHasBeenSet() const { return m_assignSlaActionHasBeenSet; }
199 template <typename AssignSlaActionT = AssignSlaActionDefinition>
200 void SetAssignSlaAction(AssignSlaActionT&& value) {
201 m_assignSlaActionHasBeenSet = true;
202 m_assignSlaAction = std::forward<AssignSlaActionT>(value);
203 }
204 template <typename AssignSlaActionT = AssignSlaActionDefinition>
205 RuleAction& WithAssignSlaAction(AssignSlaActionT&& value) {
206 SetAssignSlaAction(std::forward<AssignSlaActionT>(value));
207 return *this;
208 }
210
212
216 inline const EndAssociatedTasksActionDefinition& GetEndAssociatedTasksAction() const { return m_endAssociatedTasksAction; }
217 inline bool EndAssociatedTasksActionHasBeenSet() const { return m_endAssociatedTasksActionHasBeenSet; }
218 template <typename EndAssociatedTasksActionT = EndAssociatedTasksActionDefinition>
219 void SetEndAssociatedTasksAction(EndAssociatedTasksActionT&& value) {
220 m_endAssociatedTasksActionHasBeenSet = true;
221 m_endAssociatedTasksAction = std::forward<EndAssociatedTasksActionT>(value);
222 }
223 template <typename EndAssociatedTasksActionT = EndAssociatedTasksActionDefinition>
224 RuleAction& WithEndAssociatedTasksAction(EndAssociatedTasksActionT&& value) {
225 SetEndAssociatedTasksAction(std::forward<EndAssociatedTasksActionT>(value));
226 return *this;
227 }
229
231
234 inline const SubmitAutoEvaluationActionDefinition& GetSubmitAutoEvaluationAction() const { return m_submitAutoEvaluationAction; }
235 inline bool SubmitAutoEvaluationActionHasBeenSet() const { return m_submitAutoEvaluationActionHasBeenSet; }
236 template <typename SubmitAutoEvaluationActionT = SubmitAutoEvaluationActionDefinition>
237 void SetSubmitAutoEvaluationAction(SubmitAutoEvaluationActionT&& value) {
238 m_submitAutoEvaluationActionHasBeenSet = true;
239 m_submitAutoEvaluationAction = std::forward<SubmitAutoEvaluationActionT>(value);
240 }
241 template <typename SubmitAutoEvaluationActionT = SubmitAutoEvaluationActionDefinition>
242 RuleAction& WithSubmitAutoEvaluationAction(SubmitAutoEvaluationActionT&& value) {
243 SetSubmitAutoEvaluationAction(std::forward<SubmitAutoEvaluationActionT>(value));
244 return *this;
245 }
247
249
252 inline const ExtractInformationActionDefinition& GetExtractInformationAction() const { return m_extractInformationAction; }
253 inline bool ExtractInformationActionHasBeenSet() const { return m_extractInformationActionHasBeenSet; }
254 template <typename ExtractInformationActionT = ExtractInformationActionDefinition>
255 void SetExtractInformationAction(ExtractInformationActionT&& value) {
256 m_extractInformationActionHasBeenSet = true;
257 m_extractInformationAction = std::forward<ExtractInformationActionT>(value);
258 }
259 template <typename ExtractInformationActionT = ExtractInformationActionDefinition>
260 RuleAction& WithExtractInformationAction(ExtractInformationActionT&& value) {
261 SetExtractInformationAction(std::forward<ExtractInformationActionT>(value));
262 return *this;
263 }
265
267
280 inline const SendInAppNotificationActionDefinition& GetSendInAppNotificationAction() const { return m_sendInAppNotificationAction; }
281 inline bool SendInAppNotificationActionHasBeenSet() const { return m_sendInAppNotificationActionHasBeenSet; }
282 template <typename SendInAppNotificationActionT = SendInAppNotificationActionDefinition>
283 void SetSendInAppNotificationAction(SendInAppNotificationActionT&& value) {
284 m_sendInAppNotificationActionHasBeenSet = true;
285 m_sendInAppNotificationAction = std::forward<SendInAppNotificationActionT>(value);
286 }
287 template <typename SendInAppNotificationActionT = SendInAppNotificationActionDefinition>
288 RuleAction& WithSendInAppNotificationAction(SendInAppNotificationActionT&& value) {
289 SetSendInAppNotificationAction(std::forward<SendInAppNotificationActionT>(value));
290 return *this;
291 }
293 private:
294 ActionType m_actionType{ActionType::NOT_SET};
295
296 TaskActionDefinition m_taskAction;
297
298 EventBridgeActionDefinition m_eventBridgeAction;
299
300 AssignContactCategoryActionDefinition m_assignContactCategoryAction;
301
302 SendNotificationActionDefinition m_sendNotificationAction;
303
304 CreateCaseActionDefinition m_createCaseAction;
305
306 UpdateCaseActionDefinition m_updateCaseAction;
307
308 AssignSlaActionDefinition m_assignSlaAction;
309
310 EndAssociatedTasksActionDefinition m_endAssociatedTasksAction;
311
312 SubmitAutoEvaluationActionDefinition m_submitAutoEvaluationAction;
313
314 ExtractInformationActionDefinition m_extractInformationAction;
315
316 SendInAppNotificationActionDefinition m_sendInAppNotificationAction;
317 bool m_actionTypeHasBeenSet = false;
318 bool m_taskActionHasBeenSet = false;
319 bool m_eventBridgeActionHasBeenSet = false;
320 bool m_assignContactCategoryActionHasBeenSet = false;
321 bool m_sendNotificationActionHasBeenSet = false;
322 bool m_createCaseActionHasBeenSet = false;
323 bool m_updateCaseActionHasBeenSet = false;
324 bool m_assignSlaActionHasBeenSet = false;
325 bool m_endAssociatedTasksActionHasBeenSet = false;
326 bool m_submitAutoEvaluationActionHasBeenSet = false;
327 bool m_extractInformationActionHasBeenSet = false;
328 bool m_sendInAppNotificationActionHasBeenSet = false;
329};
330
331} // namespace Model
332} // namespace Connect
333} // namespace Aws
void SetSendNotificationAction(SendNotificationActionT &&value)
Definition RuleAction.h:142
void SetEndAssociatedTasksAction(EndAssociatedTasksActionT &&value)
Definition RuleAction.h:219
void SetEventBridgeAction(EventBridgeActionT &&value)
Definition RuleAction.h:95
RuleAction & WithEventBridgeAction(EventBridgeActionT &&value)
Definition RuleAction.h:100
const AssignSlaActionDefinition & GetAssignSlaAction() const
Definition RuleAction.h:197
void SetAssignSlaAction(AssignSlaActionT &&value)
Definition RuleAction.h:200
AWS_CONNECT_API RuleAction()=default
const EventBridgeActionDefinition & GetEventBridgeAction() const
Definition RuleAction.h:92
const AssignContactCategoryActionDefinition & GetAssignContactCategoryAction() const
Definition RuleAction.h:116
RuleAction & WithCreateCaseAction(CreateCaseActionT &&value)
Definition RuleAction.h:167
bool SendInAppNotificationActionHasBeenSet() const
Definition RuleAction.h:281
void SetCreateCaseAction(CreateCaseActionT &&value)
Definition RuleAction.h:162
const UpdateCaseActionDefinition & GetUpdateCaseAction() const
Definition RuleAction.h:179
RuleAction & WithActionType(ActionType value)
Definition RuleAction.h:56
void SetActionType(ActionType value)
Definition RuleAction.h:52
const SendInAppNotificationActionDefinition & GetSendInAppNotificationAction() const
Definition RuleAction.h:280
RuleAction & WithAssignContactCategoryAction(AssignContactCategoryActionT &&value)
Definition RuleAction.h:124
RuleAction & WithEndAssociatedTasksAction(EndAssociatedTasksActionT &&value)
Definition RuleAction.h:224
bool ExtractInformationActionHasBeenSet() const
Definition RuleAction.h:253
RuleAction & WithUpdateCaseAction(UpdateCaseActionT &&value)
Definition RuleAction.h:187
const ExtractInformationActionDefinition & GetExtractInformationAction() const
Definition RuleAction.h:252
void SetSubmitAutoEvaluationAction(SubmitAutoEvaluationActionT &&value)
Definition RuleAction.h:237
RuleAction & WithSendInAppNotificationAction(SendInAppNotificationActionT &&value)
Definition RuleAction.h:288
bool CreateCaseActionHasBeenSet() const
Definition RuleAction.h:160
void SetTaskAction(TaskActionT &&value)
Definition RuleAction.h:72
const CreateCaseActionDefinition & GetCreateCaseAction() const
Definition RuleAction.h:159
void SetAssignContactCategoryAction(AssignContactCategoryActionT &&value)
Definition RuleAction.h:119
const TaskActionDefinition & GetTaskAction() const
Definition RuleAction.h:69
RuleAction & WithSendNotificationAction(SendNotificationActionT &&value)
Definition RuleAction.h:147
bool SendNotificationActionHasBeenSet() const
Definition RuleAction.h:140
void SetExtractInformationAction(ExtractInformationActionT &&value)
Definition RuleAction.h:255
const SendNotificationActionDefinition & GetSendNotificationAction() const
Definition RuleAction.h:139
RuleAction & WithSubmitAutoEvaluationAction(SubmitAutoEvaluationActionT &&value)
Definition RuleAction.h:242
bool EventBridgeActionHasBeenSet() const
Definition RuleAction.h:93
const SubmitAutoEvaluationActionDefinition & GetSubmitAutoEvaluationAction() const
Definition RuleAction.h:234
AWS_CONNECT_API RuleAction(Aws::Utils::Json::JsonView jsonValue)
ActionType GetActionType() const
Definition RuleAction.h:50
AWS_CONNECT_API RuleAction & operator=(Aws::Utils::Json::JsonView jsonValue)
bool EndAssociatedTasksActionHasBeenSet() const
Definition RuleAction.h:217
RuleAction & WithAssignSlaAction(AssignSlaActionT &&value)
Definition RuleAction.h:205
bool SubmitAutoEvaluationActionHasBeenSet() const
Definition RuleAction.h:235
RuleAction & WithTaskAction(TaskActionT &&value)
Definition RuleAction.h:77
const EndAssociatedTasksActionDefinition & GetEndAssociatedTasksAction() const
Definition RuleAction.h:216
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetSendInAppNotificationAction(SendInAppNotificationActionT &&value)
Definition RuleAction.h:283
bool UpdateCaseActionHasBeenSet() const
Definition RuleAction.h:180
RuleAction & WithExtractInformationAction(ExtractInformationActionT &&value)
Definition RuleAction.h:260
void SetUpdateCaseAction(UpdateCaseActionT &&value)
Definition RuleAction.h:182
bool AssignContactCategoryActionHasBeenSet() const
Definition RuleAction.h:117
Aws::Utils::Json::JsonValue JsonValue