7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/model/RecommendationDetailHourlyMetrics.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
21namespace CostExplorer {
43 template <
typename CurrencyCodeT = Aws::String>
45 m_currencyCodeHasBeenSet =
true;
46 m_currencyCode = std::forward<CurrencyCodeT>(value);
48 template <
typename CurrencyCodeT = Aws::String>
61 template <
typename LookbackPeriodInHoursT = Aws::String>
63 m_lookbackPeriodInHoursHasBeenSet =
true;
64 m_lookbackPeriodInHours = std::forward<LookbackPeriodInHoursT>(value);
66 template <
typename LookbackPeriodInHoursT = Aws::String>
79 template <
typename CurrentAverageCoverageT = Aws::String>
81 m_currentAverageCoverageHasBeenSet =
true;
82 m_currentAverageCoverage = std::forward<CurrentAverageCoverageT>(value);
84 template <
typename CurrentAverageCoverageT = Aws::String>
97 template <
typename CurrentAverageHourlyOnDemandSpendT = Aws::String>
99 m_currentAverageHourlyOnDemandSpendHasBeenSet =
true;
100 m_currentAverageHourlyOnDemandSpend = std::forward<CurrentAverageHourlyOnDemandSpendT>(value);
102 template <
typename CurrentAverageHourlyOnDemandSpendT = Aws::String>
115 template <
typename CurrentMaximumHourlyOnDemandSpendT = Aws::String>
117 m_currentMaximumHourlyOnDemandSpendHasBeenSet =
true;
118 m_currentMaximumHourlyOnDemandSpend = std::forward<CurrentMaximumHourlyOnDemandSpendT>(value);
120 template <
typename CurrentMaximumHourlyOnDemandSpendT = Aws::String>
133 template <
typename CurrentMinimumHourlyOnDemandSpendT = Aws::String>
135 m_currentMinimumHourlyOnDemandSpendHasBeenSet =
true;
136 m_currentMinimumHourlyOnDemandSpend = std::forward<CurrentMinimumHourlyOnDemandSpendT>(value);
138 template <
typename CurrentMinimumHourlyOnDemandSpendT = Aws::String>
151 template <
typename CurrentOnDemandSpendT = Aws::String>
153 m_currentOnDemandSpendHasBeenSet =
true;
154 m_currentOnDemandSpend = std::forward<CurrentOnDemandSpendT>(value);
156 template <
typename CurrentOnDemandSpendT = Aws::String>
169 template <
typename ExistingHourlyCommitmentT = Aws::String>
171 m_existingHourlyCommitmentHasBeenSet =
true;
172 m_existingHourlyCommitment = std::forward<ExistingHourlyCommitmentT>(value);
174 template <
typename ExistingHourlyCommitmentT = Aws::String>
187 template <
typename HourlyCommitmentToPurchaseT = Aws::String>
189 m_hourlyCommitmentToPurchaseHasBeenSet =
true;
190 m_hourlyCommitmentToPurchase = std::forward<HourlyCommitmentToPurchaseT>(value);
192 template <
typename HourlyCommitmentToPurchaseT = Aws::String>
205 template <
typename EstimatedAverageCoverageT = Aws::String>
207 m_estimatedAverageCoverageHasBeenSet =
true;
208 m_estimatedAverageCoverage = std::forward<EstimatedAverageCoverageT>(value);
210 template <
typename EstimatedAverageCoverageT = Aws::String>
223 template <
typename EstimatedAverageUtilizationT = Aws::String>
225 m_estimatedAverageUtilizationHasBeenSet =
true;
226 m_estimatedAverageUtilization = std::forward<EstimatedAverageUtilizationT>(value);
228 template <
typename EstimatedAverageUtilizationT = Aws::String>
241 template <
typename EstimatedMonthlySavingsAmountT = Aws::String>
243 m_estimatedMonthlySavingsAmountHasBeenSet =
true;
244 m_estimatedMonthlySavingsAmount = std::forward<EstimatedMonthlySavingsAmountT>(value);
246 template <
typename EstimatedMonthlySavingsAmountT = Aws::String>
260 template <
typename EstimatedOnDemandCostT = Aws::String>
262 m_estimatedOnDemandCostHasBeenSet =
true;
263 m_estimatedOnDemandCost = std::forward<EstimatedOnDemandCostT>(value);
265 template <
typename EstimatedOnDemandCostT = Aws::String>
279 return m_estimatedOnDemandCostWithCurrentCommitmentHasBeenSet;
281 template <
typename EstimatedOnDemandCostWithCurrentCommitmentT = Aws::String>
283 m_estimatedOnDemandCostWithCurrentCommitmentHasBeenSet =
true;
284 m_estimatedOnDemandCostWithCurrentCommitment = std::forward<EstimatedOnDemandCostWithCurrentCommitmentT>(value);
286 template <
typename EstimatedOnDemandCostWithCurrentCommitmentT = Aws::String>
301 template <
typename EstimatedROIT = Aws::String>
303 m_estimatedROIHasBeenSet =
true;
304 m_estimatedROI = std::forward<EstimatedROIT>(value);
306 template <
typename EstimatedROIT = Aws::String>
320 template <
typename EstimatedSavingsAmountT = Aws::String>
322 m_estimatedSavingsAmountHasBeenSet =
true;
323 m_estimatedSavingsAmount = std::forward<EstimatedSavingsAmountT>(value);
325 template <
typename EstimatedSavingsAmountT = Aws::String>
339 template <
typename EstimatedSavingsPercentageT = Aws::String>
341 m_estimatedSavingsPercentageHasBeenSet =
true;
342 m_estimatedSavingsPercentage = std::forward<EstimatedSavingsPercentageT>(value);
344 template <
typename EstimatedSavingsPercentageT = Aws::String>
358 template <
typename EstimatedCommitmentCostT = Aws::String>
360 m_estimatedCommitmentCostHasBeenSet =
true;
361 m_estimatedCommitmentCost = std::forward<EstimatedCommitmentCostT>(value);
363 template <
typename EstimatedCommitmentCostT = Aws::String>
376 template <
typename LatestUsageTimestampT = Aws::String>
378 m_latestUsageTimestampHasBeenSet =
true;
379 m_latestUsageTimestamp = std::forward<LatestUsageTimestampT>(value);
381 template <
typename LatestUsageTimestampT = Aws::String>
395 template <
typename UpfrontCostT = Aws::String>
397 m_upfrontCostHasBeenSet =
true;
398 m_upfrontCost = std::forward<UpfrontCostT>(value);
400 template <
typename UpfrontCostT = Aws::String>
413 template <
typename AdditionalMetadataT = Aws::String>
415 m_additionalMetadataHasBeenSet =
true;
416 m_additionalMetadata = std::forward<AdditionalMetadataT>(value);
418 template <
typename AdditionalMetadataT = Aws::String>
432 template <
typename MetricsOverLookbackPeriodT = Aws::Vector<RecommendationDetailHourlyMetrics>>
434 m_metricsOverLookbackPeriodHasBeenSet =
true;
435 m_metricsOverLookbackPeriod = std::forward<MetricsOverLookbackPeriodT>(value);
437 template <
typename MetricsOverLookbackPeriodT = Aws::Vector<RecommendationDetailHourlyMetrics>>
442 template <
typename MetricsOverLookbackPeriodT = RecommendationDetailHourlyMetrics>
444 m_metricsOverLookbackPeriodHasBeenSet =
true;
445 m_metricsOverLookbackPeriod.emplace_back(std::forward<MetricsOverLookbackPeriodT>(value));
476 Aws::String m_estimatedOnDemandCostWithCurrentCommitment;
493 bool m_currencyCodeHasBeenSet =
false;
494 bool m_lookbackPeriodInHoursHasBeenSet =
false;
495 bool m_currentAverageCoverageHasBeenSet =
false;
496 bool m_currentAverageHourlyOnDemandSpendHasBeenSet =
false;
497 bool m_currentMaximumHourlyOnDemandSpendHasBeenSet =
false;
498 bool m_currentMinimumHourlyOnDemandSpendHasBeenSet =
false;
499 bool m_currentOnDemandSpendHasBeenSet =
false;
500 bool m_existingHourlyCommitmentHasBeenSet =
false;
501 bool m_hourlyCommitmentToPurchaseHasBeenSet =
false;
502 bool m_estimatedAverageCoverageHasBeenSet =
false;
503 bool m_estimatedAverageUtilizationHasBeenSet =
false;
504 bool m_estimatedMonthlySavingsAmountHasBeenSet =
false;
505 bool m_estimatedOnDemandCostHasBeenSet =
false;
506 bool m_estimatedOnDemandCostWithCurrentCommitmentHasBeenSet =
false;
507 bool m_estimatedROIHasBeenSet =
false;
508 bool m_estimatedSavingsAmountHasBeenSet =
false;
509 bool m_estimatedSavingsPercentageHasBeenSet =
false;
510 bool m_estimatedCommitmentCostHasBeenSet =
false;
511 bool m_latestUsageTimestampHasBeenSet =
false;
512 bool m_upfrontCostHasBeenSet =
false;
513 bool m_additionalMetadataHasBeenSet =
false;
514 bool m_metricsOverLookbackPeriodHasBeenSet =
false;
void SetMetricsOverLookbackPeriod(MetricsOverLookbackPeriodT &&value)
SavingsPlansPurchaseAnalysisDetails & WithCurrentMinimumHourlyOnDemandSpend(CurrentMinimumHourlyOnDemandSpendT &&value)
const Aws::String & GetEstimatedCommitmentCost() const
void SetCurrentAverageHourlyOnDemandSpend(CurrentAverageHourlyOnDemandSpendT &&value)
bool CurrentMaximumHourlyOnDemandSpendHasBeenSet() const
void SetEstimatedOnDemandCost(EstimatedOnDemandCostT &&value)
const Aws::String & GetExistingHourlyCommitment() const
void SetCurrentMinimumHourlyOnDemandSpend(CurrentMinimumHourlyOnDemandSpendT &&value)
AWS_COSTEXPLORER_API SavingsPlansPurchaseAnalysisDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetLatestUsageTimestamp() const
const Aws::String & GetCurrentMinimumHourlyOnDemandSpend() const
void SetHourlyCommitmentToPurchase(HourlyCommitmentToPurchaseT &&value)
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
SavingsPlansPurchaseAnalysisDetails & WithLookbackPeriodInHours(LookbackPeriodInHoursT &&value)
const Aws::String & GetLookbackPeriodInHours() const
bool CurrentMinimumHourlyOnDemandSpendHasBeenSet() const
void SetEstimatedOnDemandCostWithCurrentCommitment(EstimatedOnDemandCostWithCurrentCommitmentT &&value)
bool CurrencyCodeHasBeenSet() const
const Aws::Vector< RecommendationDetailHourlyMetrics > & GetMetricsOverLookbackPeriod() const
void SetAdditionalMetadata(AdditionalMetadataT &&value)
bool LatestUsageTimestampHasBeenSet() const
void SetEstimatedAverageCoverage(EstimatedAverageCoverageT &&value)
void SetLookbackPeriodInHours(LookbackPeriodInHoursT &&value)
void SetEstimatedAverageUtilization(EstimatedAverageUtilizationT &&value)
const Aws::String & GetCurrentOnDemandSpend() const
SavingsPlansPurchaseAnalysisDetails & WithCurrentOnDemandSpend(CurrentOnDemandSpendT &&value)
SavingsPlansPurchaseAnalysisDetails & WithEstimatedROI(EstimatedROIT &&value)
bool EstimatedOnDemandCostWithCurrentCommitmentHasBeenSet() const
const Aws::String & GetEstimatedAverageUtilization() const
const Aws::String & GetEstimatedOnDemandCostWithCurrentCommitment() const
bool EstimatedSavingsPercentageHasBeenSet() const
void SetExistingHourlyCommitment(ExistingHourlyCommitmentT &&value)
bool EstimatedCommitmentCostHasBeenSet() const
SavingsPlansPurchaseAnalysisDetails & WithEstimatedOnDemandCostWithCurrentCommitment(EstimatedOnDemandCostWithCurrentCommitmentT &&value)
const Aws::String & GetEstimatedROI() const
void SetCurrentAverageCoverage(CurrentAverageCoverageT &&value)
bool LookbackPeriodInHoursHasBeenSet() const
SavingsPlansPurchaseAnalysisDetails & WithCurrentAverageCoverage(CurrentAverageCoverageT &&value)
SavingsPlansPurchaseAnalysisDetails & WithEstimatedMonthlySavingsAmount(EstimatedMonthlySavingsAmountT &&value)
void SetCurrentMaximumHourlyOnDemandSpend(CurrentMaximumHourlyOnDemandSpendT &&value)
bool CurrentAverageCoverageHasBeenSet() const
SavingsPlansPurchaseAnalysisDetails & WithEstimatedAverageUtilization(EstimatedAverageUtilizationT &&value)
SavingsPlansPurchaseAnalysisDetails & WithAdditionalMetadata(AdditionalMetadataT &&value)
bool EstimatedSavingsAmountHasBeenSet() const
SavingsPlansPurchaseAnalysisDetails & WithEstimatedOnDemandCost(EstimatedOnDemandCostT &&value)
void SetEstimatedSavingsAmount(EstimatedSavingsAmountT &&value)
bool EstimatedROIHasBeenSet() const
SavingsPlansPurchaseAnalysisDetails & WithUpfrontCost(UpfrontCostT &&value)
void SetEstimatedMonthlySavingsAmount(EstimatedMonthlySavingsAmountT &&value)
const Aws::String & GetEstimatedSavingsPercentage() const
const Aws::String & GetCurrencyCode() const
const Aws::String & GetCurrentMaximumHourlyOnDemandSpend() const
void SetCurrentOnDemandSpend(CurrentOnDemandSpendT &&value)
const Aws::String & GetUpfrontCost() const
bool EstimatedAverageCoverageHasBeenSet() const
SavingsPlansPurchaseAnalysisDetails & WithHourlyCommitmentToPurchase(HourlyCommitmentToPurchaseT &&value)
SavingsPlansPurchaseAnalysisDetails & WithLatestUsageTimestamp(LatestUsageTimestampT &&value)
bool EstimatedAverageUtilizationHasBeenSet() const
const Aws::String & GetEstimatedOnDemandCost() const
const Aws::String & GetEstimatedAverageCoverage() const
void SetEstimatedSavingsPercentage(EstimatedSavingsPercentageT &&value)
SavingsPlansPurchaseAnalysisDetails & WithCurrencyCode(CurrencyCodeT &&value)
void SetEstimatedCommitmentCost(EstimatedCommitmentCostT &&value)
bool AdditionalMetadataHasBeenSet() const
SavingsPlansPurchaseAnalysisDetails & WithMetricsOverLookbackPeriod(MetricsOverLookbackPeriodT &&value)
bool ExistingHourlyCommitmentHasBeenSet() const
bool CurrentAverageHourlyOnDemandSpendHasBeenSet() const
const Aws::String & GetEstimatedMonthlySavingsAmount() const
bool CurrentOnDemandSpendHasBeenSet() const
void SetEstimatedROI(EstimatedROIT &&value)
SavingsPlansPurchaseAnalysisDetails & AddMetricsOverLookbackPeriod(MetricsOverLookbackPeriodT &&value)
SavingsPlansPurchaseAnalysisDetails & WithEstimatedSavingsAmount(EstimatedSavingsAmountT &&value)
bool HourlyCommitmentToPurchaseHasBeenSet() const
bool EstimatedMonthlySavingsAmountHasBeenSet() const
const Aws::String & GetEstimatedSavingsAmount() const
void SetUpfrontCost(UpfrontCostT &&value)
void SetCurrencyCode(CurrencyCodeT &&value)
const Aws::String & GetHourlyCommitmentToPurchase() const
SavingsPlansPurchaseAnalysisDetails & WithEstimatedAverageCoverage(EstimatedAverageCoverageT &&value)
SavingsPlansPurchaseAnalysisDetails & WithCurrentAverageHourlyOnDemandSpend(CurrentAverageHourlyOnDemandSpendT &&value)
SavingsPlansPurchaseAnalysisDetails & WithEstimatedCommitmentCost(EstimatedCommitmentCostT &&value)
const Aws::String & GetCurrentAverageCoverage() const
AWS_COSTEXPLORER_API SavingsPlansPurchaseAnalysisDetails(Aws::Utils::Json::JsonView jsonValue)
bool UpfrontCostHasBeenSet() const
const Aws::String & GetCurrentAverageHourlyOnDemandSpend() const
AWS_COSTEXPLORER_API SavingsPlansPurchaseAnalysisDetails()=default
bool EstimatedOnDemandCostHasBeenSet() const
bool MetricsOverLookbackPeriodHasBeenSet() const
SavingsPlansPurchaseAnalysisDetails & WithEstimatedSavingsPercentage(EstimatedSavingsPercentageT &&value)
void SetLatestUsageTimestamp(LatestUsageTimestampT &&value)
SavingsPlansPurchaseAnalysisDetails & WithExistingHourlyCommitment(ExistingHourlyCommitmentT &&value)
const Aws::String & GetAdditionalMetadata() const
SavingsPlansPurchaseAnalysisDetails & WithCurrentMaximumHourlyOnDemandSpend(CurrentMaximumHourlyOnDemandSpendT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue