7#include <aws/cost-optimization-hub/CostOptimizationHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
21namespace CostOptimizationHub
47 template<
typename AccountScopeT = Aws::String>
48 void SetAccountScope(AccountScopeT&& value) { m_accountScopeHasBeenSet =
true; m_accountScope = std::forward<AccountScopeT>(value); }
49 template<
typename AccountScopeT = Aws::String>
59 template<
typename ServiceT = Aws::String>
60 void SetService(ServiceT&& value) { m_serviceHasBeenSet =
true; m_service = std::forward<ServiceT>(value); }
61 template<
typename ServiceT = Aws::String>
71 template<
typename TermT = Aws::String>
72 void SetTerm(TermT&& value) { m_termHasBeenSet =
true; m_term = std::forward<TermT>(value); }
73 template<
typename TermT = Aws::String>
83 template<
typename PaymentOptionT = Aws::String>
84 void SetPaymentOption(PaymentOptionT&& value) { m_paymentOptionHasBeenSet =
true; m_paymentOption = std::forward<PaymentOptionT>(value); }
85 template<
typename PaymentOptionT = Aws::String>
95 template<
typename ReservedInstancesRegionT = Aws::String>
96 void SetReservedInstancesRegion(ReservedInstancesRegionT&& value) { m_reservedInstancesRegionHasBeenSet =
true; m_reservedInstancesRegion = std::forward<ReservedInstancesRegionT>(value); }
97 template<
typename ReservedInstancesRegionT = Aws::String>
107 template<
typename UpfrontCostT = Aws::String>
108 void SetUpfrontCost(UpfrontCostT&& value) { m_upfrontCostHasBeenSet =
true; m_upfrontCost = std::forward<UpfrontCostT>(value); }
109 template<
typename UpfrontCostT = Aws::String>
120 template<
typename MonthlyRecurringCostT = Aws::String>
121 void SetMonthlyRecurringCost(MonthlyRecurringCostT&& value) { m_monthlyRecurringCostHasBeenSet =
true; m_monthlyRecurringCost = std::forward<MonthlyRecurringCostT>(value); }
122 template<
typename MonthlyRecurringCostT = Aws::String>
133 template<
typename NormalizedUnitsToPurchaseT = Aws::String>
134 void SetNormalizedUnitsToPurchase(NormalizedUnitsToPurchaseT&& value) { m_normalizedUnitsToPurchaseHasBeenSet =
true; m_normalizedUnitsToPurchase = std::forward<NormalizedUnitsToPurchaseT>(value); }
135 template<
typename NormalizedUnitsToPurchaseT = Aws::String>
146 template<
typename NumberOfInstancesToPurchaseT = Aws::String>
147 void SetNumberOfInstancesToPurchase(NumberOfInstancesToPurchaseT&& value) { m_numberOfInstancesToPurchaseHasBeenSet =
true; m_numberOfInstancesToPurchase = std::forward<NumberOfInstancesToPurchaseT>(value); }
148 template<
typename NumberOfInstancesToPurchaseT = Aws::String>
158 template<
typename InstanceTypeT = Aws::String>
159 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet =
true; m_instanceType = std::forward<InstanceTypeT>(value); }
160 template<
typename InstanceTypeT = Aws::String>
171 template<
typename CurrentGenerationT = Aws::String>
172 void SetCurrentGeneration(CurrentGenerationT&& value) { m_currentGenerationHasBeenSet =
true; m_currentGeneration = std::forward<CurrentGenerationT>(value); }
173 template<
typename CurrentGenerationT = Aws::String>
183 inline void SetSizeFlexEligible(
bool value) { m_sizeFlexEligibleHasBeenSet =
true; m_sizeFlexEligible = value; }
189 bool m_accountScopeHasBeenSet =
false;
192 bool m_serviceHasBeenSet =
false;
195 bool m_termHasBeenSet =
false;
198 bool m_paymentOptionHasBeenSet =
false;
201 bool m_reservedInstancesRegionHasBeenSet =
false;
204 bool m_upfrontCostHasBeenSet =
false;
207 bool m_monthlyRecurringCostHasBeenSet =
false;
210 bool m_normalizedUnitsToPurchaseHasBeenSet =
false;
213 bool m_numberOfInstancesToPurchaseHasBeenSet =
false;
216 bool m_instanceTypeHasBeenSet =
false;
219 bool m_currentGenerationHasBeenSet =
false;
221 bool m_sizeFlexEligible{
false};
222 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