7#include <aws/compute-optimizer-automation/ComputeOptimizerAutomation_EXPORTS.h>
8#include <aws/compute-optimizer-automation/model/Criteria.h>
9#include <aws/compute-optimizer-automation/model/OrganizationConfiguration.h>
10#include <aws/compute-optimizer-automation/model/RecommendedActionType.h>
11#include <aws/compute-optimizer-automation/model/RuleStatus.h>
12#include <aws/compute-optimizer-automation/model/RuleType.h>
13#include <aws/compute-optimizer-automation/model/Schedule.h>
14#include <aws/compute-optimizer-automation/model/Tag.h>
15#include <aws/core/http/HttpResponse.h>
16#include <aws/core/utils/DateTime.h>
17#include <aws/core/utils/memory/stl/AWSString.h>
18#include <aws/core/utils/memory/stl/AWSVector.h>
23template <
typename RESULT_TYPE>
24class AmazonWebServiceResult;
31namespace ComputeOptimizerAutomation {
45 template <
typename RuleArnT = Aws::String>
47 m_ruleArnHasBeenSet =
true;
48 m_ruleArn = std::forward<RuleArnT>(value);
50 template <
typename RuleArnT = Aws::String>
62 template <
typename RuleIdT = Aws::String>
64 m_ruleIdHasBeenSet =
true;
65 m_ruleId = std::forward<RuleIdT>(value);
67 template <
typename RuleIdT = Aws::String>
79 template <
typename NameT = Aws::String>
81 m_nameHasBeenSet =
true;
82 m_name = std::forward<NameT>(value);
84 template <
typename NameT = Aws::String>
86 SetName(std::forward<NameT>(value));
96 template <
typename DescriptionT = Aws::String>
98 m_descriptionHasBeenSet =
true;
99 m_description = std::forward<DescriptionT>(value);
101 template <
typename DescriptionT = Aws::String>
114 m_ruleTypeHasBeenSet =
true;
129 m_ruleRevisionHasBeenSet =
true;
130 m_ruleRevision = value;
144 template <
typename AccountIdT = Aws::String>
146 m_accountIdHasBeenSet =
true;
147 m_accountId = std::forward<AccountIdT>(value);
149 template <
typename AccountIdT = Aws::String>
159 template <
typename OrganizationConfigurationT = OrganizationConfiguration>
161 m_organizationConfigurationHasBeenSet =
true;
162 m_organizationConfiguration = std::forward<OrganizationConfigurationT>(value);
164 template <
typename OrganizationConfigurationT = OrganizationConfiguration>
177 template <
typename PriorityT = Aws::String>
179 m_priorityHasBeenSet =
true;
180 m_priority = std::forward<PriorityT>(value);
182 template <
typename PriorityT = Aws::String>
194 template <
typename RecommendedActionTypesT = Aws::Vector<RecommendedActionType>>
196 m_recommendedActionTypesHasBeenSet =
true;
197 m_recommendedActionTypes = std::forward<RecommendedActionTypesT>(value);
199 template <
typename RecommendedActionTypesT = Aws::Vector<RecommendedActionType>>
205 m_recommendedActionTypesHasBeenSet =
true;
206 m_recommendedActionTypes.push_back(value);
214 template <
typename CriteriaT = Criteria>
216 m_criteriaHasBeenSet =
true;
217 m_criteria = std::forward<CriteriaT>(value);
219 template <
typename CriteriaT = Criteria>
229 template <
typename ScheduleT = Schedule>
231 m_scheduleHasBeenSet =
true;
232 m_schedule = std::forward<ScheduleT>(value);
234 template <
typename ScheduleT = Schedule>
247 m_statusHasBeenSet =
true;
261 template <
typename TagsT = Aws::Vector<Tag>>
263 m_tagsHasBeenSet =
true;
264 m_tags = std::forward<TagsT>(value);
266 template <
typename TagsT = Aws::Vector<Tag>>
268 SetTags(std::forward<TagsT>(value));
271 template <
typename TagsT = Tag>
273 m_tagsHasBeenSet =
true;
274 m_tags.emplace_back(std::forward<TagsT>(value));
284 template <
typename CreatedTimestampT = Aws::Utils::DateTime>
286 m_createdTimestampHasBeenSet =
true;
287 m_createdTimestamp = std::forward<CreatedTimestampT>(value);
289 template <
typename CreatedTimestampT = Aws::Utils::DateTime>
301 template <
typename LastUpdatedTimestampT = Aws::Utils::DateTime>
303 m_lastUpdatedTimestampHasBeenSet =
true;
304 m_lastUpdatedTimestamp = std::forward<LastUpdatedTimestampT>(value);
306 template <
typename LastUpdatedTimestampT = Aws::Utils::DateTime>
316 template <
typename RequestIdT = Aws::String>
318 m_requestIdHasBeenSet =
true;
319 m_requestId = std::forward<RequestIdT>(value);
321 template <
typename RequestIdT = Aws::String>
340 long long m_ruleRevision{0};
344 OrganizationConfiguration m_organizationConfiguration;
364 bool m_ruleArnHasBeenSet =
false;
365 bool m_ruleIdHasBeenSet =
false;
366 bool m_nameHasBeenSet =
false;
367 bool m_descriptionHasBeenSet =
false;
368 bool m_ruleTypeHasBeenSet =
false;
369 bool m_ruleRevisionHasBeenSet =
false;
370 bool m_accountIdHasBeenSet =
false;
371 bool m_organizationConfigurationHasBeenSet =
false;
372 bool m_priorityHasBeenSet =
false;
373 bool m_recommendedActionTypesHasBeenSet =
false;
374 bool m_criteriaHasBeenSet =
false;
375 bool m_scheduleHasBeenSet =
false;
376 bool m_statusHasBeenSet =
false;
377 bool m_tagsHasBeenSet =
false;
378 bool m_createdTimestampHasBeenSet =
false;
379 bool m_lastUpdatedTimestampHasBeenSet =
false;
380 bool m_requestIdHasBeenSet =
false;
AWS_COMPUTEOPTIMIZERAUTOMATION_API GetAutomationRuleResult()=default
const Criteria & GetCriteria() const
GetAutomationRuleResult & AddRecommendedActionTypes(RecommendedActionType value)
GetAutomationRuleResult & WithRuleRevision(long long value)
void SetRuleArn(RuleArnT &&value)
const Aws::String & GetRuleId() const
void SetTags(TagsT &&value)
void SetRecommendedActionTypes(RecommendedActionTypesT &&value)
GetAutomationRuleResult & WithRecommendedActionTypes(RecommendedActionTypesT &&value)
const Aws::String & GetRequestId() const
void SetRuleId(RuleIdT &&value)
GetAutomationRuleResult & WithRequestId(RequestIdT &&value)
void SetName(NameT &&value)
const OrganizationConfiguration & GetOrganizationConfiguration() const
void SetPriority(PriorityT &&value)
void SetRuleRevision(long long value)
AWS_COMPUTEOPTIMIZERAUTOMATION_API GetAutomationRuleResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
GetAutomationRuleResult & AddTags(TagsT &&value)
void SetRuleType(RuleType value)
GetAutomationRuleResult & WithDescription(DescriptionT &&value)
void SetSchedule(ScheduleT &&value)
GetAutomationRuleResult & WithCriteria(CriteriaT &&value)
const Aws::String & GetAccountId() const
GetAutomationRuleResult & WithSchedule(ScheduleT &&value)
GetAutomationRuleResult & WithPriority(PriorityT &&value)
const Aws::Vector< Tag > & GetTags() const
AWS_COMPUTEOPTIMIZERAUTOMATION_API GetAutomationRuleResult(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
GetAutomationRuleResult & WithRuleArn(RuleArnT &&value)
GetAutomationRuleResult & WithTags(TagsT &&value)
void SetCriteria(CriteriaT &&value)
const Aws::String & GetPriority() const
const Aws::Utils::DateTime & GetLastUpdatedTimestamp() const
GetAutomationRuleResult & WithOrganizationConfiguration(OrganizationConfigurationT &&value)
const Schedule & GetSchedule() const
void SetStatus(RuleStatus value)
void SetOrganizationConfiguration(OrganizationConfigurationT &&value)
long long GetRuleRevision() const
RuleType GetRuleType() const
GetAutomationRuleResult & WithLastUpdatedTimestamp(LastUpdatedTimestampT &&value)
GetAutomationRuleResult & WithStatus(RuleStatus value)
const Aws::String & GetName() const
GetAutomationRuleResult & WithName(NameT &&value)
GetAutomationRuleResult & WithAccountId(AccountIdT &&value)
Aws::Http::HttpResponseCode GetHttpResponseCode() const
void SetCreatedTimestamp(CreatedTimestampT &&value)
void SetLastUpdatedTimestamp(LastUpdatedTimestampT &&value)
const Aws::String & GetDescription() const
void SetDescription(DescriptionT &&value)
void SetRequestId(RequestIdT &&value)
const Aws::Vector< RecommendedActionType > & GetRecommendedActionTypes() const
GetAutomationRuleResult & WithRuleType(RuleType value)
RuleStatus GetStatus() const
const Aws::Utils::DateTime & GetCreatedTimestamp() const
void SetAccountId(AccountIdT &&value)
GetAutomationRuleResult & WithCreatedTimestamp(CreatedTimestampT &&value)
GetAutomationRuleResult & WithRuleId(RuleIdT &&value)
const Aws::String & GetRuleArn() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue