7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/redshift/Redshift_EXPORTS.h>
11#include <aws/redshift/model/RecurringCharge.h>
12#include <aws/redshift/model/ReservedNodeOfferingType.h>
45 template <
typename ReservedNodeOfferingIdT = Aws::String>
47 m_reservedNodeOfferingIdHasBeenSet =
true;
48 m_reservedNodeOfferingId = std::forward<ReservedNodeOfferingIdT>(value);
50 template <
typename ReservedNodeOfferingIdT = Aws::String>
63 template <
typename NodeTypeT = Aws::String>
65 m_nodeTypeHasBeenSet =
true;
66 m_nodeType = std::forward<NodeTypeT>(value);
68 template <
typename NodeTypeT = Aws::String>
82 m_durationHasBeenSet =
true;
99 m_fixedPriceHasBeenSet =
true;
100 m_fixedPrice = value;
116 m_usagePriceHasBeenSet =
true;
117 m_usagePrice = value;
131 template <
typename CurrencyCodeT = Aws::String>
133 m_currencyCodeHasBeenSet =
true;
134 m_currencyCode = std::forward<CurrencyCodeT>(value);
136 template <
typename CurrencyCodeT = Aws::String>
150 template <
typename OfferingTypeT = Aws::String>
152 m_offeringTypeHasBeenSet =
true;
153 m_offeringType = std::forward<OfferingTypeT>(value);
155 template <
typename OfferingTypeT = Aws::String>
170 template <
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
172 m_recurringChargesHasBeenSet =
true;
173 m_recurringCharges = std::forward<RecurringChargesT>(value);
175 template <
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
180 template <
typename RecurringChargesT = RecurringCharge>
182 m_recurringChargesHasBeenSet =
true;
183 m_recurringCharges.emplace_back(std::forward<RecurringChargesT>(value));
195 m_reservedNodeOfferingTypeHasBeenSet =
true;
196 m_reservedNodeOfferingType = value;
210 double m_fixedPrice{0.0};
212 double m_usagePrice{0.0};
221 bool m_reservedNodeOfferingIdHasBeenSet =
false;
222 bool m_nodeTypeHasBeenSet =
false;
223 bool m_durationHasBeenSet =
false;
224 bool m_fixedPriceHasBeenSet =
false;
225 bool m_usagePriceHasBeenSet =
false;
226 bool m_currencyCodeHasBeenSet =
false;
227 bool m_offeringTypeHasBeenSet =
false;
228 bool m_recurringChargesHasBeenSet =
false;
229 bool m_reservedNodeOfferingTypeHasBeenSet =
false;
void SetNodeType(NodeTypeT &&value)
ReservedNodeOffering & WithCurrencyCode(CurrencyCodeT &&value)
void SetFixedPrice(double value)
void SetDuration(int value)
ReservedNodeOffering & WithUsagePrice(double value)
double GetUsagePrice() const
ReservedNodeOffering & WithReservedNodeOfferingId(ReservedNodeOfferingIdT &&value)
bool CurrencyCodeHasBeenSet() const
ReservedNodeOffering & WithReservedNodeOfferingType(ReservedNodeOfferingType value)
AWS_REDSHIFT_API ReservedNodeOffering(const Aws::Utils::Xml::XmlNode &xmlNode)
ReservedNodeOffering & WithDuration(int value)
void SetUsagePrice(double value)
const Aws::String & GetNodeType() const
ReservedNodeOffering & AddRecurringCharges(RecurringChargesT &&value)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetCurrencyCode(CurrencyCodeT &&value)
bool FixedPriceHasBeenSet() const
bool DurationHasBeenSet() const
const Aws::Vector< RecurringCharge > & GetRecurringCharges() const
void SetReservedNodeOfferingType(ReservedNodeOfferingType value)
bool ReservedNodeOfferingTypeHasBeenSet() const
const Aws::String & GetReservedNodeOfferingId() const
void SetRecurringCharges(RecurringChargesT &&value)
ReservedNodeOffering & WithNodeType(NodeTypeT &&value)
double GetFixedPrice() const
bool ReservedNodeOfferingIdHasBeenSet() const
void SetOfferingType(OfferingTypeT &&value)
bool NodeTypeHasBeenSet() const
ReservedNodeOfferingType GetReservedNodeOfferingType() const
ReservedNodeOffering & WithRecurringCharges(RecurringChargesT &&value)
void SetReservedNodeOfferingId(ReservedNodeOfferingIdT &&value)
bool RecurringChargesHasBeenSet() const
const Aws::String & GetOfferingType() const
ReservedNodeOffering & WithFixedPrice(double value)
AWS_REDSHIFT_API ReservedNodeOffering & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetCurrencyCode() const
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
ReservedNodeOffering & WithOfferingType(OfferingTypeT &&value)
bool OfferingTypeHasBeenSet() const
bool UsagePriceHasBeenSet() const
AWS_REDSHIFT_API ReservedNodeOffering()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream