7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/compute-optimizer/model/IdleRecommendationResourceType.h>
10#include <aws/compute-optimizer/model/IdleFinding.h>
11#include <aws/compute-optimizer/model/IdleSavingsOpportunity.h>
12#include <aws/compute-optimizer/model/IdleSavingsOpportunityAfterDiscounts.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/core/utils/DateTime.h>
15#include <aws/compute-optimizer/model/IdleUtilizationMetric.h>
16#include <aws/compute-optimizer/model/Tag.h>
29namespace ComputeOptimizer
54 template<
typename ResourceArnT = Aws::String>
55 void SetResourceArn(ResourceArnT&& value) { m_resourceArnHasBeenSet =
true; m_resourceArn = std::forward<ResourceArnT>(value); }
56 template<
typename ResourceArnT = Aws::String>
66 template<
typename ResourceIdT = Aws::String>
67 void SetResourceId(ResourceIdT&& value) { m_resourceIdHasBeenSet =
true; m_resourceId = std::forward<ResourceIdT>(value); }
68 template<
typename ResourceIdT = Aws::String>
88 template<
typename AccountIdT = Aws::String>
89 void SetAccountId(AccountIdT&& value) { m_accountIdHasBeenSet =
true; m_accountId = std::forward<AccountIdT>(value); }
90 template<
typename AccountIdT = Aws::String>
110 template<
typename FindingDescriptionT = Aws::String>
111 void SetFindingDescription(FindingDescriptionT&& value) { m_findingDescriptionHasBeenSet =
true; m_findingDescription = std::forward<FindingDescriptionT>(value); }
112 template<
typename FindingDescriptionT = Aws::String>
122 template<
typename SavingsOpportunityT = IdleSavingsOpportunity>
123 void SetSavingsOpportunity(SavingsOpportunityT&& value) { m_savingsOpportunityHasBeenSet =
true; m_savingsOpportunity = std::forward<SavingsOpportunityT>(value); }
124 template<
typename SavingsOpportunityT = IdleSavingsOpportunity>
135 template<
typename SavingsOpportunityAfterDiscountsT = IdleSavingsOpportunityAfterDiscounts>
136 void SetSavingsOpportunityAfterDiscounts(SavingsOpportunityAfterDiscountsT&& value) { m_savingsOpportunityAfterDiscountsHasBeenSet =
true; m_savingsOpportunityAfterDiscounts = std::forward<SavingsOpportunityAfterDiscountsT>(value); }
137 template<
typename SavingsOpportunityAfterDiscountsT = IdleSavingsOpportunityAfterDiscounts>
148 template<
typename UtilizationMetricsT = Aws::Vector<IdleUtilizationMetric>>
149 void SetUtilizationMetrics(UtilizationMetricsT&& value) { m_utilizationMetricsHasBeenSet =
true; m_utilizationMetrics = std::forward<UtilizationMetricsT>(value); }
150 template<
typename UtilizationMetricsT = Aws::Vector<IdleUtilizationMetric>>
152 template<
typename UtilizationMetricsT = IdleUtilizationMetric>
162 inline void SetLookBackPeriodInDays(
double value) { m_lookBackPeriodInDaysHasBeenSet =
true; m_lookBackPeriodInDays = value; }
173 template<
typename LastRefreshTimestampT = Aws::Utils::DateTime>
174 void SetLastRefreshTimestamp(LastRefreshTimestampT&& value) { m_lastRefreshTimestampHasBeenSet =
true; m_lastRefreshTimestamp = std::forward<LastRefreshTimestampT>(value); }
175 template<
typename LastRefreshTimestampT = Aws::Utils::DateTime>
185 template<
typename TagsT = Aws::Vector<Tag>>
186 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
187 template<
typename TagsT = Aws::Vector<Tag>>
189 template<
typename TagsT = Tag>
195 bool m_resourceArnHasBeenSet =
false;
198 bool m_resourceIdHasBeenSet =
false;
201 bool m_resourceTypeHasBeenSet =
false;
204 bool m_accountIdHasBeenSet =
false;
207 bool m_findingHasBeenSet =
false;
210 bool m_findingDescriptionHasBeenSet =
false;
212 IdleSavingsOpportunity m_savingsOpportunity;
213 bool m_savingsOpportunityHasBeenSet =
false;
215 IdleSavingsOpportunityAfterDiscounts m_savingsOpportunityAfterDiscounts;
216 bool m_savingsOpportunityAfterDiscountsHasBeenSet =
false;
219 bool m_utilizationMetricsHasBeenSet =
false;
221 double m_lookBackPeriodInDays{0.0};
222 bool m_lookBackPeriodInDaysHasBeenSet =
false;
225 bool m_lastRefreshTimestampHasBeenSet =
false;
228 bool m_tagsHasBeenSet =
false;
bool SavingsOpportunityHasBeenSet() const
void SetResourceArn(ResourceArnT &&value)
double GetLookBackPeriodInDays() const
AWS_COMPUTEOPTIMIZER_API IdleRecommendation()=default
void SetUtilizationMetrics(UtilizationMetricsT &&value)
IdleRecommendation & AddUtilizationMetrics(UtilizationMetricsT &&value)
void SetResourceType(IdleRecommendationResourceType value)
void SetSavingsOpportunityAfterDiscounts(SavingsOpportunityAfterDiscountsT &&value)
IdleRecommendation & WithResourceId(ResourceIdT &&value)
IdleRecommendation & WithAccountId(AccountIdT &&value)
bool FindingHasBeenSet() const
IdleFinding GetFinding() const
bool ResourceTypeHasBeenSet() const
AWS_COMPUTEOPTIMIZER_API IdleRecommendation(Aws::Utils::Json::JsonView jsonValue)
void SetAccountId(AccountIdT &&value)
const IdleSavingsOpportunity & GetSavingsOpportunity() const
bool LastRefreshTimestampHasBeenSet() const
IdleRecommendation & WithFinding(IdleFinding value)
AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_COMPUTEOPTIMIZER_API IdleRecommendation & operator=(Aws::Utils::Json::JsonView jsonValue)
bool ResourceArnHasBeenSet() const
bool UtilizationMetricsHasBeenSet() const
IdleRecommendation & WithLookBackPeriodInDays(double value)
IdleRecommendation & WithFindingDescription(FindingDescriptionT &&value)
bool ResourceIdHasBeenSet() const
void SetResourceId(ResourceIdT &&value)
IdleRecommendationResourceType GetResourceType() const
IdleRecommendation & WithSavingsOpportunityAfterDiscounts(SavingsOpportunityAfterDiscountsT &&value)
const Aws::String & GetAccountId() const
IdleRecommendation & WithUtilizationMetrics(UtilizationMetricsT &&value)
void SetFindingDescription(FindingDescriptionT &&value)
const Aws::String & GetResourceId() const
IdleRecommendation & WithLastRefreshTimestamp(LastRefreshTimestampT &&value)
const Aws::String & GetFindingDescription() const
const Aws::String & GetResourceArn() const
IdleRecommendation & WithSavingsOpportunity(SavingsOpportunityT &&value)
bool FindingDescriptionHasBeenSet() const
bool SavingsOpportunityAfterDiscountsHasBeenSet() const
IdleRecommendation & WithResourceArn(ResourceArnT &&value)
bool LookBackPeriodInDaysHasBeenSet() const
const Aws::Vector< Tag > & GetTags() const
void SetTags(TagsT &&value)
void SetLookBackPeriodInDays(double value)
void SetSavingsOpportunity(SavingsOpportunityT &&value)
bool TagsHasBeenSet() const
const IdleSavingsOpportunityAfterDiscounts & GetSavingsOpportunityAfterDiscounts() const
IdleRecommendation & WithResourceType(IdleRecommendationResourceType value)
bool AccountIdHasBeenSet() const
void SetLastRefreshTimestamp(LastRefreshTimestampT &&value)
void SetFinding(IdleFinding value)
const Aws::Utils::DateTime & GetLastRefreshTimestamp() const
IdleRecommendation & WithTags(TagsT &&value)
IdleRecommendation & AddTags(TagsT &&value)
const Aws::Vector< IdleUtilizationMetric > & GetUtilizationMetrics() const
IdleRecommendationResourceType
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue