AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Action.h
1
6#pragma once
7#include <aws/budgets/Budgets_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/budgets/model/NotificationType.h>
10#include <aws/budgets/model/ActionType.h>
11#include <aws/budgets/model/ActionThreshold.h>
12#include <aws/budgets/model/Definition.h>
13#include <aws/budgets/model/ApprovalModel.h>
14#include <aws/budgets/model/ActionStatus.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16#include <aws/budgets/model/Subscriber.h>
17#include <utility>
18
19namespace Aws
20{
21namespace Utils
22{
23namespace Json
24{
25 class JsonValue;
26 class JsonView;
27} // namespace Json
28} // namespace Utils
29namespace Budgets
30{
31namespace Model
32{
33
39 class Action
40 {
41 public:
42 AWS_BUDGETS_API Action() = default;
43 AWS_BUDGETS_API Action(Aws::Utils::Json::JsonView jsonValue);
44 AWS_BUDGETS_API Action& operator=(Aws::Utils::Json::JsonView jsonValue);
45 AWS_BUDGETS_API Aws::Utils::Json::JsonValue Jsonize() const;
46
47
49
52 inline const Aws::String& GetActionId() const { return m_actionId; }
53 inline bool ActionIdHasBeenSet() const { return m_actionIdHasBeenSet; }
54 template<typename ActionIdT = Aws::String>
55 void SetActionId(ActionIdT&& value) { m_actionIdHasBeenSet = true; m_actionId = std::forward<ActionIdT>(value); }
56 template<typename ActionIdT = Aws::String>
57 Action& WithActionId(ActionIdT&& value) { SetActionId(std::forward<ActionIdT>(value)); return *this;}
59
61
62 inline const Aws::String& GetBudgetName() const { return m_budgetName; }
63 inline bool BudgetNameHasBeenSet() const { return m_budgetNameHasBeenSet; }
64 template<typename BudgetNameT = Aws::String>
65 void SetBudgetName(BudgetNameT&& value) { m_budgetNameHasBeenSet = true; m_budgetName = std::forward<BudgetNameT>(value); }
66 template<typename BudgetNameT = Aws::String>
67 Action& WithBudgetName(BudgetNameT&& value) { SetBudgetName(std::forward<BudgetNameT>(value)); return *this;}
69
71
72 inline NotificationType GetNotificationType() const { return m_notificationType; }
73 inline bool NotificationTypeHasBeenSet() const { return m_notificationTypeHasBeenSet; }
74 inline void SetNotificationType(NotificationType value) { m_notificationTypeHasBeenSet = true; m_notificationType = value; }
75 inline Action& WithNotificationType(NotificationType value) { SetNotificationType(value); return *this;}
77
79
83 inline ActionType GetActionType() const { return m_actionType; }
84 inline bool ActionTypeHasBeenSet() const { return m_actionTypeHasBeenSet; }
85 inline void SetActionType(ActionType value) { m_actionTypeHasBeenSet = true; m_actionType = value; }
86 inline Action& WithActionType(ActionType value) { SetActionType(value); return *this;}
88
90
93 inline const ActionThreshold& GetActionThreshold() const { return m_actionThreshold; }
94 inline bool ActionThresholdHasBeenSet() const { return m_actionThresholdHasBeenSet; }
95 template<typename ActionThresholdT = ActionThreshold>
96 void SetActionThreshold(ActionThresholdT&& value) { m_actionThresholdHasBeenSet = true; m_actionThreshold = std::forward<ActionThresholdT>(value); }
97 template<typename ActionThresholdT = ActionThreshold>
98 Action& WithActionThreshold(ActionThresholdT&& value) { SetActionThreshold(std::forward<ActionThresholdT>(value)); return *this;}
100
102
105 inline const Definition& GetDefinition() const { return m_definition; }
106 inline bool DefinitionHasBeenSet() const { return m_definitionHasBeenSet; }
107 template<typename DefinitionT = Definition>
108 void SetDefinition(DefinitionT&& value) { m_definitionHasBeenSet = true; m_definition = std::forward<DefinitionT>(value); }
109 template<typename DefinitionT = Definition>
110 Action& WithDefinition(DefinitionT&& value) { SetDefinition(std::forward<DefinitionT>(value)); return *this;}
112
114
118 inline const Aws::String& GetExecutionRoleArn() const { return m_executionRoleArn; }
119 inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; }
120 template<typename ExecutionRoleArnT = Aws::String>
121 void SetExecutionRoleArn(ExecutionRoleArnT&& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = std::forward<ExecutionRoleArnT>(value); }
122 template<typename ExecutionRoleArnT = Aws::String>
123 Action& WithExecutionRoleArn(ExecutionRoleArnT&& value) { SetExecutionRoleArn(std::forward<ExecutionRoleArnT>(value)); return *this;}
125
127
130 inline ApprovalModel GetApprovalModel() const { return m_approvalModel; }
131 inline bool ApprovalModelHasBeenSet() const { return m_approvalModelHasBeenSet; }
132 inline void SetApprovalModel(ApprovalModel value) { m_approvalModelHasBeenSet = true; m_approvalModel = value; }
133 inline Action& WithApprovalModel(ApprovalModel value) { SetApprovalModel(value); return *this;}
135
137
140 inline ActionStatus GetStatus() const { return m_status; }
141 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
142 inline void SetStatus(ActionStatus value) { m_statusHasBeenSet = true; m_status = value; }
143 inline Action& WithStatus(ActionStatus value) { SetStatus(value); return *this;}
145
147
148 inline const Aws::Vector<Subscriber>& GetSubscribers() const { return m_subscribers; }
149 inline bool SubscribersHasBeenSet() const { return m_subscribersHasBeenSet; }
150 template<typename SubscribersT = Aws::Vector<Subscriber>>
151 void SetSubscribers(SubscribersT&& value) { m_subscribersHasBeenSet = true; m_subscribers = std::forward<SubscribersT>(value); }
152 template<typename SubscribersT = Aws::Vector<Subscriber>>
153 Action& WithSubscribers(SubscribersT&& value) { SetSubscribers(std::forward<SubscribersT>(value)); return *this;}
154 template<typename SubscribersT = Subscriber>
155 Action& AddSubscribers(SubscribersT&& value) { m_subscribersHasBeenSet = true; m_subscribers.emplace_back(std::forward<SubscribersT>(value)); return *this; }
157 private:
158
159 Aws::String m_actionId;
160 bool m_actionIdHasBeenSet = false;
161
162 Aws::String m_budgetName;
163 bool m_budgetNameHasBeenSet = false;
164
166 bool m_notificationTypeHasBeenSet = false;
167
168 ActionType m_actionType{ActionType::NOT_SET};
169 bool m_actionTypeHasBeenSet = false;
170
171 ActionThreshold m_actionThreshold;
172 bool m_actionThresholdHasBeenSet = false;
173
174 Definition m_definition;
175 bool m_definitionHasBeenSet = false;
176
177 Aws::String m_executionRoleArn;
178 bool m_executionRoleArnHasBeenSet = false;
179
180 ApprovalModel m_approvalModel{ApprovalModel::NOT_SET};
181 bool m_approvalModelHasBeenSet = false;
182
184 bool m_statusHasBeenSet = false;
185
186 Aws::Vector<Subscriber> m_subscribers;
187 bool m_subscribersHasBeenSet = false;
188 };
189
190} // namespace Model
191} // namespace Budgets
192} // namespace Aws
Action & WithActionId(ActionIdT &&value)
Definition Action.h:57
bool BudgetNameHasBeenSet() const
Definition Action.h:63
bool ActionThresholdHasBeenSet() const
Definition Action.h:94
void SetActionThreshold(ActionThresholdT &&value)
Definition Action.h:96
bool StatusHasBeenSet() const
Definition Action.h:141
ActionType GetActionType() const
Definition Action.h:83
void SetSubscribers(SubscribersT &&value)
Definition Action.h:151
void SetExecutionRoleArn(ExecutionRoleArnT &&value)
Definition Action.h:121
Action & WithBudgetName(BudgetNameT &&value)
Definition Action.h:67
AWS_BUDGETS_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< Subscriber > & GetSubscribers() const
Definition Action.h:148
AWS_BUDGETS_API Action & operator=(Aws::Utils::Json::JsonView jsonValue)
Action & WithExecutionRoleArn(ExecutionRoleArnT &&value)
Definition Action.h:123
const Definition & GetDefinition() const
Definition Action.h:105
bool ActionTypeHasBeenSet() const
Definition Action.h:84
Action & WithSubscribers(SubscribersT &&value)
Definition Action.h:153
void SetDefinition(DefinitionT &&value)
Definition Action.h:108
ApprovalModel GetApprovalModel() const
Definition Action.h:130
bool DefinitionHasBeenSet() const
Definition Action.h:106
void SetNotificationType(NotificationType value)
Definition Action.h:74
const Aws::String & GetActionId() const
Definition Action.h:52
AWS_BUDGETS_API Action(Aws::Utils::Json::JsonView jsonValue)
Action & WithStatus(ActionStatus value)
Definition Action.h:143
const Aws::String & GetBudgetName() const
Definition Action.h:62
AWS_BUDGETS_API Action()=default
const Aws::String & GetExecutionRoleArn() const
Definition Action.h:118
bool ApprovalModelHasBeenSet() const
Definition Action.h:131
void SetBudgetName(BudgetNameT &&value)
Definition Action.h:65
NotificationType GetNotificationType() const
Definition Action.h:72
bool ExecutionRoleArnHasBeenSet() const
Definition Action.h:119
void SetActionId(ActionIdT &&value)
Definition Action.h:55
bool SubscribersHasBeenSet() const
Definition Action.h:149
Action & AddSubscribers(SubscribersT &&value)
Definition Action.h:155
bool ActionIdHasBeenSet() const
Definition Action.h:53
ActionStatus GetStatus() const
Definition Action.h:140
bool NotificationTypeHasBeenSet() const
Definition Action.h:73
Action & WithActionThreshold(ActionThresholdT &&value)
Definition Action.h:98
void SetApprovalModel(ApprovalModel value)
Definition Action.h:132
Action & WithNotificationType(NotificationType value)
Definition Action.h:75
Action & WithActionType(ActionType value)
Definition Action.h:86
Action & WithApprovalModel(ApprovalModel value)
Definition Action.h:133
void SetStatus(ActionStatus value)
Definition Action.h:142
const ActionThreshold & GetActionThreshold() const
Definition Action.h:93
void SetActionType(ActionType value)
Definition Action.h:85
Action & WithDefinition(DefinitionT &&value)
Definition Action.h:110
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue