AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
RecommendationDetailData.h
1
6#pragma once
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>
16#include <utility>
17
18namespace Aws
19{
20namespace Utils
21{
22namespace Json
23{
24 class JsonValue;
25 class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace CostExplorer
29{
30namespace Model
31{
32
40 {
41 public:
42 AWS_COSTEXPLORER_API RecommendationDetailData() = default;
45 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
46
47
49
55 inline AccountScope GetAccountScope() const { return m_accountScope; }
56 inline bool AccountScopeHasBeenSet() const { return m_accountScopeHasBeenSet; }
57 inline void SetAccountScope(AccountScope value) { m_accountScopeHasBeenSet = true; m_accountScope = value; }
60
62
66 inline LookbackPeriodInDays GetLookbackPeriodInDays() const { return m_lookbackPeriodInDays; }
67 inline bool LookbackPeriodInDaysHasBeenSet() const { return m_lookbackPeriodInDaysHasBeenSet; }
68 inline void SetLookbackPeriodInDays(LookbackPeriodInDays value) { m_lookbackPeriodInDaysHasBeenSet = true; m_lookbackPeriodInDays = value; }
71
73
76 inline SupportedSavingsPlansType GetSavingsPlansType() const { return m_savingsPlansType; }
77 inline bool SavingsPlansTypeHasBeenSet() const { return m_savingsPlansTypeHasBeenSet; }
78 inline void SetSavingsPlansType(SupportedSavingsPlansType value) { m_savingsPlansTypeHasBeenSet = true; m_savingsPlansType = value; }
81
83
86 inline TermInYears GetTermInYears() const { return m_termInYears; }
87 inline bool TermInYearsHasBeenSet() const { return m_termInYearsHasBeenSet; }
88 inline void SetTermInYears(TermInYears value) { m_termInYearsHasBeenSet = true; m_termInYears = value; }
91
93
97 inline PaymentOption GetPaymentOption() const { return m_paymentOption; }
98 inline bool PaymentOptionHasBeenSet() const { return m_paymentOptionHasBeenSet; }
99 inline void SetPaymentOption(PaymentOption value) { m_paymentOptionHasBeenSet = true; m_paymentOption = value; }
102
104
107 inline const Aws::String& GetAccountId() const { return m_accountId; }
108 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
109 template<typename AccountIdT = Aws::String>
110 void SetAccountId(AccountIdT&& value) { m_accountIdHasBeenSet = true; m_accountId = std::forward<AccountIdT>(value); }
111 template<typename AccountIdT = Aws::String>
112 RecommendationDetailData& WithAccountId(AccountIdT&& value) { SetAccountId(std::forward<AccountIdT>(value)); return *this;}
114
116
120 inline const Aws::String& GetCurrencyCode() const { return m_currencyCode; }
121 inline bool CurrencyCodeHasBeenSet() const { return m_currencyCodeHasBeenSet; }
122 template<typename CurrencyCodeT = Aws::String>
123 void SetCurrencyCode(CurrencyCodeT&& value) { m_currencyCodeHasBeenSet = true; m_currencyCode = std::forward<CurrencyCodeT>(value); }
124 template<typename CurrencyCodeT = Aws::String>
125 RecommendationDetailData& WithCurrencyCode(CurrencyCodeT&& value) { SetCurrencyCode(std::forward<CurrencyCodeT>(value)); return *this;}
127
129
132 inline const Aws::String& GetInstanceFamily() const { return m_instanceFamily; }
133 inline bool InstanceFamilyHasBeenSet() const { return m_instanceFamilyHasBeenSet; }
134 template<typename InstanceFamilyT = Aws::String>
135 void SetInstanceFamily(InstanceFamilyT&& value) { m_instanceFamilyHasBeenSet = true; m_instanceFamily = std::forward<InstanceFamilyT>(value); }
136 template<typename InstanceFamilyT = Aws::String>
137 RecommendationDetailData& WithInstanceFamily(InstanceFamilyT&& value) { SetInstanceFamily(std::forward<InstanceFamilyT>(value)); return *this;}
139
141
144 inline const Aws::String& GetRegion() const { return m_region; }
145 inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; }
146 template<typename RegionT = Aws::String>
147 void SetRegion(RegionT&& value) { m_regionHasBeenSet = true; m_region = std::forward<RegionT>(value); }
148 template<typename RegionT = Aws::String>
149 RecommendationDetailData& WithRegion(RegionT&& value) { SetRegion(std::forward<RegionT>(value)); return *this;}
151
153
156 inline const Aws::String& GetOfferingId() const { return m_offeringId; }
157 inline bool OfferingIdHasBeenSet() const { return m_offeringIdHasBeenSet; }
158 template<typename OfferingIdT = Aws::String>
159 void SetOfferingId(OfferingIdT&& value) { m_offeringIdHasBeenSet = true; m_offeringId = std::forward<OfferingIdT>(value); }
160 template<typename OfferingIdT = Aws::String>
161 RecommendationDetailData& WithOfferingId(OfferingIdT&& value) { SetOfferingId(std::forward<OfferingIdT>(value)); return *this;}
163
165
166 inline const Aws::String& GetGenerationTimestamp() const { return m_generationTimestamp; }
167 inline bool GenerationTimestampHasBeenSet() const { return m_generationTimestampHasBeenSet; }
168 template<typename GenerationTimestampT = Aws::String>
169 void SetGenerationTimestamp(GenerationTimestampT&& value) { m_generationTimestampHasBeenSet = true; m_generationTimestamp = std::forward<GenerationTimestampT>(value); }
170 template<typename GenerationTimestampT = Aws::String>
171 RecommendationDetailData& WithGenerationTimestamp(GenerationTimestampT&& value) { SetGenerationTimestamp(std::forward<GenerationTimestampT>(value)); return *this;}
173
175
176 inline const Aws::String& GetLatestUsageTimestamp() const { return m_latestUsageTimestamp; }
177 inline bool LatestUsageTimestampHasBeenSet() const { return m_latestUsageTimestampHasBeenSet; }
178 template<typename LatestUsageTimestampT = Aws::String>
179 void SetLatestUsageTimestamp(LatestUsageTimestampT&& value) { m_latestUsageTimestampHasBeenSet = true; m_latestUsageTimestamp = std::forward<LatestUsageTimestampT>(value); }
180 template<typename LatestUsageTimestampT = Aws::String>
181 RecommendationDetailData& WithLatestUsageTimestamp(LatestUsageTimestampT&& value) { SetLatestUsageTimestamp(std::forward<LatestUsageTimestampT>(value)); return *this;}
183
185
189 inline const Aws::String& GetCurrentAverageHourlyOnDemandSpend() const { return m_currentAverageHourlyOnDemandSpend; }
190 inline bool CurrentAverageHourlyOnDemandSpendHasBeenSet() const { return m_currentAverageHourlyOnDemandSpendHasBeenSet; }
191 template<typename CurrentAverageHourlyOnDemandSpendT = Aws::String>
192 void SetCurrentAverageHourlyOnDemandSpend(CurrentAverageHourlyOnDemandSpendT&& value) { m_currentAverageHourlyOnDemandSpendHasBeenSet = true; m_currentAverageHourlyOnDemandSpend = std::forward<CurrentAverageHourlyOnDemandSpendT>(value); }
193 template<typename CurrentAverageHourlyOnDemandSpendT = Aws::String>
194 RecommendationDetailData& WithCurrentAverageHourlyOnDemandSpend(CurrentAverageHourlyOnDemandSpendT&& value) { SetCurrentAverageHourlyOnDemandSpend(std::forward<CurrentAverageHourlyOnDemandSpendT>(value)); return *this;}
196
198
202 inline const Aws::String& GetCurrentMaximumHourlyOnDemandSpend() const { return m_currentMaximumHourlyOnDemandSpend; }
203 inline bool CurrentMaximumHourlyOnDemandSpendHasBeenSet() const { return m_currentMaximumHourlyOnDemandSpendHasBeenSet; }
204 template<typename CurrentMaximumHourlyOnDemandSpendT = Aws::String>
205 void SetCurrentMaximumHourlyOnDemandSpend(CurrentMaximumHourlyOnDemandSpendT&& value) { m_currentMaximumHourlyOnDemandSpendHasBeenSet = true; m_currentMaximumHourlyOnDemandSpend = std::forward<CurrentMaximumHourlyOnDemandSpendT>(value); }
206 template<typename CurrentMaximumHourlyOnDemandSpendT = Aws::String>
207 RecommendationDetailData& WithCurrentMaximumHourlyOnDemandSpend(CurrentMaximumHourlyOnDemandSpendT&& value) { SetCurrentMaximumHourlyOnDemandSpend(std::forward<CurrentMaximumHourlyOnDemandSpendT>(value)); return *this;}
209
211
215 inline const Aws::String& GetCurrentMinimumHourlyOnDemandSpend() const { return m_currentMinimumHourlyOnDemandSpend; }
216 inline bool CurrentMinimumHourlyOnDemandSpendHasBeenSet() const { return m_currentMinimumHourlyOnDemandSpendHasBeenSet; }
217 template<typename CurrentMinimumHourlyOnDemandSpendT = Aws::String>
218 void SetCurrentMinimumHourlyOnDemandSpend(CurrentMinimumHourlyOnDemandSpendT&& value) { m_currentMinimumHourlyOnDemandSpendHasBeenSet = true; m_currentMinimumHourlyOnDemandSpend = std::forward<CurrentMinimumHourlyOnDemandSpendT>(value); }
219 template<typename CurrentMinimumHourlyOnDemandSpendT = Aws::String>
220 RecommendationDetailData& WithCurrentMinimumHourlyOnDemandSpend(CurrentMinimumHourlyOnDemandSpendT&& value) { SetCurrentMinimumHourlyOnDemandSpend(std::forward<CurrentMinimumHourlyOnDemandSpendT>(value)); return *this;}
222
224
227 inline const Aws::String& GetEstimatedAverageUtilization() const { return m_estimatedAverageUtilization; }
228 inline bool EstimatedAverageUtilizationHasBeenSet() const { return m_estimatedAverageUtilizationHasBeenSet; }
229 template<typename EstimatedAverageUtilizationT = Aws::String>
230 void SetEstimatedAverageUtilization(EstimatedAverageUtilizationT&& value) { m_estimatedAverageUtilizationHasBeenSet = true; m_estimatedAverageUtilization = std::forward<EstimatedAverageUtilizationT>(value); }
231 template<typename EstimatedAverageUtilizationT = Aws::String>
232 RecommendationDetailData& WithEstimatedAverageUtilization(EstimatedAverageUtilizationT&& value) { SetEstimatedAverageUtilization(std::forward<EstimatedAverageUtilizationT>(value)); return *this;}
234
236
240 inline const Aws::String& GetEstimatedMonthlySavingsAmount() const { return m_estimatedMonthlySavingsAmount; }
241 inline bool EstimatedMonthlySavingsAmountHasBeenSet() const { return m_estimatedMonthlySavingsAmountHasBeenSet; }
242 template<typename EstimatedMonthlySavingsAmountT = Aws::String>
243 void SetEstimatedMonthlySavingsAmount(EstimatedMonthlySavingsAmountT&& value) { m_estimatedMonthlySavingsAmountHasBeenSet = true; m_estimatedMonthlySavingsAmount = std::forward<EstimatedMonthlySavingsAmountT>(value); }
244 template<typename EstimatedMonthlySavingsAmountT = Aws::String>
245 RecommendationDetailData& WithEstimatedMonthlySavingsAmount(EstimatedMonthlySavingsAmountT&& value) { SetEstimatedMonthlySavingsAmount(std::forward<EstimatedMonthlySavingsAmountT>(value)); return *this;}
247
249
253 inline const Aws::String& GetEstimatedOnDemandCost() const { return m_estimatedOnDemandCost; }
254 inline bool EstimatedOnDemandCostHasBeenSet() const { return m_estimatedOnDemandCostHasBeenSet; }
255 template<typename EstimatedOnDemandCostT = Aws::String>
256 void SetEstimatedOnDemandCost(EstimatedOnDemandCostT&& value) { m_estimatedOnDemandCostHasBeenSet = true; m_estimatedOnDemandCost = std::forward<EstimatedOnDemandCostT>(value); }
257 template<typename EstimatedOnDemandCostT = Aws::String>
258 RecommendationDetailData& WithEstimatedOnDemandCost(EstimatedOnDemandCostT&& value) { SetEstimatedOnDemandCost(std::forward<EstimatedOnDemandCostT>(value)); return *this;}
260
262
266 inline const Aws::String& GetEstimatedOnDemandCostWithCurrentCommitment() const { return m_estimatedOnDemandCostWithCurrentCommitment; }
267 inline bool EstimatedOnDemandCostWithCurrentCommitmentHasBeenSet() const { return m_estimatedOnDemandCostWithCurrentCommitmentHasBeenSet; }
268 template<typename EstimatedOnDemandCostWithCurrentCommitmentT = Aws::String>
269 void SetEstimatedOnDemandCostWithCurrentCommitment(EstimatedOnDemandCostWithCurrentCommitmentT&& value) { m_estimatedOnDemandCostWithCurrentCommitmentHasBeenSet = true; m_estimatedOnDemandCostWithCurrentCommitment = std::forward<EstimatedOnDemandCostWithCurrentCommitmentT>(value); }
270 template<typename EstimatedOnDemandCostWithCurrentCommitmentT = Aws::String>
271 RecommendationDetailData& WithEstimatedOnDemandCostWithCurrentCommitment(EstimatedOnDemandCostWithCurrentCommitmentT&& value) { SetEstimatedOnDemandCostWithCurrentCommitment(std::forward<EstimatedOnDemandCostWithCurrentCommitmentT>(value)); return *this;}
273
275
280 inline const Aws::String& GetEstimatedROI() const { return m_estimatedROI; }
281 inline bool EstimatedROIHasBeenSet() const { return m_estimatedROIHasBeenSet; }
282 template<typename EstimatedROIT = Aws::String>
283 void SetEstimatedROI(EstimatedROIT&& value) { m_estimatedROIHasBeenSet = true; m_estimatedROI = std::forward<EstimatedROIT>(value); }
284 template<typename EstimatedROIT = Aws::String>
285 RecommendationDetailData& WithEstimatedROI(EstimatedROIT&& value) { SetEstimatedROI(std::forward<EstimatedROIT>(value)); return *this;}
287
289
293 inline const Aws::String& GetEstimatedSPCost() const { return m_estimatedSPCost; }
294 inline bool EstimatedSPCostHasBeenSet() const { return m_estimatedSPCostHasBeenSet; }
295 template<typename EstimatedSPCostT = Aws::String>
296 void SetEstimatedSPCost(EstimatedSPCostT&& value) { m_estimatedSPCostHasBeenSet = true; m_estimatedSPCost = std::forward<EstimatedSPCostT>(value); }
297 template<typename EstimatedSPCostT = Aws::String>
298 RecommendationDetailData& WithEstimatedSPCost(EstimatedSPCostT&& value) { SetEstimatedSPCost(std::forward<EstimatedSPCostT>(value)); return *this;}
300
302
306 inline const Aws::String& GetEstimatedSavingsAmount() const { return m_estimatedSavingsAmount; }
307 inline bool EstimatedSavingsAmountHasBeenSet() const { return m_estimatedSavingsAmountHasBeenSet; }
308 template<typename EstimatedSavingsAmountT = Aws::String>
309 void SetEstimatedSavingsAmount(EstimatedSavingsAmountT&& value) { m_estimatedSavingsAmountHasBeenSet = true; m_estimatedSavingsAmount = std::forward<EstimatedSavingsAmountT>(value); }
310 template<typename EstimatedSavingsAmountT = Aws::String>
311 RecommendationDetailData& WithEstimatedSavingsAmount(EstimatedSavingsAmountT&& value) { SetEstimatedSavingsAmount(std::forward<EstimatedSavingsAmountT>(value)); return *this;}
313
315
319 inline const Aws::String& GetEstimatedSavingsPercentage() const { return m_estimatedSavingsPercentage; }
320 inline bool EstimatedSavingsPercentageHasBeenSet() const { return m_estimatedSavingsPercentageHasBeenSet; }
321 template<typename EstimatedSavingsPercentageT = Aws::String>
322 void SetEstimatedSavingsPercentage(EstimatedSavingsPercentageT&& value) { m_estimatedSavingsPercentageHasBeenSet = true; m_estimatedSavingsPercentage = std::forward<EstimatedSavingsPercentageT>(value); }
323 template<typename EstimatedSavingsPercentageT = Aws::String>
324 RecommendationDetailData& WithEstimatedSavingsPercentage(EstimatedSavingsPercentageT&& value) { SetEstimatedSavingsPercentage(std::forward<EstimatedSavingsPercentageT>(value)); return *this;}
326
328
331 inline const Aws::String& GetExistingHourlyCommitment() const { return m_existingHourlyCommitment; }
332 inline bool ExistingHourlyCommitmentHasBeenSet() const { return m_existingHourlyCommitmentHasBeenSet; }
333 template<typename ExistingHourlyCommitmentT = Aws::String>
334 void SetExistingHourlyCommitment(ExistingHourlyCommitmentT&& value) { m_existingHourlyCommitmentHasBeenSet = true; m_existingHourlyCommitment = std::forward<ExistingHourlyCommitmentT>(value); }
335 template<typename ExistingHourlyCommitmentT = Aws::String>
336 RecommendationDetailData& WithExistingHourlyCommitment(ExistingHourlyCommitmentT&& value) { SetExistingHourlyCommitment(std::forward<ExistingHourlyCommitmentT>(value)); return *this;}
338
340
344 inline const Aws::String& GetHourlyCommitmentToPurchase() const { return m_hourlyCommitmentToPurchase; }
345 inline bool HourlyCommitmentToPurchaseHasBeenSet() const { return m_hourlyCommitmentToPurchaseHasBeenSet; }
346 template<typename HourlyCommitmentToPurchaseT = Aws::String>
347 void SetHourlyCommitmentToPurchase(HourlyCommitmentToPurchaseT&& value) { m_hourlyCommitmentToPurchaseHasBeenSet = true; m_hourlyCommitmentToPurchase = std::forward<HourlyCommitmentToPurchaseT>(value); }
348 template<typename HourlyCommitmentToPurchaseT = Aws::String>
349 RecommendationDetailData& WithHourlyCommitmentToPurchase(HourlyCommitmentToPurchaseT&& value) { SetHourlyCommitmentToPurchase(std::forward<HourlyCommitmentToPurchaseT>(value)); return *this;}
351
353
357 inline const Aws::String& GetUpfrontCost() const { return m_upfrontCost; }
358 inline bool UpfrontCostHasBeenSet() const { return m_upfrontCostHasBeenSet; }
359 template<typename UpfrontCostT = Aws::String>
360 void SetUpfrontCost(UpfrontCostT&& value) { m_upfrontCostHasBeenSet = true; m_upfrontCost = std::forward<UpfrontCostT>(value); }
361 template<typename UpfrontCostT = Aws::String>
362 RecommendationDetailData& WithUpfrontCost(UpfrontCostT&& value) { SetUpfrontCost(std::forward<UpfrontCostT>(value)); return *this;}
364
366
369 inline const Aws::String& GetCurrentAverageCoverage() const { return m_currentAverageCoverage; }
370 inline bool CurrentAverageCoverageHasBeenSet() const { return m_currentAverageCoverageHasBeenSet; }
371 template<typename CurrentAverageCoverageT = Aws::String>
372 void SetCurrentAverageCoverage(CurrentAverageCoverageT&& value) { m_currentAverageCoverageHasBeenSet = true; m_currentAverageCoverage = std::forward<CurrentAverageCoverageT>(value); }
373 template<typename CurrentAverageCoverageT = Aws::String>
374 RecommendationDetailData& WithCurrentAverageCoverage(CurrentAverageCoverageT&& value) { SetCurrentAverageCoverage(std::forward<CurrentAverageCoverageT>(value)); return *this;}
376
378
381 inline const Aws::String& GetEstimatedAverageCoverage() const { return m_estimatedAverageCoverage; }
382 inline bool EstimatedAverageCoverageHasBeenSet() const { return m_estimatedAverageCoverageHasBeenSet; }
383 template<typename EstimatedAverageCoverageT = Aws::String>
384 void SetEstimatedAverageCoverage(EstimatedAverageCoverageT&& value) { m_estimatedAverageCoverageHasBeenSet = true; m_estimatedAverageCoverage = std::forward<EstimatedAverageCoverageT>(value); }
385 template<typename EstimatedAverageCoverageT = Aws::String>
386 RecommendationDetailData& WithEstimatedAverageCoverage(EstimatedAverageCoverageT&& value) { SetEstimatedAverageCoverage(std::forward<EstimatedAverageCoverageT>(value)); return *this;}
388
390
394 inline const Aws::Vector<RecommendationDetailHourlyMetrics>& GetMetricsOverLookbackPeriod() const { return m_metricsOverLookbackPeriod; }
395 inline bool MetricsOverLookbackPeriodHasBeenSet() const { return m_metricsOverLookbackPeriodHasBeenSet; }
396 template<typename MetricsOverLookbackPeriodT = Aws::Vector<RecommendationDetailHourlyMetrics>>
397 void SetMetricsOverLookbackPeriod(MetricsOverLookbackPeriodT&& value) { m_metricsOverLookbackPeriodHasBeenSet = true; m_metricsOverLookbackPeriod = std::forward<MetricsOverLookbackPeriodT>(value); }
398 template<typename MetricsOverLookbackPeriodT = Aws::Vector<RecommendationDetailHourlyMetrics>>
399 RecommendationDetailData& WithMetricsOverLookbackPeriod(MetricsOverLookbackPeriodT&& value) { SetMetricsOverLookbackPeriod(std::forward<MetricsOverLookbackPeriodT>(value)); return *this;}
400 template<typename MetricsOverLookbackPeriodT = RecommendationDetailHourlyMetrics>
401 RecommendationDetailData& AddMetricsOverLookbackPeriod(MetricsOverLookbackPeriodT&& value) { m_metricsOverLookbackPeriodHasBeenSet = true; m_metricsOverLookbackPeriod.emplace_back(std::forward<MetricsOverLookbackPeriodT>(value)); return *this; }
403 private:
404
405 AccountScope m_accountScope{AccountScope::NOT_SET};
406 bool m_accountScopeHasBeenSet = false;
407
409 bool m_lookbackPeriodInDaysHasBeenSet = false;
410
412 bool m_savingsPlansTypeHasBeenSet = false;
413
414 TermInYears m_termInYears{TermInYears::NOT_SET};
415 bool m_termInYearsHasBeenSet = false;
416
417 PaymentOption m_paymentOption{PaymentOption::NOT_SET};
418 bool m_paymentOptionHasBeenSet = false;
419
420 Aws::String m_accountId;
421 bool m_accountIdHasBeenSet = false;
422
423 Aws::String m_currencyCode;
424 bool m_currencyCodeHasBeenSet = false;
425
426 Aws::String m_instanceFamily;
427 bool m_instanceFamilyHasBeenSet = false;
428
429 Aws::String m_region;
430 bool m_regionHasBeenSet = false;
431
432 Aws::String m_offeringId;
433 bool m_offeringIdHasBeenSet = false;
434
435 Aws::String m_generationTimestamp;
436 bool m_generationTimestampHasBeenSet = false;
437
438 Aws::String m_latestUsageTimestamp;
439 bool m_latestUsageTimestampHasBeenSet = false;
440
441 Aws::String m_currentAverageHourlyOnDemandSpend;
442 bool m_currentAverageHourlyOnDemandSpendHasBeenSet = false;
443
444 Aws::String m_currentMaximumHourlyOnDemandSpend;
445 bool m_currentMaximumHourlyOnDemandSpendHasBeenSet = false;
446
447 Aws::String m_currentMinimumHourlyOnDemandSpend;
448 bool m_currentMinimumHourlyOnDemandSpendHasBeenSet = false;
449
450 Aws::String m_estimatedAverageUtilization;
451 bool m_estimatedAverageUtilizationHasBeenSet = false;
452
453 Aws::String m_estimatedMonthlySavingsAmount;
454 bool m_estimatedMonthlySavingsAmountHasBeenSet = false;
455
456 Aws::String m_estimatedOnDemandCost;
457 bool m_estimatedOnDemandCostHasBeenSet = false;
458
459 Aws::String m_estimatedOnDemandCostWithCurrentCommitment;
460 bool m_estimatedOnDemandCostWithCurrentCommitmentHasBeenSet = false;
461
462 Aws::String m_estimatedROI;
463 bool m_estimatedROIHasBeenSet = false;
464
465 Aws::String m_estimatedSPCost;
466 bool m_estimatedSPCostHasBeenSet = false;
467
468 Aws::String m_estimatedSavingsAmount;
469 bool m_estimatedSavingsAmountHasBeenSet = false;
470
471 Aws::String m_estimatedSavingsPercentage;
472 bool m_estimatedSavingsPercentageHasBeenSet = false;
473
474 Aws::String m_existingHourlyCommitment;
475 bool m_existingHourlyCommitmentHasBeenSet = false;
476
477 Aws::String m_hourlyCommitmentToPurchase;
478 bool m_hourlyCommitmentToPurchaseHasBeenSet = false;
479
480 Aws::String m_upfrontCost;
481 bool m_upfrontCostHasBeenSet = false;
482
483 Aws::String m_currentAverageCoverage;
484 bool m_currentAverageCoverageHasBeenSet = false;
485
486 Aws::String m_estimatedAverageCoverage;
487 bool m_estimatedAverageCoverageHasBeenSet = false;
488
489 Aws::Vector<RecommendationDetailHourlyMetrics> m_metricsOverLookbackPeriod;
490 bool m_metricsOverLookbackPeriodHasBeenSet = false;
491 };
492
493} // namespace Model
494} // namespace CostExplorer
495} // namespace Aws
void SetSavingsPlansType(SupportedSavingsPlansType value)
void SetEstimatedOnDemandCostWithCurrentCommitment(EstimatedOnDemandCostWithCurrentCommitmentT &&value)
AWS_COSTEXPLORER_API RecommendationDetailData(Aws::Utils::Json::JsonView jsonValue)
void SetLatestUsageTimestamp(LatestUsageTimestampT &&value)
void SetHourlyCommitmentToPurchase(HourlyCommitmentToPurchaseT &&value)
AWS_COSTEXPLORER_API RecommendationDetailData()=default
RecommendationDetailData & WithEstimatedSPCost(EstimatedSPCostT &&value)
RecommendationDetailData & WithCurrentMinimumHourlyOnDemandSpend(CurrentMinimumHourlyOnDemandSpendT &&value)
RecommendationDetailData & WithGenerationTimestamp(GenerationTimestampT &&value)
void SetEstimatedMonthlySavingsAmount(EstimatedMonthlySavingsAmountT &&value)
RecommendationDetailData & WithCurrentMaximumHourlyOnDemandSpend(CurrentMaximumHourlyOnDemandSpendT &&value)
RecommendationDetailData & WithUpfrontCost(UpfrontCostT &&value)
RecommendationDetailData & WithEstimatedSavingsPercentage(EstimatedSavingsPercentageT &&value)
RecommendationDetailData & WithEstimatedAverageUtilization(EstimatedAverageUtilizationT &&value)
void SetEstimatedAverageUtilization(EstimatedAverageUtilizationT &&value)
RecommendationDetailData & WithPaymentOption(PaymentOption value)
RecommendationDetailData & WithEstimatedSavingsAmount(EstimatedSavingsAmountT &&value)
RecommendationDetailData & WithInstanceFamily(InstanceFamilyT &&value)
RecommendationDetailData & WithEstimatedOnDemandCostWithCurrentCommitment(EstimatedOnDemandCostWithCurrentCommitmentT &&value)
RecommendationDetailData & AddMetricsOverLookbackPeriod(MetricsOverLookbackPeriodT &&value)
RecommendationDetailData & WithRegion(RegionT &&value)
const Aws::Vector< RecommendationDetailHourlyMetrics > & GetMetricsOverLookbackPeriod() const
RecommendationDetailData & WithAccountId(AccountIdT &&value)
void SetEstimatedSavingsPercentage(EstimatedSavingsPercentageT &&value)
RecommendationDetailData & WithEstimatedMonthlySavingsAmount(EstimatedMonthlySavingsAmountT &&value)
RecommendationDetailData & WithLatestUsageTimestamp(LatestUsageTimestampT &&value)
void SetMetricsOverLookbackPeriod(MetricsOverLookbackPeriodT &&value)
void SetEstimatedOnDemandCost(EstimatedOnDemandCostT &&value)
void SetCurrentMaximumHourlyOnDemandSpend(CurrentMaximumHourlyOnDemandSpendT &&value)
RecommendationDetailData & WithTermInYears(TermInYears value)
RecommendationDetailData & WithCurrentAverageHourlyOnDemandSpend(CurrentAverageHourlyOnDemandSpendT &&value)
void SetEstimatedAverageCoverage(EstimatedAverageCoverageT &&value)
void SetEstimatedSavingsAmount(EstimatedSavingsAmountT &&value)
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
RecommendationDetailData & WithCurrencyCode(CurrencyCodeT &&value)
RecommendationDetailData & WithHourlyCommitmentToPurchase(HourlyCommitmentToPurchaseT &&value)
void SetCurrentAverageHourlyOnDemandSpend(CurrentAverageHourlyOnDemandSpendT &&value)
RecommendationDetailData & WithExistingHourlyCommitment(ExistingHourlyCommitmentT &&value)
RecommendationDetailData & WithOfferingId(OfferingIdT &&value)
void SetCurrentMinimumHourlyOnDemandSpend(CurrentMinimumHourlyOnDemandSpendT &&value)
RecommendationDetailData & WithLookbackPeriodInDays(LookbackPeriodInDays value)
void SetCurrentAverageCoverage(CurrentAverageCoverageT &&value)
AWS_COSTEXPLORER_API RecommendationDetailData & operator=(Aws::Utils::Json::JsonView jsonValue)
RecommendationDetailData & WithAccountScope(AccountScope value)
RecommendationDetailData & WithEstimatedROI(EstimatedROIT &&value)
RecommendationDetailData & WithSavingsPlansType(SupportedSavingsPlansType value)
void SetExistingHourlyCommitment(ExistingHourlyCommitmentT &&value)
RecommendationDetailData & WithEstimatedAverageCoverage(EstimatedAverageCoverageT &&value)
RecommendationDetailData & WithEstimatedOnDemandCost(EstimatedOnDemandCostT &&value)
RecommendationDetailData & WithCurrentAverageCoverage(CurrentAverageCoverageT &&value)
RecommendationDetailData & WithMetricsOverLookbackPeriod(MetricsOverLookbackPeriodT &&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