7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/redshift/Redshift_EXPORTS.h>
12#include <aws/redshift/model/RecurringCharge.h>
13#include <aws/redshift/model/ReservedNodeOfferingType.h>
48 template <
typename ReservedNodeIdT = Aws::String>
50 m_reservedNodeIdHasBeenSet =
true;
51 m_reservedNodeId = std::forward<ReservedNodeIdT>(value);
53 template <
typename ReservedNodeIdT = Aws::String>
66 template <
typename ReservedNodeOfferingIdT = Aws::String>
68 m_reservedNodeOfferingIdHasBeenSet =
true;
69 m_reservedNodeOfferingId = std::forward<ReservedNodeOfferingIdT>(value);
71 template <
typename ReservedNodeOfferingIdT = Aws::String>
84 template <
typename NodeTypeT = Aws::String>
86 m_nodeTypeHasBeenSet =
true;
87 m_nodeType = std::forward<NodeTypeT>(value);
89 template <
typename NodeTypeT = Aws::String>
103 template <
typename StartTimeT = Aws::Utils::DateTime>
105 m_startTimeHasBeenSet =
true;
106 m_startTime = std::forward<StartTimeT>(value);
108 template <
typename StartTimeT = Aws::Utils::DateTime>
122 m_durationHasBeenSet =
true;
138 m_fixedPriceHasBeenSet =
true;
139 m_fixedPrice = value;
154 m_usagePriceHasBeenSet =
true;
155 m_usagePrice = value;
169 template <
typename CurrencyCodeT = Aws::String>
171 m_currencyCodeHasBeenSet =
true;
172 m_currencyCode = std::forward<CurrencyCodeT>(value);
174 template <
typename CurrencyCodeT = Aws::String>
188 m_nodeCountHasBeenSet =
true;
210 template <
typename StateT = Aws::String>
212 m_stateHasBeenSet =
true;
213 m_state = std::forward<StateT>(value);
215 template <
typename StateT = Aws::String>
217 SetState(std::forward<StateT>(value));
229 template <
typename OfferingTypeT = Aws::String>
231 m_offeringTypeHasBeenSet =
true;
232 m_offeringType = std::forward<OfferingTypeT>(value);
234 template <
typename OfferingTypeT = Aws::String>
247 template <
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
249 m_recurringChargesHasBeenSet =
true;
250 m_recurringCharges = std::forward<RecurringChargesT>(value);
252 template <
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
257 template <
typename RecurringChargesT = RecurringCharge>
259 m_recurringChargesHasBeenSet =
true;
260 m_recurringCharges.emplace_back(std::forward<RecurringChargesT>(value));
272 m_reservedNodeOfferingTypeHasBeenSet =
true;
273 m_reservedNodeOfferingType = value;
291 double m_fixedPrice{0.0};
293 double m_usagePrice{0.0};
306 bool m_reservedNodeIdHasBeenSet =
false;
307 bool m_reservedNodeOfferingIdHasBeenSet =
false;
308 bool m_nodeTypeHasBeenSet =
false;
309 bool m_startTimeHasBeenSet =
false;
310 bool m_durationHasBeenSet =
false;
311 bool m_fixedPriceHasBeenSet =
false;
312 bool m_usagePriceHasBeenSet =
false;
313 bool m_currencyCodeHasBeenSet =
false;
314 bool m_nodeCountHasBeenSet =
false;
315 bool m_stateHasBeenSet =
false;
316 bool m_offeringTypeHasBeenSet =
false;
317 bool m_recurringChargesHasBeenSet =
false;
318 bool m_reservedNodeOfferingTypeHasBeenSet =
false;
ReservedNode & WithState(StateT &&value)
bool DurationHasBeenSet() const
bool ReservedNodeOfferingTypeHasBeenSet() const
double GetFixedPrice() const
bool FixedPriceHasBeenSet() const
ReservedNode & WithOfferingType(OfferingTypeT &&value)
bool NodeTypeHasBeenSet() const
ReservedNode & WithReservedNodeOfferingType(ReservedNodeOfferingType value)
ReservedNode & WithNodeType(NodeTypeT &&value)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool StartTimeHasBeenSet() const
ReservedNode & WithFixedPrice(double value)
const Aws::String & GetCurrencyCode() const
bool ReservedNodeOfferingIdHasBeenSet() const
const Aws::String & GetReservedNodeId() const
bool NodeCountHasBeenSet() const
double GetUsagePrice() const
ReservedNode & WithDuration(int value)
ReservedNode & WithRecurringCharges(RecurringChargesT &&value)
AWS_REDSHIFT_API ReservedNode()=default
const Aws::Utils::DateTime & GetStartTime() const
void SetRecurringCharges(RecurringChargesT &&value)
ReservedNode & WithReservedNodeOfferingId(ReservedNodeOfferingIdT &&value)
bool StateHasBeenSet() const
ReservedNode & WithReservedNodeId(ReservedNodeIdT &&value)
void SetStartTime(StartTimeT &&value)
void SetFixedPrice(double value)
void SetReservedNodeOfferingType(ReservedNodeOfferingType value)
bool RecurringChargesHasBeenSet() const
const Aws::Vector< RecurringCharge > & GetRecurringCharges() const
bool CurrencyCodeHasBeenSet() const
void SetReservedNodeId(ReservedNodeIdT &&value)
ReservedNode & WithCurrencyCode(CurrencyCodeT &&value)
const Aws::String & GetReservedNodeOfferingId() const
void SetReservedNodeOfferingId(ReservedNodeOfferingIdT &&value)
AWS_REDSHIFT_API ReservedNode(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetState(StateT &&value)
AWS_REDSHIFT_API ReservedNode & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetNodeCount(int value)
const Aws::String & GetOfferingType() const
ReservedNode & AddRecurringCharges(RecurringChargesT &&value)
void SetOfferingType(OfferingTypeT &&value)
const Aws::String & GetNodeType() const
void SetNodeType(NodeTypeT &&value)
const Aws::String & GetState() const
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetCurrencyCode(CurrencyCodeT &&value)
ReservedNode & WithUsagePrice(double value)
bool OfferingTypeHasBeenSet() const
void SetDuration(int value)
bool ReservedNodeIdHasBeenSet() const
bool UsagePriceHasBeenSet() const
ReservedNode & WithNodeCount(int value)
ReservedNode & WithStartTime(StartTimeT &&value)
ReservedNodeOfferingType GetReservedNodeOfferingType() const
void SetUsagePrice(double value)
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