7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/model/AccountScope.h>
9#include <aws/ce/model/LookbackPeriodInDays.h>
10#include <aws/ce/model/SupportedSavingsPlansType.h>
11#include <aws/ce/model/TermInYears.h>
12#include <aws/ce/model/PaymentOption.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15#include <aws/ce/model/RecommendationDetailHourlyMetrics.h>
121 inline void SetAccountId(
const char* value) { m_accountIdHasBeenSet =
true; m_accountId.assign(value); }
136 inline void SetCurrencyCode(
const char* value) { m_currencyCodeHasBeenSet =
true; m_currencyCode.assign(value); }
150 inline void SetInstanceFamily(
const char* value) { m_instanceFamilyHasBeenSet =
true; m_instanceFamily.assign(value); }
164 inline void SetRegion(
const char* value) { m_regionHasBeenSet =
true; m_region.assign(value); }
178 inline void SetOfferingId(
const char* value) { m_offeringIdHasBeenSet =
true; m_offeringId.assign(value); }
190 inline void SetGenerationTimestamp(
const char* value) { m_generationTimestampHasBeenSet =
true; m_generationTimestamp.assign(value); }
202 inline void SetLatestUsageTimestamp(
const char* value) { m_latestUsageTimestampHasBeenSet =
true; m_latestUsageTimestamp.assign(value); }
291 inline void SetEstimatedOnDemandCost(
const char* value) { m_estimatedOnDemandCostHasBeenSet =
true; m_estimatedOnDemandCost.assign(value); }
322 inline void SetEstimatedROI(
const char* value) { m_estimatedROIHasBeenSet =
true; m_estimatedROI.assign(value); }
337 inline void SetEstimatedSPCost(
const char* value) { m_estimatedSPCostHasBeenSet =
true; m_estimatedSPCost.assign(value); }
352 inline void SetEstimatedSavingsAmount(
const char* value) { m_estimatedSavingsAmountHasBeenSet =
true; m_estimatedSavingsAmount.assign(value); }
381 inline void SetExistingHourlyCommitment(
const char* value) { m_existingHourlyCommitmentHasBeenSet =
true; m_existingHourlyCommitment.assign(value); }
411 inline void SetUpfrontCost(
const char* value) { m_upfrontCostHasBeenSet =
true; m_upfrontCost.assign(value); }
425 inline void SetCurrentAverageCoverage(
const char* value) { m_currentAverageCoverageHasBeenSet =
true; m_currentAverageCoverage.assign(value); }
439 inline void SetEstimatedAverageCoverage(
const char* value) { m_estimatedAverageCoverageHasBeenSet =
true; m_estimatedAverageCoverage.assign(value); }
462 bool m_accountScopeHasBeenSet =
false;
465 bool m_lookbackPeriodInDaysHasBeenSet =
false;
468 bool m_savingsPlansTypeHasBeenSet =
false;
471 bool m_termInYearsHasBeenSet =
false;
474 bool m_paymentOptionHasBeenSet =
false;
477 bool m_accountIdHasBeenSet =
false;
480 bool m_currencyCodeHasBeenSet =
false;
483 bool m_instanceFamilyHasBeenSet =
false;
486 bool m_regionHasBeenSet =
false;
489 bool m_offeringIdHasBeenSet =
false;
492 bool m_generationTimestampHasBeenSet =
false;
495 bool m_latestUsageTimestampHasBeenSet =
false;
498 bool m_currentAverageHourlyOnDemandSpendHasBeenSet =
false;
501 bool m_currentMaximumHourlyOnDemandSpendHasBeenSet =
false;
504 bool m_currentMinimumHourlyOnDemandSpendHasBeenSet =
false;
507 bool m_estimatedAverageUtilizationHasBeenSet =
false;
510 bool m_estimatedMonthlySavingsAmountHasBeenSet =
false;
513 bool m_estimatedOnDemandCostHasBeenSet =
false;
515 Aws::String m_estimatedOnDemandCostWithCurrentCommitment;
516 bool m_estimatedOnDemandCostWithCurrentCommitmentHasBeenSet =
false;
519 bool m_estimatedROIHasBeenSet =
false;
522 bool m_estimatedSPCostHasBeenSet =
false;
525 bool m_estimatedSavingsAmountHasBeenSet =
false;
528 bool m_estimatedSavingsPercentageHasBeenSet =
false;
531 bool m_existingHourlyCommitmentHasBeenSet =
false;
534 bool m_hourlyCommitmentToPurchaseHasBeenSet =
false;
537 bool m_upfrontCostHasBeenSet =
false;
540 bool m_currentAverageCoverageHasBeenSet =
false;
543 bool m_estimatedAverageCoverageHasBeenSet =
false;
546 bool m_metricsOverLookbackPeriodHasBeenSet =
false;
void SetCurrencyCode(const Aws::String &value)
RecommendationDetailData & WithGenerationTimestamp(const Aws::String &value)
bool EstimatedMonthlySavingsAmountHasBeenSet() const
RecommendationDetailData & WithEstimatedOnDemandCost(const Aws::String &value)
void SetCurrentAverageCoverage(const Aws::String &value)
RecommendationDetailData & WithExistingHourlyCommitment(Aws::String &&value)
void SetEstimatedOnDemandCost(const char *value)
const Aws::String & GetUpfrontCost() const
const TermInYears & GetTermInYears() const
RecommendationDetailData & WithEstimatedAverageUtilization(Aws::String &&value)
AWS_COSTEXPLORER_API RecommendationDetailData(Aws::Utils::Json::JsonView jsonValue)
void SetInstanceFamily(const Aws::String &value)
bool CurrentMaximumHourlyOnDemandSpendHasBeenSet() const
void SetUpfrontCost(const char *value)
RecommendationDetailData & WithEstimatedAverageUtilization(const char *value)
RecommendationDetailData & WithSavingsPlansType(const SupportedSavingsPlansType &value)
RecommendationDetailData & WithUpfrontCost(Aws::String &&value)
RecommendationDetailData & WithEstimatedSavingsAmount(Aws::String &&value)
RecommendationDetailData & WithSavingsPlansType(SupportedSavingsPlansType &&value)
bool MetricsOverLookbackPeriodHasBeenSet() const
RecommendationDetailData & WithTermInYears(TermInYears &&value)
void SetPaymentOption(PaymentOption &&value)
void SetEstimatedAverageCoverage(const char *value)
void SetEstimatedAverageCoverage(const Aws::String &value)
void SetRegion(const char *value)
RecommendationDetailData & WithRegion(Aws::String &&value)
RecommendationDetailData & WithLookbackPeriodInDays(const LookbackPeriodInDays &value)
bool EstimatedSavingsPercentageHasBeenSet() const
void SetEstimatedMonthlySavingsAmount(const char *value)
const Aws::String & GetEstimatedOnDemandCostWithCurrentCommitment() const
void SetAccountScope(const AccountScope &value)
RecommendationDetailData & WithCurrencyCode(const Aws::String &value)
bool EstimatedSavingsAmountHasBeenSet() const
RecommendationDetailData & WithEstimatedMonthlySavingsAmount(const Aws::String &value)
const Aws::String & GetEstimatedSavingsAmount() const
const Aws::String & GetRegion() const
bool EstimatedOnDemandCostHasBeenSet() const
bool GenerationTimestampHasBeenSet() const
void SetCurrentMinimumHourlyOnDemandSpend(const char *value)
const Aws::String & GetHourlyCommitmentToPurchase() const
RecommendationDetailData & WithEstimatedSavingsPercentage(const char *value)
const Aws::String & GetEstimatedSavingsPercentage() const
void SetUpfrontCost(const Aws::String &value)
RecommendationDetailData & WithLatestUsageTimestamp(const Aws::String &value)
void SetLookbackPeriodInDays(LookbackPeriodInDays &&value)
void SetEstimatedOnDemandCostWithCurrentCommitment(const Aws::String &value)
void SetCurrentMinimumHourlyOnDemandSpend(const Aws::String &value)
void SetCurrentAverageHourlyOnDemandSpend(const char *value)
void SetEstimatedMonthlySavingsAmount(const Aws::String &value)
RecommendationDetailData & WithCurrentAverageCoverage(Aws::String &&value)
void SetEstimatedSavingsAmount(const Aws::String &value)
RecommendationDetailData & WithEstimatedOnDemandCostWithCurrentCommitment(Aws::String &&value)
void SetCurrencyCode(const char *value)
void SetLatestUsageTimestamp(Aws::String &&value)
void SetExistingHourlyCommitment(const char *value)
void SetCurrentMinimumHourlyOnDemandSpend(Aws::String &&value)
void SetOfferingId(const char *value)
bool HourlyCommitmentToPurchaseHasBeenSet() const
RecommendationDetailData & WithEstimatedAverageCoverage(Aws::String &&value)
void SetAccountScope(AccountScope &&value)
void SetSavingsPlansType(SupportedSavingsPlansType &&value)
RecommendationDetailData & WithHourlyCommitmentToPurchase(Aws::String &&value)
RecommendationDetailData & WithCurrencyCode(const char *value)
const Aws::String & GetEstimatedOnDemandCost() const
const Aws::String & GetCurrencyCode() const
RecommendationDetailData & WithEstimatedAverageCoverage(const Aws::String &value)
bool EstimatedROIHasBeenSet() const
RecommendationDetailData & WithEstimatedOnDemandCostWithCurrentCommitment(const char *value)
void SetOfferingId(Aws::String &&value)
RecommendationDetailData & WithEstimatedSavingsAmount(const Aws::String &value)
RecommendationDetailData & WithLatestUsageTimestamp(Aws::String &&value)
RecommendationDetailData & WithOfferingId(const Aws::String &value)
RecommendationDetailData & WithCurrentAverageHourlyOnDemandSpend(const char *value)
RecommendationDetailData & WithGenerationTimestamp(const char *value)
RecommendationDetailData & WithOfferingId(const char *value)
void SetEstimatedAverageUtilization(Aws::String &&value)
void SetInstanceFamily(Aws::String &&value)
void SetExistingHourlyCommitment(const Aws::String &value)
const Aws::String & GetOfferingId() const
RecommendationDetailData & WithInstanceFamily(Aws::String &&value)
void SetExistingHourlyCommitment(Aws::String &&value)
RecommendationDetailData & WithGenerationTimestamp(Aws::String &&value)
RecommendationDetailData & WithCurrentMinimumHourlyOnDemandSpend(const char *value)
RecommendationDetailData & WithExistingHourlyCommitment(const Aws::String &value)
void SetEstimatedSPCost(const char *value)
RecommendationDetailData & WithAccountId(Aws::String &&value)
bool OfferingIdHasBeenSet() const
RecommendationDetailData & WithCurrentAverageCoverage(const char *value)
RecommendationDetailData & WithEstimatedSPCost(Aws::String &&value)
RecommendationDetailData & WithPaymentOption(const PaymentOption &value)
RecommendationDetailData & WithCurrentMinimumHourlyOnDemandSpend(Aws::String &&value)
RecommendationDetailData & WithRegion(const Aws::String &value)
void SetPaymentOption(const PaymentOption &value)
bool LookbackPeriodInDaysHasBeenSet() const
RecommendationDetailData & WithMetricsOverLookbackPeriod(Aws::Vector< RecommendationDetailHourlyMetrics > &&value)
void SetEstimatedSPCost(Aws::String &&value)
const Aws::String & GetEstimatedMonthlySavingsAmount() const
bool LatestUsageTimestampHasBeenSet() const
RecommendationDetailData & WithEstimatedROI(const char *value)
const PaymentOption & GetPaymentOption() const
bool CurrencyCodeHasBeenSet() const
bool EstimatedOnDemandCostWithCurrentCommitmentHasBeenSet() const
void SetHourlyCommitmentToPurchase(const Aws::String &value)
RecommendationDetailData & WithOfferingId(Aws::String &&value)
RecommendationDetailData & WithCurrencyCode(Aws::String &&value)
const Aws::Vector< RecommendationDetailHourlyMetrics > & GetMetricsOverLookbackPeriod() const
RecommendationDetailData & WithEstimatedOnDemandCost(const char *value)
bool CurrentMinimumHourlyOnDemandSpendHasBeenSet() const
RecommendationDetailData & WithEstimatedMonthlySavingsAmount(const char *value)
const Aws::String & GetEstimatedAverageCoverage() const
bool CurrentAverageCoverageHasBeenSet() const
void SetEstimatedSavingsAmount(const char *value)
const Aws::String & GetLatestUsageTimestamp() const
RecommendationDetailData & WithEstimatedAverageCoverage(const char *value)
RecommendationDetailData & WithEstimatedOnDemandCost(Aws::String &&value)
RecommendationDetailData & WithCurrentMaximumHourlyOnDemandSpend(const Aws::String &value)
RecommendationDetailData & WithEstimatedSPCost(const char *value)
bool PaymentOptionHasBeenSet() const
RecommendationDetailData & WithCurrentAverageCoverage(const Aws::String &value)
void SetRegion(Aws::String &&value)
RecommendationDetailData & WithExistingHourlyCommitment(const char *value)
void SetCurrentAverageHourlyOnDemandSpend(Aws::String &&value)
bool CurrentAverageHourlyOnDemandSpendHasBeenSet() const
const Aws::String & GetCurrentMinimumHourlyOnDemandSpend() const
void SetCurrentMaximumHourlyOnDemandSpend(Aws::String &&value)
RecommendationDetailData & WithEstimatedSavingsPercentage(Aws::String &&value)
RecommendationDetailData & WithRegion(const char *value)
RecommendationDetailData & WithLookbackPeriodInDays(LookbackPeriodInDays &&value)
void SetCurrentAverageCoverage(Aws::String &&value)
void SetCurrentAverageCoverage(const char *value)
void SetHourlyCommitmentToPurchase(const char *value)
const Aws::String & GetExistingHourlyCommitment() const
void SetGenerationTimestamp(const char *value)
bool AccountIdHasBeenSet() const
RecommendationDetailData & WithUpfrontCost(const Aws::String &value)
const AccountScope & GetAccountScope() const
RecommendationDetailData & WithCurrentMaximumHourlyOnDemandSpend(Aws::String &&value)
void SetEstimatedSPCost(const Aws::String &value)
void SetRegion(const Aws::String &value)
RecommendationDetailData & WithAccountScope(const AccountScope &value)
void SetEstimatedROI(const char *value)
RecommendationDetailData & WithCurrentMaximumHourlyOnDemandSpend(const char *value)
RecommendationDetailData & WithCurrentAverageHourlyOnDemandSpend(Aws::String &&value)
void SetCurrentMaximumHourlyOnDemandSpend(const Aws::String &value)
void SetAccountId(const char *value)
RecommendationDetailData & WithEstimatedAverageUtilization(const Aws::String &value)
void SetEstimatedOnDemandCostWithCurrentCommitment(const char *value)
void SetLatestUsageTimestamp(const char *value)
void SetOfferingId(const Aws::String &value)
void SetEstimatedAverageUtilization(const Aws::String &value)
void SetLatestUsageTimestamp(const Aws::String &value)
RecommendationDetailData & WithHourlyCommitmentToPurchase(const char *value)
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetEstimatedROI() const
RecommendationDetailData & AddMetricsOverLookbackPeriod(const RecommendationDetailHourlyMetrics &value)
void SetCurrentAverageHourlyOnDemandSpend(const Aws::String &value)
void SetInstanceFamily(const char *value)
bool EstimatedAverageUtilizationHasBeenSet() const
RecommendationDetailData & WithLatestUsageTimestamp(const char *value)
void SetEstimatedROI(Aws::String &&value)
void SetTermInYears(TermInYears &&value)
const Aws::String & GetCurrentAverageCoverage() const
RecommendationDetailData & WithPaymentOption(PaymentOption &&value)
void SetEstimatedSavingsPercentage(const char *value)
void SetEstimatedSavingsPercentage(const Aws::String &value)
void SetEstimatedOnDemandCostWithCurrentCommitment(Aws::String &&value)
void SetEstimatedOnDemandCost(Aws::String &&value)
void SetMetricsOverLookbackPeriod(const Aws::Vector< RecommendationDetailHourlyMetrics > &value)
void SetGenerationTimestamp(Aws::String &&value)
RecommendationDetailData & WithTermInYears(const TermInYears &value)
const Aws::String & GetEstimatedAverageUtilization() const
void SetLookbackPeriodInDays(const LookbackPeriodInDays &value)
const Aws::String & GetCurrentMaximumHourlyOnDemandSpend() const
bool TermInYearsHasBeenSet() const
RecommendationDetailData & WithEstimatedROI(Aws::String &&value)
bool EstimatedAverageCoverageHasBeenSet() const
const Aws::String & GetAccountId() const
const Aws::String & GetCurrentAverageHourlyOnDemandSpend() const
RecommendationDetailData & WithAccountId(const char *value)
AWS_COSTEXPLORER_API RecommendationDetailData()
void SetAccountId(Aws::String &&value)
RecommendationDetailData & WithMetricsOverLookbackPeriod(const Aws::Vector< RecommendationDetailHourlyMetrics > &value)
void SetEstimatedSavingsPercentage(Aws::String &&value)
void SetEstimatedOnDemandCost(const Aws::String &value)
const Aws::String & GetEstimatedSPCost() const
void SetSavingsPlansType(const SupportedSavingsPlansType &value)
AWS_COSTEXPLORER_API RecommendationDetailData & operator=(Aws::Utils::Json::JsonView jsonValue)
bool UpfrontCostHasBeenSet() const
void SetUpfrontCost(Aws::String &&value)
bool SavingsPlansTypeHasBeenSet() const
void SetCurrentMaximumHourlyOnDemandSpend(const char *value)
const Aws::String & GetInstanceFamily() const
bool EstimatedSPCostHasBeenSet() const
void SetTermInYears(const TermInYears &value)
const LookbackPeriodInDays & GetLookbackPeriodInDays() const
void SetMetricsOverLookbackPeriod(Aws::Vector< RecommendationDetailHourlyMetrics > &&value)
RecommendationDetailData & WithHourlyCommitmentToPurchase(const Aws::String &value)
void SetEstimatedSavingsAmount(Aws::String &&value)
void SetEstimatedROI(const Aws::String &value)
RecommendationDetailData & WithEstimatedSavingsPercentage(const Aws::String &value)
void SetEstimatedAverageCoverage(Aws::String &&value)
void SetHourlyCommitmentToPurchase(Aws::String &&value)
void SetAccountId(const Aws::String &value)
void SetCurrencyCode(Aws::String &&value)
bool InstanceFamilyHasBeenSet() const
RecommendationDetailData & WithAccountId(const Aws::String &value)
RecommendationDetailData & WithEstimatedSavingsAmount(const char *value)
const Aws::String & GetGenerationTimestamp() const
RecommendationDetailData & WithInstanceFamily(const char *value)
RecommendationDetailData & WithEstimatedROI(const Aws::String &value)
void SetEstimatedMonthlySavingsAmount(Aws::String &&value)
RecommendationDetailData & WithEstimatedSPCost(const Aws::String &value)
RecommendationDetailData & WithCurrentMinimumHourlyOnDemandSpend(const Aws::String &value)
RecommendationDetailData & WithCurrentAverageHourlyOnDemandSpend(const Aws::String &value)
bool ExistingHourlyCommitmentHasBeenSet() const
void SetGenerationTimestamp(const Aws::String &value)
RecommendationDetailData & WithAccountScope(AccountScope &&value)
bool AccountScopeHasBeenSet() const
const SupportedSavingsPlansType & GetSavingsPlansType() const
RecommendationDetailData & WithUpfrontCost(const char *value)
RecommendationDetailData & WithEstimatedMonthlySavingsAmount(Aws::String &&value)
void SetEstimatedAverageUtilization(const char *value)
bool RegionHasBeenSet() const
RecommendationDetailData & WithInstanceFamily(const Aws::String &value)
RecommendationDetailData & WithEstimatedOnDemandCostWithCurrentCommitment(const Aws::String &value)
RecommendationDetailData & AddMetricsOverLookbackPeriod(RecommendationDetailHourlyMetrics &&value)
SupportedSavingsPlansType
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue