AWS SDK for C++

AWS SDK for C++ Version 1.11.759

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/SendNotificationActionDefinition.h>
15#include <aws/connect/model/SubmitAutoEvaluationActionDefinition.h>
16#include <aws/connect/model/TaskActionDefinition.h>
17#include <aws/connect/model/UpdateCaseActionDefinition.h>
18
19#include <utility>
20
21namespace Aws {
22namespace Utils {
23namespace Json {
24class JsonValue;
25class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace Connect {
29namespace Model {
30
38 public:
39 AWS_CONNECT_API RuleAction() = default;
40 AWS_CONNECT_API RuleAction(Aws::Utils::Json::JsonView jsonValue);
41 AWS_CONNECT_API RuleAction& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
43
45
48 inline ActionType GetActionType() const { return m_actionType; }
49 inline bool ActionTypeHasBeenSet() const { return m_actionTypeHasBeenSet; }
50 inline void SetActionType(ActionType value) {
51 m_actionTypeHasBeenSet = true;
52 m_actionType = value;
53 }
55 SetActionType(value);
56 return *this;
57 }
59
61
67 inline const TaskActionDefinition& GetTaskAction() const { return m_taskAction; }
68 inline bool TaskActionHasBeenSet() const { return m_taskActionHasBeenSet; }
69 template <typename TaskActionT = TaskActionDefinition>
70 void SetTaskAction(TaskActionT&& value) {
71 m_taskActionHasBeenSet = true;
72 m_taskAction = std::forward<TaskActionT>(value);
73 }
74 template <typename TaskActionT = TaskActionDefinition>
75 RuleAction& WithTaskAction(TaskActionT&& value) {
76 SetTaskAction(std::forward<TaskActionT>(value));
77 return *this;
78 }
80
82
90 inline const EventBridgeActionDefinition& GetEventBridgeAction() const { return m_eventBridgeAction; }
91 inline bool EventBridgeActionHasBeenSet() const { return m_eventBridgeActionHasBeenSet; }
92 template <typename EventBridgeActionT = EventBridgeActionDefinition>
93 void SetEventBridgeAction(EventBridgeActionT&& value) {
94 m_eventBridgeActionHasBeenSet = true;
95 m_eventBridgeAction = std::forward<EventBridgeActionT>(value);
96 }
97 template <typename EventBridgeActionT = EventBridgeActionDefinition>
98 RuleAction& WithEventBridgeAction(EventBridgeActionT&& value) {
99 SetEventBridgeAction(std::forward<EventBridgeActionT>(value));
100 return *this;
101 }
103
105
114 inline const AssignContactCategoryActionDefinition& GetAssignContactCategoryAction() const { return m_assignContactCategoryAction; }
115 inline bool AssignContactCategoryActionHasBeenSet() const { return m_assignContactCategoryActionHasBeenSet; }
116 template <typename AssignContactCategoryActionT = AssignContactCategoryActionDefinition>
117 void SetAssignContactCategoryAction(AssignContactCategoryActionT&& value) {
118 m_assignContactCategoryActionHasBeenSet = true;
119 m_assignContactCategoryAction = std::forward<AssignContactCategoryActionT>(value);
120 }
121 template <typename AssignContactCategoryActionT = AssignContactCategoryActionDefinition>
122 RuleAction& WithAssignContactCategoryAction(AssignContactCategoryActionT&& value) {
123 SetAssignContactCategoryAction(std::forward<AssignContactCategoryActionT>(value));
124 return *this;
125 }
127
129
137 inline const SendNotificationActionDefinition& GetSendNotificationAction() const { return m_sendNotificationAction; }
138 inline bool SendNotificationActionHasBeenSet() const { return m_sendNotificationActionHasBeenSet; }
139 template <typename SendNotificationActionT = SendNotificationActionDefinition>
140 void SetSendNotificationAction(SendNotificationActionT&& value) {
141 m_sendNotificationActionHasBeenSet = true;
142 m_sendNotificationAction = std::forward<SendNotificationActionT>(value);
143 }
144 template <typename SendNotificationActionT = SendNotificationActionDefinition>
145 RuleAction& WithSendNotificationAction(SendNotificationActionT&& value) {
146 SetSendNotificationAction(std::forward<SendNotificationActionT>(value));
147 return *this;
148 }
150
152
157 inline const CreateCaseActionDefinition& GetCreateCaseAction() const { return m_createCaseAction; }
158 inline bool CreateCaseActionHasBeenSet() const { return m_createCaseActionHasBeenSet; }
159 template <typename CreateCaseActionT = CreateCaseActionDefinition>
160 void SetCreateCaseAction(CreateCaseActionT&& value) {
161 m_createCaseActionHasBeenSet = true;
162 m_createCaseAction = std::forward<CreateCaseActionT>(value);
163 }
164 template <typename CreateCaseActionT = CreateCaseActionDefinition>
165 RuleAction& WithCreateCaseAction(CreateCaseActionT&& value) {
166 SetCreateCaseAction(std::forward<CreateCaseActionT>(value));
167 return *this;
168 }
170
172
177 inline const UpdateCaseActionDefinition& GetUpdateCaseAction() const { return m_updateCaseAction; }
178 inline bool UpdateCaseActionHasBeenSet() const { return m_updateCaseActionHasBeenSet; }
179 template <typename UpdateCaseActionT = UpdateCaseActionDefinition>
180 void SetUpdateCaseAction(UpdateCaseActionT&& value) {
181 m_updateCaseActionHasBeenSet = true;
182 m_updateCaseAction = std::forward<UpdateCaseActionT>(value);
183 }
184 template <typename UpdateCaseActionT = UpdateCaseActionDefinition>
185 RuleAction& WithUpdateCaseAction(UpdateCaseActionT&& value) {
186 SetUpdateCaseAction(std::forward<UpdateCaseActionT>(value));
187 return *this;
188 }
190
192
195 inline const AssignSlaActionDefinition& GetAssignSlaAction() const { return m_assignSlaAction; }
196 inline bool AssignSlaActionHasBeenSet() const { return m_assignSlaActionHasBeenSet; }
197 template <typename AssignSlaActionT = AssignSlaActionDefinition>
198 void SetAssignSlaAction(AssignSlaActionT&& value) {
199 m_assignSlaActionHasBeenSet = true;
200 m_assignSlaAction = std::forward<AssignSlaActionT>(value);
201 }
202 template <typename AssignSlaActionT = AssignSlaActionDefinition>
203 RuleAction& WithAssignSlaAction(AssignSlaActionT&& value) {
204 SetAssignSlaAction(std::forward<AssignSlaActionT>(value));
205 return *this;
206 }
208
210
214 inline const EndAssociatedTasksActionDefinition& GetEndAssociatedTasksAction() const { return m_endAssociatedTasksAction; }
215 inline bool EndAssociatedTasksActionHasBeenSet() const { return m_endAssociatedTasksActionHasBeenSet; }
216 template <typename EndAssociatedTasksActionT = EndAssociatedTasksActionDefinition>
217 void SetEndAssociatedTasksAction(EndAssociatedTasksActionT&& value) {
218 m_endAssociatedTasksActionHasBeenSet = true;
219 m_endAssociatedTasksAction = std::forward<EndAssociatedTasksActionT>(value);
220 }
221 template <typename EndAssociatedTasksActionT = EndAssociatedTasksActionDefinition>
222 RuleAction& WithEndAssociatedTasksAction(EndAssociatedTasksActionT&& value) {
223 SetEndAssociatedTasksAction(std::forward<EndAssociatedTasksActionT>(value));
224 return *this;
225 }
227
229
232 inline const SubmitAutoEvaluationActionDefinition& GetSubmitAutoEvaluationAction() const { return m_submitAutoEvaluationAction; }
233 inline bool SubmitAutoEvaluationActionHasBeenSet() const { return m_submitAutoEvaluationActionHasBeenSet; }
234 template <typename SubmitAutoEvaluationActionT = SubmitAutoEvaluationActionDefinition>
235 void SetSubmitAutoEvaluationAction(SubmitAutoEvaluationActionT&& value) {
236 m_submitAutoEvaluationActionHasBeenSet = true;
237 m_submitAutoEvaluationAction = std::forward<SubmitAutoEvaluationActionT>(value);
238 }
239 template <typename SubmitAutoEvaluationActionT = SubmitAutoEvaluationActionDefinition>
240 RuleAction& WithSubmitAutoEvaluationAction(SubmitAutoEvaluationActionT&& value) {
241 SetSubmitAutoEvaluationAction(std::forward<SubmitAutoEvaluationActionT>(value));
242 return *this;
243 }
245 private:
246 ActionType m_actionType{ActionType::NOT_SET};
247
248 TaskActionDefinition m_taskAction;
249
250 EventBridgeActionDefinition m_eventBridgeAction;
251
252 AssignContactCategoryActionDefinition m_assignContactCategoryAction;
253
254 SendNotificationActionDefinition m_sendNotificationAction;
255
256 CreateCaseActionDefinition m_createCaseAction;
257
258 UpdateCaseActionDefinition m_updateCaseAction;
259
260 AssignSlaActionDefinition m_assignSlaAction;
261
262 EndAssociatedTasksActionDefinition m_endAssociatedTasksAction;
263
264 SubmitAutoEvaluationActionDefinition m_submitAutoEvaluationAction;
265 bool m_actionTypeHasBeenSet = false;
266 bool m_taskActionHasBeenSet = false;
267 bool m_eventBridgeActionHasBeenSet = false;
268 bool m_assignContactCategoryActionHasBeenSet = false;
269 bool m_sendNotificationActionHasBeenSet = false;
270 bool m_createCaseActionHasBeenSet = false;
271 bool m_updateCaseActionHasBeenSet = false;
272 bool m_assignSlaActionHasBeenSet = false;
273 bool m_endAssociatedTasksActionHasBeenSet = false;
274 bool m_submitAutoEvaluationActionHasBeenSet = false;
275};
276
277} // namespace Model
278} // namespace Connect
279} // namespace Aws
void SetSendNotificationAction(SendNotificationActionT &&value)
Definition RuleAction.h:140
void SetEndAssociatedTasksAction(EndAssociatedTasksActionT &&value)
Definition RuleAction.h:217
void SetEventBridgeAction(EventBridgeActionT &&value)
Definition RuleAction.h:93
RuleAction & WithEventBridgeAction(EventBridgeActionT &&value)
Definition RuleAction.h:98
const AssignSlaActionDefinition & GetAssignSlaAction() const
Definition RuleAction.h:195
void SetAssignSlaAction(AssignSlaActionT &&value)
Definition RuleAction.h:198
AWS_CONNECT_API RuleAction()=default
const EventBridgeActionDefinition & GetEventBridgeAction() const
Definition RuleAction.h:90
const AssignContactCategoryActionDefinition & GetAssignContactCategoryAction() const
Definition RuleAction.h:114
RuleAction & WithCreateCaseAction(CreateCaseActionT &&value)
Definition RuleAction.h:165
void SetCreateCaseAction(CreateCaseActionT &&value)
Definition RuleAction.h:160
const UpdateCaseActionDefinition & GetUpdateCaseAction() const
Definition RuleAction.h:177
RuleAction & WithActionType(ActionType value)
Definition RuleAction.h:54
void SetActionType(ActionType value)
Definition RuleAction.h:50
RuleAction & WithAssignContactCategoryAction(AssignContactCategoryActionT &&value)
Definition RuleAction.h:122
RuleAction & WithEndAssociatedTasksAction(EndAssociatedTasksActionT &&value)
Definition RuleAction.h:222
RuleAction & WithUpdateCaseAction(UpdateCaseActionT &&value)
Definition RuleAction.h:185
void SetSubmitAutoEvaluationAction(SubmitAutoEvaluationActionT &&value)
Definition RuleAction.h:235
bool CreateCaseActionHasBeenSet() const
Definition RuleAction.h:158
void SetTaskAction(TaskActionT &&value)
Definition RuleAction.h:70
const CreateCaseActionDefinition & GetCreateCaseAction() const
Definition RuleAction.h:157
void SetAssignContactCategoryAction(AssignContactCategoryActionT &&value)
Definition RuleAction.h:117
const TaskActionDefinition & GetTaskAction() const
Definition RuleAction.h:67
RuleAction & WithSendNotificationAction(SendNotificationActionT &&value)
Definition RuleAction.h:145
bool SendNotificationActionHasBeenSet() const
Definition RuleAction.h:138
const SendNotificationActionDefinition & GetSendNotificationAction() const
Definition RuleAction.h:137
RuleAction & WithSubmitAutoEvaluationAction(SubmitAutoEvaluationActionT &&value)
Definition RuleAction.h:240
bool EventBridgeActionHasBeenSet() const
Definition RuleAction.h:91
const SubmitAutoEvaluationActionDefinition & GetSubmitAutoEvaluationAction() const
Definition RuleAction.h:232
AWS_CONNECT_API RuleAction(Aws::Utils::Json::JsonView jsonValue)
ActionType GetActionType() const
Definition RuleAction.h:48
AWS_CONNECT_API RuleAction & operator=(Aws::Utils::Json::JsonView jsonValue)
bool EndAssociatedTasksActionHasBeenSet() const
Definition RuleAction.h:215
RuleAction & WithAssignSlaAction(AssignSlaActionT &&value)
Definition RuleAction.h:203
bool SubmitAutoEvaluationActionHasBeenSet() const
Definition RuleAction.h:233
RuleAction & WithTaskAction(TaskActionT &&value)
Definition RuleAction.h:75
const EndAssociatedTasksActionDefinition & GetEndAssociatedTasksAction() const
Definition RuleAction.h:214
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
bool UpdateCaseActionHasBeenSet() const
Definition RuleAction.h:178
void SetUpdateCaseAction(UpdateCaseActionT &&value)
Definition RuleAction.h:180
bool AssignContactCategoryActionHasBeenSet() const
Definition RuleAction.h:115
Aws::Utils::Json::JsonValue JsonValue