7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/cost-optimization-hub/CostOptimizationHub_EXPORTS.h>
19namespace CostOptimizationHub {
41 template <
typename AccountScopeT = Aws::String>
43 m_accountScopeHasBeenSet =
true;
44 m_accountScope = std::forward<AccountScopeT>(value);
46 template <
typename AccountScopeT = Aws::String>
59 template <
typename ServiceT = Aws::String>
61 m_serviceHasBeenSet =
true;
62 m_service = std::forward<ServiceT>(value);
64 template <
typename ServiceT = Aws::String>
77 template <
typename TermT = Aws::String>
79 m_termHasBeenSet =
true;
80 m_term = std::forward<TermT>(value);
82 template <
typename TermT = Aws::String>
84 SetTerm(std::forward<TermT>(value));
95 template <
typename PaymentOptionT = Aws::String>
97 m_paymentOptionHasBeenSet =
true;
98 m_paymentOption = std::forward<PaymentOptionT>(value);
100 template <
typename PaymentOptionT = Aws::String>
113 template <
typename ReservedInstancesRegionT = Aws::String>
115 m_reservedInstancesRegionHasBeenSet =
true;
116 m_reservedInstancesRegion = std::forward<ReservedInstancesRegionT>(value);
118 template <
typename ReservedInstancesRegionT = Aws::String>
131 template <
typename UpfrontCostT = Aws::String>
133 m_upfrontCostHasBeenSet =
true;
134 m_upfrontCost = std::forward<UpfrontCostT>(value);
136 template <
typename UpfrontCostT = Aws::String>
150 template <
typename MonthlyRecurringCostT = Aws::String>
152 m_monthlyRecurringCostHasBeenSet =
true;
153 m_monthlyRecurringCost = std::forward<MonthlyRecurringCostT>(value);
155 template <
typename MonthlyRecurringCostT = Aws::String>
169 template <
typename NormalizedUnitsToPurchaseT = Aws::String>
171 m_normalizedUnitsToPurchaseHasBeenSet =
true;
172 m_normalizedUnitsToPurchase = std::forward<NormalizedUnitsToPurchaseT>(value);
174 template <
typename NormalizedUnitsToPurchaseT = Aws::String>
188 template <
typename NumberOfInstancesToPurchaseT = Aws::String>
190 m_numberOfInstancesToPurchaseHasBeenSet =
true;
191 m_numberOfInstancesToPurchase = std::forward<NumberOfInstancesToPurchaseT>(value);
193 template <
typename NumberOfInstancesToPurchaseT = Aws::String>
206 template <
typename InstanceTypeT = Aws::String>
208 m_instanceTypeHasBeenSet =
true;
209 m_instanceType = std::forward<InstanceTypeT>(value);
211 template <
typename InstanceTypeT = Aws::String>
225 template <
typename CurrentGenerationT = Aws::String>
227 m_currentGenerationHasBeenSet =
true;
228 m_currentGeneration = std::forward<CurrentGenerationT>(value);
230 template <
typename CurrentGenerationT = Aws::String>
244 m_sizeFlexEligibleHasBeenSet =
true;
245 m_sizeFlexEligible = value;
275 bool m_sizeFlexEligible{
false};
276 bool m_accountScopeHasBeenSet =
false;
277 bool m_serviceHasBeenSet =
false;
278 bool m_termHasBeenSet =
false;
279 bool m_paymentOptionHasBeenSet =
false;
280 bool m_reservedInstancesRegionHasBeenSet =
false;
281 bool m_upfrontCostHasBeenSet =
false;
282 bool m_monthlyRecurringCostHasBeenSet =
false;
283 bool m_normalizedUnitsToPurchaseHasBeenSet =
false;
284 bool m_numberOfInstancesToPurchaseHasBeenSet =
false;
285 bool m_instanceTypeHasBeenSet =
false;
286 bool m_currentGenerationHasBeenSet =
false;
287 bool m_sizeFlexEligibleHasBeenSet =
false;
bool TermHasBeenSet() const
OpenSearchReservedInstancesConfiguration & WithUpfrontCost(UpfrontCostT &&value)
OpenSearchReservedInstancesConfiguration & WithSizeFlexEligible(bool value)
void SetCurrentGeneration(CurrentGenerationT &&value)
OpenSearchReservedInstancesConfiguration & WithService(ServiceT &&value)
bool InstanceTypeHasBeenSet() const
const Aws::String & GetService() const
void SetService(ServiceT &&value)
AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const
bool MonthlyRecurringCostHasBeenSet() const
void SetNormalizedUnitsToPurchase(NormalizedUnitsToPurchaseT &&value)
bool NumberOfInstancesToPurchaseHasBeenSet() const
const Aws::String & GetInstanceType() const
void SetReservedInstancesRegion(ReservedInstancesRegionT &&value)
bool GetSizeFlexEligible() const
const Aws::String & GetPaymentOption() const
bool CurrentGenerationHasBeenSet() const
const Aws::String & GetAccountScope() const
bool AccountScopeHasBeenSet() const
bool ReservedInstancesRegionHasBeenSet() const
const Aws::String & GetMonthlyRecurringCost() const
bool SizeFlexEligibleHasBeenSet() const
const Aws::String & GetReservedInstancesRegion() const
AWS_COSTOPTIMIZATIONHUB_API OpenSearchReservedInstancesConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetInstanceType(InstanceTypeT &&value)
OpenSearchReservedInstancesConfiguration & WithInstanceType(InstanceTypeT &&value)
void SetMonthlyRecurringCost(MonthlyRecurringCostT &&value)
bool UpfrontCostHasBeenSet() const
void SetAccountScope(AccountScopeT &&value)
void SetPaymentOption(PaymentOptionT &&value)
void SetSizeFlexEligible(bool value)
void SetTerm(TermT &&value)
void SetUpfrontCost(UpfrontCostT &&value)
OpenSearchReservedInstancesConfiguration & WithCurrentGeneration(CurrentGenerationT &&value)
OpenSearchReservedInstancesConfiguration & WithAccountScope(AccountScopeT &&value)
OpenSearchReservedInstancesConfiguration & WithNormalizedUnitsToPurchase(NormalizedUnitsToPurchaseT &&value)
AWS_COSTOPTIMIZATIONHUB_API OpenSearchReservedInstancesConfiguration(Aws::Utils::Json::JsonView jsonValue)
bool PaymentOptionHasBeenSet() const
const Aws::String & GetTerm() const
const Aws::String & GetCurrentGeneration() const
OpenSearchReservedInstancesConfiguration & WithReservedInstancesRegion(ReservedInstancesRegionT &&value)
void SetNumberOfInstancesToPurchase(NumberOfInstancesToPurchaseT &&value)
AWS_COSTOPTIMIZATIONHUB_API OpenSearchReservedInstancesConfiguration()=default
bool ServiceHasBeenSet() const
OpenSearchReservedInstancesConfiguration & WithTerm(TermT &&value)
bool NormalizedUnitsToPurchaseHasBeenSet() const
OpenSearchReservedInstancesConfiguration & WithPaymentOption(PaymentOptionT &&value)
const Aws::String & GetNormalizedUnitsToPurchase() const
const Aws::String & GetUpfrontCost() const
OpenSearchReservedInstancesConfiguration & WithNumberOfInstancesToPurchase(NumberOfInstancesToPurchaseT &&value)
const Aws::String & GetNumberOfInstancesToPurchase() const
OpenSearchReservedInstancesConfiguration & WithMonthlyRecurringCost(MonthlyRecurringCostT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue