7#include <aws/redshift/Redshift_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/redshift/model/ReservedNodeOfferingType.h>
13#include <aws/redshift/model/RecurringCharge.h>
54 template<
typename ReservedNodeIdT = Aws::String>
55 void SetReservedNodeId(ReservedNodeIdT&& value) { m_reservedNodeIdHasBeenSet =
true; m_reservedNodeId = std::forward<ReservedNodeIdT>(value); }
56 template<
typename ReservedNodeIdT = Aws::String>
66 template<
typename ReservedNodeOfferingIdT = Aws::String>
67 void SetReservedNodeOfferingId(ReservedNodeOfferingIdT&& value) { m_reservedNodeOfferingIdHasBeenSet =
true; m_reservedNodeOfferingId = std::forward<ReservedNodeOfferingIdT>(value); }
68 template<
typename ReservedNodeOfferingIdT = Aws::String>
78 template<
typename NodeTypeT = Aws::String>
79 void SetNodeType(NodeTypeT&& value) { m_nodeTypeHasBeenSet =
true; m_nodeType = std::forward<NodeTypeT>(value); }
80 template<
typename NodeTypeT = Aws::String>
91 template<
typename StartTimeT = Aws::Utils::DateTime>
92 void SetStartTime(StartTimeT&& value) { m_startTimeHasBeenSet =
true; m_startTime = std::forward<StartTimeT>(value); }
93 template<
typename StartTimeT = Aws::Utils::DateTime>
103 inline void SetDuration(
int value) { m_durationHasBeenSet =
true; m_duration = value; }
113 inline void SetFixedPrice(
double value) { m_fixedPriceHasBeenSet =
true; m_fixedPrice = value; }
123 inline void SetUsagePrice(
double value) { m_usagePriceHasBeenSet =
true; m_usagePrice = value; }
133 template<
typename CurrencyCodeT = Aws::String>
134 void SetCurrencyCode(CurrencyCodeT&& value) { m_currencyCodeHasBeenSet =
true; m_currencyCode = std::forward<CurrencyCodeT>(value); }
135 template<
typename CurrencyCodeT = Aws::String>
145 inline void SetNodeCount(
int value) { m_nodeCountHasBeenSet =
true; m_nodeCount = value; }
162 template<
typename StateT = Aws::String>
163 void SetState(StateT&& value) { m_stateHasBeenSet =
true; m_state = std::forward<StateT>(value); }
164 template<
typename StateT = Aws::String>
175 template<
typename OfferingTypeT = Aws::String>
176 void SetOfferingType(OfferingTypeT&& value) { m_offeringTypeHasBeenSet =
true; m_offeringType = std::forward<OfferingTypeT>(value); }
177 template<
typename OfferingTypeT = Aws::String>
187 template<
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
188 void SetRecurringCharges(RecurringChargesT&& value) { m_recurringChargesHasBeenSet =
true; m_recurringCharges = std::forward<RecurringChargesT>(value); }
189 template<
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
191 template<
typename RecurringChargesT = RecurringCharge>
192 ReservedNode&
AddRecurringCharges(RecurringChargesT&& value) { m_recurringChargesHasBeenSet =
true; m_recurringCharges.emplace_back(std::forward<RecurringChargesT>(value));
return *
this; }
207 bool m_reservedNodeIdHasBeenSet =
false;
210 bool m_reservedNodeOfferingIdHasBeenSet =
false;
213 bool m_nodeTypeHasBeenSet =
false;
216 bool m_startTimeHasBeenSet =
false;
219 bool m_durationHasBeenSet =
false;
221 double m_fixedPrice{0.0};
222 bool m_fixedPriceHasBeenSet =
false;
224 double m_usagePrice{0.0};
225 bool m_usagePriceHasBeenSet =
false;
228 bool m_currencyCodeHasBeenSet =
false;
231 bool m_nodeCountHasBeenSet =
false;
234 bool m_stateHasBeenSet =
false;
237 bool m_offeringTypeHasBeenSet =
false;
240 bool m_recurringChargesHasBeenSet =
false;
243 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