7#include <aws/opensearch/OpenSearchService_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/opensearch/model/OpenSearchPartitionInstanceType.h>
10#include <aws/opensearch/model/ReservedInstancePaymentOption.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/opensearch/model/RecurringCharge.h>
25namespace OpenSearchService
51 template<
typename ReservedInstanceOfferingIdT = Aws::String>
52 void SetReservedInstanceOfferingId(ReservedInstanceOfferingIdT&& value) { m_reservedInstanceOfferingIdHasBeenSet =
true; m_reservedInstanceOfferingId = std::forward<ReservedInstanceOfferingIdT>(value); }
53 template<
typename ReservedInstanceOfferingIdT = Aws::String>
74 inline void SetDuration(
int value) { m_durationHasBeenSet =
true; m_duration = value; }
85 inline void SetFixedPrice(
double value) { m_fixedPriceHasBeenSet =
true; m_fixedPrice = value; }
96 inline void SetUsagePrice(
double value) { m_usagePriceHasBeenSet =
true; m_usagePrice = value; }
106 template<
typename CurrencyCodeT = Aws::String>
107 void SetCurrencyCode(CurrencyCodeT&& value) { m_currencyCodeHasBeenSet =
true; m_currencyCode = std::forward<CurrencyCodeT>(value); }
108 template<
typename CurrencyCodeT = Aws::String>
129 template<
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
130 void SetRecurringCharges(RecurringChargesT&& value) { m_recurringChargesHasBeenSet =
true; m_recurringCharges = std::forward<RecurringChargesT>(value); }
131 template<
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
133 template<
typename RecurringChargesT = RecurringCharge>
139 bool m_reservedInstanceOfferingIdHasBeenSet =
false;
142 bool m_instanceTypeHasBeenSet =
false;
145 bool m_durationHasBeenSet =
false;
147 double m_fixedPrice{0.0};
148 bool m_fixedPriceHasBeenSet =
false;
150 double m_usagePrice{0.0};
151 bool m_usagePriceHasBeenSet =
false;
154 bool m_currencyCodeHasBeenSet =
false;
157 bool m_paymentOptionHasBeenSet =
false;
160 bool m_recurringChargesHasBeenSet =
false;
bool CurrencyCodeHasBeenSet() const
bool ReservedInstanceOfferingIdHasBeenSet() const
bool UsagePriceHasBeenSet() const
OpenSearchPartitionInstanceType GetInstanceType() const
ReservedInstanceOffering & WithDuration(int value)
AWS_OPENSEARCHSERVICE_API ReservedInstanceOffering()=default
AWS_OPENSEARCHSERVICE_API ReservedInstanceOffering(Aws::Utils::Json::JsonView jsonValue)
double GetFixedPrice() const
void SetDuration(int value)
ReservedInstanceOffering & WithCurrencyCode(CurrencyCodeT &&value)
bool InstanceTypeHasBeenSet() const
ReservedInstancePaymentOption GetPaymentOption() const
void SetRecurringCharges(RecurringChargesT &&value)
void SetPaymentOption(ReservedInstancePaymentOption value)
bool DurationHasBeenSet() const
ReservedInstanceOffering & WithPaymentOption(ReservedInstancePaymentOption value)
AWS_OPENSEARCHSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
ReservedInstanceOffering & WithFixedPrice(double value)
bool PaymentOptionHasBeenSet() const
bool RecurringChargesHasBeenSet() const
ReservedInstanceOffering & WithRecurringCharges(RecurringChargesT &&value)
void SetInstanceType(OpenSearchPartitionInstanceType value)
void SetUsagePrice(double value)
ReservedInstanceOffering & WithInstanceType(OpenSearchPartitionInstanceType value)
const Aws::String & GetCurrencyCode() const
ReservedInstanceOffering & WithReservedInstanceOfferingId(ReservedInstanceOfferingIdT &&value)
const Aws::Vector< RecurringCharge > & GetRecurringCharges() const
bool FixedPriceHasBeenSet() const
void SetCurrencyCode(CurrencyCodeT &&value)
ReservedInstanceOffering & AddRecurringCharges(RecurringChargesT &&value)
double GetUsagePrice() const
const Aws::String & GetReservedInstanceOfferingId() const
void SetFixedPrice(double value)
void SetReservedInstanceOfferingId(ReservedInstanceOfferingIdT &&value)
ReservedInstanceOffering & WithUsagePrice(double value)
AWS_OPENSEARCHSERVICE_API ReservedInstanceOffering & operator=(Aws::Utils::Json::JsonView jsonValue)
ReservedInstancePaymentOption
OpenSearchPartitionInstanceType
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue