AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
ReservationPurchaseRecommendation.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/TermInYears.h>
11#include <aws/ce/model/PaymentOption.h>
12#include <aws/ce/model/ServiceSpecification.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/ce/model/ReservationPurchaseRecommendationSummary.h>
15#include <aws/ce/model/ReservationPurchaseRecommendationDetail.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 ReservationPurchaseRecommendation();
45 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
46
47
49
54 inline const AccountScope& GetAccountScope() const{ return m_accountScope; }
55 inline bool AccountScopeHasBeenSet() const { return m_accountScopeHasBeenSet; }
56 inline void SetAccountScope(const AccountScope& value) { m_accountScopeHasBeenSet = true; m_accountScope = value; }
57 inline void SetAccountScope(AccountScope&& value) { m_accountScopeHasBeenSet = true; m_accountScope = std::move(value); }
59 inline ReservationPurchaseRecommendation& WithAccountScope(AccountScope&& value) { SetAccountScope(std::move(value)); return *this;}
61
63
67 inline const LookbackPeriodInDays& GetLookbackPeriodInDays() const{ return m_lookbackPeriodInDays; }
68 inline bool LookbackPeriodInDaysHasBeenSet() const { return m_lookbackPeriodInDaysHasBeenSet; }
69 inline void SetLookbackPeriodInDays(const LookbackPeriodInDays& value) { m_lookbackPeriodInDaysHasBeenSet = true; m_lookbackPeriodInDays = value; }
70 inline void SetLookbackPeriodInDays(LookbackPeriodInDays&& value) { m_lookbackPeriodInDaysHasBeenSet = true; m_lookbackPeriodInDays = std::move(value); }
74
76
79 inline const TermInYears& GetTermInYears() const{ return m_termInYears; }
80 inline bool TermInYearsHasBeenSet() const { return m_termInYearsHasBeenSet; }
81 inline void SetTermInYears(const TermInYears& value) { m_termInYearsHasBeenSet = true; m_termInYears = value; }
82 inline void SetTermInYears(TermInYears&& value) { m_termInYearsHasBeenSet = true; m_termInYears = std::move(value); }
83 inline ReservationPurchaseRecommendation& WithTermInYears(const TermInYears& value) { SetTermInYears(value); return *this;}
84 inline ReservationPurchaseRecommendation& WithTermInYears(TermInYears&& value) { SetTermInYears(std::move(value)); return *this;}
86
88
92 inline const PaymentOption& GetPaymentOption() const{ return m_paymentOption; }
93 inline bool PaymentOptionHasBeenSet() const { return m_paymentOptionHasBeenSet; }
94 inline void SetPaymentOption(const PaymentOption& value) { m_paymentOptionHasBeenSet = true; m_paymentOption = value; }
95 inline void SetPaymentOption(PaymentOption&& value) { m_paymentOptionHasBeenSet = true; m_paymentOption = std::move(value); }
97 inline ReservationPurchaseRecommendation& WithPaymentOption(PaymentOption&& value) { SetPaymentOption(std::move(value)); return *this;}
99
101
105 inline const ServiceSpecification& GetServiceSpecification() const{ return m_serviceSpecification; }
106 inline bool ServiceSpecificationHasBeenSet() const { return m_serviceSpecificationHasBeenSet; }
107 inline void SetServiceSpecification(const ServiceSpecification& value) { m_serviceSpecificationHasBeenSet = true; m_serviceSpecification = value; }
108 inline void SetServiceSpecification(ServiceSpecification&& value) { m_serviceSpecificationHasBeenSet = true; m_serviceSpecification = std::move(value); }
112
114
117 inline const Aws::Vector<ReservationPurchaseRecommendationDetail>& GetRecommendationDetails() const{ return m_recommendationDetails; }
118 inline bool RecommendationDetailsHasBeenSet() const { return m_recommendationDetailsHasBeenSet; }
119 inline void SetRecommendationDetails(const Aws::Vector<ReservationPurchaseRecommendationDetail>& value) { m_recommendationDetailsHasBeenSet = true; m_recommendationDetails = value; }
120 inline void SetRecommendationDetails(Aws::Vector<ReservationPurchaseRecommendationDetail>&& value) { m_recommendationDetailsHasBeenSet = true; m_recommendationDetails = std::move(value); }
123 inline ReservationPurchaseRecommendation& AddRecommendationDetails(const ReservationPurchaseRecommendationDetail& value) { m_recommendationDetailsHasBeenSet = true; m_recommendationDetails.push_back(value); return *this; }
124 inline ReservationPurchaseRecommendation& AddRecommendationDetails(ReservationPurchaseRecommendationDetail&& value) { m_recommendationDetailsHasBeenSet = true; m_recommendationDetails.push_back(std::move(value)); return *this; }
126
128
131 inline const ReservationPurchaseRecommendationSummary& GetRecommendationSummary() const{ return m_recommendationSummary; }
132 inline bool RecommendationSummaryHasBeenSet() const { return m_recommendationSummaryHasBeenSet; }
133 inline void SetRecommendationSummary(const ReservationPurchaseRecommendationSummary& value) { m_recommendationSummaryHasBeenSet = true; m_recommendationSummary = value; }
134 inline void SetRecommendationSummary(ReservationPurchaseRecommendationSummary&& value) { m_recommendationSummaryHasBeenSet = true; m_recommendationSummary = std::move(value); }
138 private:
139
140 AccountScope m_accountScope;
141 bool m_accountScopeHasBeenSet = false;
142
143 LookbackPeriodInDays m_lookbackPeriodInDays;
144 bool m_lookbackPeriodInDaysHasBeenSet = false;
145
146 TermInYears m_termInYears;
147 bool m_termInYearsHasBeenSet = false;
148
149 PaymentOption m_paymentOption;
150 bool m_paymentOptionHasBeenSet = false;
151
152 ServiceSpecification m_serviceSpecification;
153 bool m_serviceSpecificationHasBeenSet = false;
154
156 bool m_recommendationDetailsHasBeenSet = false;
157
158 ReservationPurchaseRecommendationSummary m_recommendationSummary;
159 bool m_recommendationSummaryHasBeenSet = false;
160 };
161
162} // namespace Model
163} // namespace CostExplorer
164} // namespace Aws
ReservationPurchaseRecommendation & WithRecommendationDetails(const Aws::Vector< ReservationPurchaseRecommendationDetail > &value)
ReservationPurchaseRecommendation & WithTermInYears(TermInYears &&value)
ReservationPurchaseRecommendation & WithRecommendationSummary(ReservationPurchaseRecommendationSummary &&value)
ReservationPurchaseRecommendation & AddRecommendationDetails(const ReservationPurchaseRecommendationDetail &value)
ReservationPurchaseRecommendation & WithTermInYears(const TermInYears &value)
ReservationPurchaseRecommendation & WithAccountScope(AccountScope &&value)
void SetRecommendationSummary(ReservationPurchaseRecommendationSummary &&value)
ReservationPurchaseRecommendation & WithRecommendationDetails(Aws::Vector< ReservationPurchaseRecommendationDetail > &&value)
AWS_COSTEXPLORER_API ReservationPurchaseRecommendation & operator=(Aws::Utils::Json::JsonView jsonValue)
ReservationPurchaseRecommendation & WithPaymentOption(const PaymentOption &value)
AWS_COSTEXPLORER_API ReservationPurchaseRecommendation(Aws::Utils::Json::JsonView jsonValue)
void SetRecommendationSummary(const ReservationPurchaseRecommendationSummary &value)
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
ReservationPurchaseRecommendation & WithServiceSpecification(ServiceSpecification &&value)
ReservationPurchaseRecommendation & WithLookbackPeriodInDays(const LookbackPeriodInDays &value)
const ReservationPurchaseRecommendationSummary & GetRecommendationSummary() const
ReservationPurchaseRecommendation & WithRecommendationSummary(const ReservationPurchaseRecommendationSummary &value)
const Aws::Vector< ReservationPurchaseRecommendationDetail > & GetRecommendationDetails() const
ReservationPurchaseRecommendation & WithServiceSpecification(const ServiceSpecification &value)
void SetRecommendationDetails(const Aws::Vector< ReservationPurchaseRecommendationDetail > &value)
ReservationPurchaseRecommendation & WithPaymentOption(PaymentOption &&value)
void SetRecommendationDetails(Aws::Vector< ReservationPurchaseRecommendationDetail > &&value)
ReservationPurchaseRecommendation & AddRecommendationDetails(ReservationPurchaseRecommendationDetail &&value)
ReservationPurchaseRecommendation & WithLookbackPeriodInDays(LookbackPeriodInDays &&value)
ReservationPurchaseRecommendation & WithAccountScope(const AccountScope &value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue