AWS SDK for C++

AWS SDK for C++ Version 1.11.770

Loading...
Searching...
No Matches
UpdateAutomationRuleRequest.h
1
6#pragma once
7#include <aws/compute-optimizer-automation/ComputeOptimizerAutomationRequest.h>
8#include <aws/compute-optimizer-automation/ComputeOptimizerAutomation_EXPORTS.h>
9#include <aws/compute-optimizer-automation/model/Criteria.h>
10#include <aws/compute-optimizer-automation/model/OrganizationConfiguration.h>
11#include <aws/compute-optimizer-automation/model/RecommendedActionType.h>
12#include <aws/compute-optimizer-automation/model/RuleStatus.h>
13#include <aws/compute-optimizer-automation/model/RuleType.h>
14#include <aws/compute-optimizer-automation/model/Schedule.h>
15#include <aws/core/utils/UUID.h>
16#include <aws/core/utils/memory/stl/AWSString.h>
17#include <aws/core/utils/memory/stl/AWSVector.h>
18
19#include <utility>
20
21namespace Aws {
22namespace ComputeOptimizerAutomation {
23namespace Model {
24
28 public:
29 AWS_COMPUTEOPTIMIZERAUTOMATION_API UpdateAutomationRuleRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "UpdateAutomationRule"; }
36
37 AWS_COMPUTEOPTIMIZERAUTOMATION_API Aws::String SerializePayload() const override;
38
39 AWS_COMPUTEOPTIMIZERAUTOMATION_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
40
42
45 inline const Aws::String& GetRuleArn() const { return m_ruleArn; }
46 inline bool RuleArnHasBeenSet() const { return m_ruleArnHasBeenSet; }
47 template <typename RuleArnT = Aws::String>
48 void SetRuleArn(RuleArnT&& value) {
49 m_ruleArnHasBeenSet = true;
50 m_ruleArn = std::forward<RuleArnT>(value);
51 }
52 template <typename RuleArnT = Aws::String>
54 SetRuleArn(std::forward<RuleArnT>(value));
55 return *this;
56 }
58
60
63 inline long long GetRuleRevision() const { return m_ruleRevision; }
64 inline bool RuleRevisionHasBeenSet() const { return m_ruleRevisionHasBeenSet; }
65 inline void SetRuleRevision(long long value) {
66 m_ruleRevisionHasBeenSet = true;
67 m_ruleRevision = value;
68 }
70 SetRuleRevision(value);
71 return *this;
72 }
74
76
80 inline const Aws::String& GetName() const { return m_name; }
81 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
82 template <typename NameT = Aws::String>
83 void SetName(NameT&& value) {
84 m_nameHasBeenSet = true;
85 m_name = std::forward<NameT>(value);
86 }
87 template <typename NameT = Aws::String>
89 SetName(std::forward<NameT>(value));
90 return *this;
91 }
93
95
100 inline const Aws::String& GetDescription() const { return m_description; }
101 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
102 template <typename DescriptionT = Aws::String>
103 void SetDescription(DescriptionT&& value) {
104 m_descriptionHasBeenSet = true;
105 m_description = std::forward<DescriptionT>(value);
106 }
107 template <typename DescriptionT = Aws::String>
109 SetDescription(std::forward<DescriptionT>(value));
110 return *this;
111 }
113
115
119 inline RuleType GetRuleType() const { return m_ruleType; }
120 inline bool RuleTypeHasBeenSet() const { return m_ruleTypeHasBeenSet; }
121 inline void SetRuleType(RuleType value) {
122 m_ruleTypeHasBeenSet = true;
123 m_ruleType = value;
124 }
126 SetRuleType(value);
127 return *this;
128 }
130
132
136 inline const OrganizationConfiguration& GetOrganizationConfiguration() const { return m_organizationConfiguration; }
137 inline bool OrganizationConfigurationHasBeenSet() const { return m_organizationConfigurationHasBeenSet; }
138 template <typename OrganizationConfigurationT = OrganizationConfiguration>
139 void SetOrganizationConfiguration(OrganizationConfigurationT&& value) {
140 m_organizationConfigurationHasBeenSet = true;
141 m_organizationConfiguration = std::forward<OrganizationConfigurationT>(value);
142 }
143 template <typename OrganizationConfigurationT = OrganizationConfiguration>
144 UpdateAutomationRuleRequest& WithOrganizationConfiguration(OrganizationConfigurationT&& value) {
145 SetOrganizationConfiguration(std::forward<OrganizationConfigurationT>(value));
146 return *this;
147 }
149
151
155 inline const Aws::String& GetPriority() const { return m_priority; }
156 inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; }
157 template <typename PriorityT = Aws::String>
158 void SetPriority(PriorityT&& value) {
159 m_priorityHasBeenSet = true;
160 m_priority = std::forward<PriorityT>(value);
161 }
162 template <typename PriorityT = Aws::String>
164 SetPriority(std::forward<PriorityT>(value));
165 return *this;
166 }
168
170
174 inline const Aws::Vector<RecommendedActionType>& GetRecommendedActionTypes() const { return m_recommendedActionTypes; }
175 inline bool RecommendedActionTypesHasBeenSet() const { return m_recommendedActionTypesHasBeenSet; }
176 template <typename RecommendedActionTypesT = Aws::Vector<RecommendedActionType>>
177 void SetRecommendedActionTypes(RecommendedActionTypesT&& value) {
178 m_recommendedActionTypesHasBeenSet = true;
179 m_recommendedActionTypes = std::forward<RecommendedActionTypesT>(value);
180 }
181 template <typename RecommendedActionTypesT = Aws::Vector<RecommendedActionType>>
182 UpdateAutomationRuleRequest& WithRecommendedActionTypes(RecommendedActionTypesT&& value) {
183 SetRecommendedActionTypes(std::forward<RecommendedActionTypesT>(value));
184 return *this;
185 }
187 m_recommendedActionTypesHasBeenSet = true;
188 m_recommendedActionTypes.push_back(value);
189 return *this;
190 }
192
194
195 inline const Criteria& GetCriteria() const { return m_criteria; }
196 inline bool CriteriaHasBeenSet() const { return m_criteriaHasBeenSet; }
197 template <typename CriteriaT = Criteria>
198 void SetCriteria(CriteriaT&& value) {
199 m_criteriaHasBeenSet = true;
200 m_criteria = std::forward<CriteriaT>(value);
201 }
202 template <typename CriteriaT = Criteria>
204 SetCriteria(std::forward<CriteriaT>(value));
205 return *this;
206 }
208
210
214 inline const Schedule& GetSchedule() const { return m_schedule; }
215 inline bool ScheduleHasBeenSet() const { return m_scheduleHasBeenSet; }
216 template <typename ScheduleT = Schedule>
217 void SetSchedule(ScheduleT&& value) {
218 m_scheduleHasBeenSet = true;
219 m_schedule = std::forward<ScheduleT>(value);
220 }
221 template <typename ScheduleT = Schedule>
223 SetSchedule(std::forward<ScheduleT>(value));
224 return *this;
225 }
227
229
232 inline RuleStatus GetStatus() const { return m_status; }
233 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
234 inline void SetStatus(RuleStatus value) {
235 m_statusHasBeenSet = true;
236 m_status = value;
237 }
239 SetStatus(value);
240 return *this;
241 }
243
245
250 inline const Aws::String& GetClientToken() const { return m_clientToken; }
251 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
252 template <typename ClientTokenT = Aws::String>
253 void SetClientToken(ClientTokenT&& value) {
254 m_clientTokenHasBeenSet = true;
255 m_clientToken = std::forward<ClientTokenT>(value);
256 }
257 template <typename ClientTokenT = Aws::String>
259 SetClientToken(std::forward<ClientTokenT>(value));
260 return *this;
261 }
263 private:
264 Aws::String m_ruleArn;
265
266 long long m_ruleRevision{0};
267
268 Aws::String m_name;
269
270 Aws::String m_description;
271
272 RuleType m_ruleType{RuleType::NOT_SET};
273
274 OrganizationConfiguration m_organizationConfiguration;
275
276 Aws::String m_priority;
277
278 Aws::Vector<RecommendedActionType> m_recommendedActionTypes;
279
280 Criteria m_criteria;
281
282 Schedule m_schedule;
283
285
287 bool m_ruleArnHasBeenSet = false;
288 bool m_ruleRevisionHasBeenSet = false;
289 bool m_nameHasBeenSet = false;
290 bool m_descriptionHasBeenSet = false;
291 bool m_ruleTypeHasBeenSet = false;
292 bool m_organizationConfigurationHasBeenSet = false;
293 bool m_priorityHasBeenSet = false;
294 bool m_recommendedActionTypesHasBeenSet = false;
295 bool m_criteriaHasBeenSet = false;
296 bool m_scheduleHasBeenSet = false;
297 bool m_statusHasBeenSet = false;
298 bool m_clientTokenHasBeenSet = true;
299};
300
301} // namespace Model
302} // namespace ComputeOptimizerAutomation
303} // namespace Aws
UpdateAutomationRuleRequest & WithRecommendedActionTypes(RecommendedActionTypesT &&value)
UpdateAutomationRuleRequest & WithOrganizationConfiguration(OrganizationConfigurationT &&value)
const Aws::Vector< RecommendedActionType > & GetRecommendedActionTypes() const
AWS_COMPUTEOPTIMIZERAUTOMATION_API UpdateAutomationRuleRequest()=default
UpdateAutomationRuleRequest & AddRecommendedActionTypes(RecommendedActionType value)
AWS_COMPUTEOPTIMIZERAUTOMATION_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
UpdateAutomationRuleRequest & WithDescription(DescriptionT &&value)
AWS_COMPUTEOPTIMIZERAUTOMATION_API Aws::String SerializePayload() const override
UpdateAutomationRuleRequest & WithClientToken(ClientTokenT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector