AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
SavingsPlansPurchaseRecommendation.h
1
6#pragma once
7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/model/AccountScope.h>
9#include <aws/ce/model/SupportedSavingsPlansType.h>
10#include <aws/ce/model/TermInYears.h>
11#include <aws/ce/model/PaymentOption.h>
12#include <aws/ce/model/LookbackPeriodInDays.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/ce/model/SavingsPlansPurchaseRecommendationSummary.h>
15#include <aws/ce/model/SavingsPlansPurchaseRecommendationDetail.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 SavingsPlansPurchaseRecommendation() = default;
45 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
46
47
49
56 inline AccountScope GetAccountScope() const { return m_accountScope; }
57 inline bool AccountScopeHasBeenSet() const { return m_accountScopeHasBeenSet; }
58 inline void SetAccountScope(AccountScope value) { m_accountScopeHasBeenSet = true; m_accountScope = value; }
61
63
66 inline SupportedSavingsPlansType GetSavingsPlansType() const { return m_savingsPlansType; }
67 inline bool SavingsPlansTypeHasBeenSet() const { return m_savingsPlansTypeHasBeenSet; }
68 inline void SetSavingsPlansType(SupportedSavingsPlansType value) { m_savingsPlansTypeHasBeenSet = true; m_savingsPlansType = value; }
71
73
77 inline TermInYears GetTermInYears() const { return m_termInYears; }
78 inline bool TermInYearsHasBeenSet() const { return m_termInYearsHasBeenSet; }
79 inline void SetTermInYears(TermInYears value) { m_termInYearsHasBeenSet = true; m_termInYears = value; }
82
84
87 inline PaymentOption GetPaymentOption() const { return m_paymentOption; }
88 inline bool PaymentOptionHasBeenSet() const { return m_paymentOptionHasBeenSet; }
89 inline void SetPaymentOption(PaymentOption value) { m_paymentOptionHasBeenSet = true; m_paymentOption = value; }
92
94
97 inline LookbackPeriodInDays GetLookbackPeriodInDays() const { return m_lookbackPeriodInDays; }
98 inline bool LookbackPeriodInDaysHasBeenSet() const { return m_lookbackPeriodInDaysHasBeenSet; }
99 inline void SetLookbackPeriodInDays(LookbackPeriodInDays value) { m_lookbackPeriodInDaysHasBeenSet = true; m_lookbackPeriodInDays = value; }
102
104
108 inline const Aws::Vector<SavingsPlansPurchaseRecommendationDetail>& GetSavingsPlansPurchaseRecommendationDetails() const { return m_savingsPlansPurchaseRecommendationDetails; }
109 inline bool SavingsPlansPurchaseRecommendationDetailsHasBeenSet() const { return m_savingsPlansPurchaseRecommendationDetailsHasBeenSet; }
110 template<typename SavingsPlansPurchaseRecommendationDetailsT = Aws::Vector<SavingsPlansPurchaseRecommendationDetail>>
111 void SetSavingsPlansPurchaseRecommendationDetails(SavingsPlansPurchaseRecommendationDetailsT&& value) { m_savingsPlansPurchaseRecommendationDetailsHasBeenSet = true; m_savingsPlansPurchaseRecommendationDetails = std::forward<SavingsPlansPurchaseRecommendationDetailsT>(value); }
112 template<typename SavingsPlansPurchaseRecommendationDetailsT = Aws::Vector<SavingsPlansPurchaseRecommendationDetail>>
113 SavingsPlansPurchaseRecommendation& WithSavingsPlansPurchaseRecommendationDetails(SavingsPlansPurchaseRecommendationDetailsT&& value) { SetSavingsPlansPurchaseRecommendationDetails(std::forward<SavingsPlansPurchaseRecommendationDetailsT>(value)); return *this;}
114 template<typename SavingsPlansPurchaseRecommendationDetailsT = SavingsPlansPurchaseRecommendationDetail>
115 SavingsPlansPurchaseRecommendation& AddSavingsPlansPurchaseRecommendationDetails(SavingsPlansPurchaseRecommendationDetailsT&& value) { m_savingsPlansPurchaseRecommendationDetailsHasBeenSet = true; m_savingsPlansPurchaseRecommendationDetails.emplace_back(std::forward<SavingsPlansPurchaseRecommendationDetailsT>(value)); return *this; }
117
119
122 inline const SavingsPlansPurchaseRecommendationSummary& GetSavingsPlansPurchaseRecommendationSummary() const { return m_savingsPlansPurchaseRecommendationSummary; }
123 inline bool SavingsPlansPurchaseRecommendationSummaryHasBeenSet() const { return m_savingsPlansPurchaseRecommendationSummaryHasBeenSet; }
124 template<typename SavingsPlansPurchaseRecommendationSummaryT = SavingsPlansPurchaseRecommendationSummary>
125 void SetSavingsPlansPurchaseRecommendationSummary(SavingsPlansPurchaseRecommendationSummaryT&& value) { m_savingsPlansPurchaseRecommendationSummaryHasBeenSet = true; m_savingsPlansPurchaseRecommendationSummary = std::forward<SavingsPlansPurchaseRecommendationSummaryT>(value); }
126 template<typename SavingsPlansPurchaseRecommendationSummaryT = SavingsPlansPurchaseRecommendationSummary>
127 SavingsPlansPurchaseRecommendation& WithSavingsPlansPurchaseRecommendationSummary(SavingsPlansPurchaseRecommendationSummaryT&& value) { SetSavingsPlansPurchaseRecommendationSummary(std::forward<SavingsPlansPurchaseRecommendationSummaryT>(value)); return *this;}
129 private:
130
131 AccountScope m_accountScope{AccountScope::NOT_SET};
132 bool m_accountScopeHasBeenSet = false;
133
135 bool m_savingsPlansTypeHasBeenSet = false;
136
137 TermInYears m_termInYears{TermInYears::NOT_SET};
138 bool m_termInYearsHasBeenSet = false;
139
140 PaymentOption m_paymentOption{PaymentOption::NOT_SET};
141 bool m_paymentOptionHasBeenSet = false;
142
144 bool m_lookbackPeriodInDaysHasBeenSet = false;
145
146 Aws::Vector<SavingsPlansPurchaseRecommendationDetail> m_savingsPlansPurchaseRecommendationDetails;
147 bool m_savingsPlansPurchaseRecommendationDetailsHasBeenSet = false;
148
149 SavingsPlansPurchaseRecommendationSummary m_savingsPlansPurchaseRecommendationSummary;
150 bool m_savingsPlansPurchaseRecommendationSummaryHasBeenSet = false;
151 };
152
153} // namespace Model
154} // namespace CostExplorer
155} // namespace Aws
AWS_COSTEXPLORER_API SavingsPlansPurchaseRecommendation(Aws::Utils::Json::JsonView jsonValue)
SavingsPlansPurchaseRecommendation & WithTermInYears(TermInYears value)
void SetSavingsPlansPurchaseRecommendationSummary(SavingsPlansPurchaseRecommendationSummaryT &&value)
SavingsPlansPurchaseRecommendation & WithLookbackPeriodInDays(LookbackPeriodInDays value)
void SetSavingsPlansPurchaseRecommendationDetails(SavingsPlansPurchaseRecommendationDetailsT &&value)
const Aws::Vector< SavingsPlansPurchaseRecommendationDetail > & GetSavingsPlansPurchaseRecommendationDetails() const
SavingsPlansPurchaseRecommendation & WithSavingsPlansPurchaseRecommendationSummary(SavingsPlansPurchaseRecommendationSummaryT &&value)
SavingsPlansPurchaseRecommendation & WithSavingsPlansType(SupportedSavingsPlansType value)
SavingsPlansPurchaseRecommendation & AddSavingsPlansPurchaseRecommendationDetails(SavingsPlansPurchaseRecommendationDetailsT &&value)
SavingsPlansPurchaseRecommendation & WithSavingsPlansPurchaseRecommendationDetails(SavingsPlansPurchaseRecommendationDetailsT &&value)
AWS_COSTEXPLORER_API SavingsPlansPurchaseRecommendation & operator=(Aws::Utils::Json::JsonView jsonValue)
const SavingsPlansPurchaseRecommendationSummary & GetSavingsPlansPurchaseRecommendationSummary() const
AWS_COSTEXPLORER_API SavingsPlansPurchaseRecommendation()=default
SavingsPlansPurchaseRecommendation & WithPaymentOption(PaymentOption value)
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
SavingsPlansPurchaseRecommendation & WithAccountScope(AccountScope value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue