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/compute-optimizer-automation/model/Tag.h>
16#include <aws/core/utils/UUID.h>
17#include <aws/core/utils/memory/stl/AWSString.h>
18#include <aws/core/utils/memory/stl/AWSVector.h>
23namespace ComputeOptimizerAutomation {
48 template <
typename NameT = Aws::String>
50 m_nameHasBeenSet =
true;
51 m_name = std::forward<NameT>(value);
53 template <
typename NameT = Aws::String>
55 SetName(std::forward<NameT>(value));
66 template <
typename DescriptionT = Aws::String>
68 m_descriptionHasBeenSet =
true;
69 m_description = std::forward<DescriptionT>(value);
71 template <
typename DescriptionT = Aws::String>
86 m_ruleTypeHasBeenSet =
true;
102 template <
typename OrganizationConfigurationT = OrganizationConfiguration>
104 m_organizationConfigurationHasBeenSet =
true;
105 m_organizationConfiguration = std::forward<OrganizationConfigurationT>(value);
107 template <
typename OrganizationConfigurationT = OrganizationConfiguration>
124 template <
typename PriorityT = Aws::String>
126 m_priorityHasBeenSet =
true;
127 m_priority = std::forward<PriorityT>(value);
129 template <
typename PriorityT = Aws::String>
142 template <
typename RecommendedActionTypesT = Aws::Vector<RecommendedActionType>>
144 m_recommendedActionTypesHasBeenSet =
true;
145 m_recommendedActionTypes = std::forward<RecommendedActionTypesT>(value);
147 template <
typename RecommendedActionTypesT = Aws::Vector<RecommendedActionType>>
153 m_recommendedActionTypesHasBeenSet =
true;
154 m_recommendedActionTypes.push_back(value);
168 template <
typename CriteriaT = Criteria>
170 m_criteriaHasBeenSet =
true;
171 m_criteria = std::forward<CriteriaT>(value);
173 template <
typename CriteriaT = Criteria>
186 template <
typename ScheduleT = Schedule>
188 m_scheduleHasBeenSet =
true;
189 m_schedule = std::forward<ScheduleT>(value);
191 template <
typename ScheduleT = Schedule>
205 m_statusHasBeenSet =
true;
220 template <
typename TagsT = Aws::Vector<Tag>>
222 m_tagsHasBeenSet =
true;
223 m_tags = std::forward<TagsT>(value);
225 template <
typename TagsT = Aws::Vector<Tag>>
227 SetTags(std::forward<TagsT>(value));
230 template <
typename TagsT = Tag>
232 m_tagsHasBeenSet =
true;
233 m_tags.emplace_back(std::forward<TagsT>(value));
244 template <
typename ClientTokenT = Aws::String>
246 m_clientTokenHasBeenSet =
true;
247 m_clientToken = std::forward<ClientTokenT>(value);
249 template <
typename ClientTokenT = Aws::String>
262 OrganizationConfiguration m_organizationConfiguration;
277 bool m_nameHasBeenSet =
false;
278 bool m_descriptionHasBeenSet =
false;
279 bool m_ruleTypeHasBeenSet =
false;
280 bool m_organizationConfigurationHasBeenSet =
false;
281 bool m_priorityHasBeenSet =
false;
282 bool m_recommendedActionTypesHasBeenSet =
false;
283 bool m_criteriaHasBeenSet =
false;
284 bool m_scheduleHasBeenSet =
false;
285 bool m_statusHasBeenSet =
false;
286 bool m_tagsHasBeenSet =
false;
287 bool m_clientTokenHasBeenSet =
true;
CreateAutomationRuleRequest & WithRecommendedActionTypes(RecommendedActionTypesT &&value)
const Schedule & GetSchedule() const
virtual const char * GetServiceRequestName() const override
bool DescriptionHasBeenSet() const
AWS_COMPUTEOPTIMIZERAUTOMATION_API CreateAutomationRuleRequest()=default
CreateAutomationRuleRequest & WithCriteria(CriteriaT &&value)
const Criteria & GetCriteria() const
CreateAutomationRuleRequest & WithOrganizationConfiguration(OrganizationConfigurationT &&value)
CreateAutomationRuleRequest & WithDescription(DescriptionT &&value)
CreateAutomationRuleRequest & WithTags(TagsT &&value)
CreateAutomationRuleRequest & WithName(NameT &&value)
bool NameHasBeenSet() const
RuleType GetRuleType() const
bool TagsHasBeenSet() const
bool RecommendedActionTypesHasBeenSet() const
CreateAutomationRuleRequest & WithPriority(PriorityT &&value)
bool CriteriaHasBeenSet() const
void SetSchedule(ScheduleT &&value)
CreateAutomationRuleRequest & AddTags(TagsT &&value)
CreateAutomationRuleRequest & WithStatus(RuleStatus value)
const Aws::Vector< RecommendedActionType > & GetRecommendedActionTypes() const
const Aws::String & GetPriority() const
void SetOrganizationConfiguration(OrganizationConfigurationT &&value)
CreateAutomationRuleRequest & AddRecommendedActionTypes(RecommendedActionType value)
bool ClientTokenHasBeenSet() const
CreateAutomationRuleRequest & WithRuleType(RuleType value)
RuleStatus GetStatus() const
CreateAutomationRuleRequest & WithSchedule(ScheduleT &&value)
void SetTags(TagsT &&value)
const Aws::Vector< Tag > & GetTags() const
bool PriorityHasBeenSet() const
const Aws::String & GetName() const
CreateAutomationRuleRequest & WithClientToken(ClientTokenT &&value)
AWS_COMPUTEOPTIMIZERAUTOMATION_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
void SetRecommendedActionTypes(RecommendedActionTypesT &&value)
const OrganizationConfiguration & GetOrganizationConfiguration() const
bool RuleTypeHasBeenSet() const
void SetPriority(PriorityT &&value)
void SetStatus(RuleStatus value)
void SetClientToken(ClientTokenT &&value)
const Aws::String & GetDescription() const
void SetRuleType(RuleType value)
bool ScheduleHasBeenSet() const
void SetCriteria(CriteriaT &&value)
void SetDescription(DescriptionT &&value)
bool StatusHasBeenSet() const
bool OrganizationConfigurationHasBeenSet() const
AWS_COMPUTEOPTIMIZERAUTOMATION_API Aws::String SerializePayload() const override
void SetName(NameT &&value)
const Aws::String & GetClientToken() const
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