7#include <aws/elasticache/ElastiCache_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/elasticache/model/RecurringCharge.h>
52 template<
typename ReservedCacheNodeIdT = Aws::String>
53 void SetReservedCacheNodeId(ReservedCacheNodeIdT&& value) { m_reservedCacheNodeIdHasBeenSet =
true; m_reservedCacheNodeId = std::forward<ReservedCacheNodeIdT>(value); }
54 template<
typename ReservedCacheNodeIdT = Aws::String>
64 template<
typename ReservedCacheNodesOfferingIdT = Aws::String>
65 void SetReservedCacheNodesOfferingId(ReservedCacheNodesOfferingIdT&& value) { m_reservedCacheNodesOfferingIdHasBeenSet =
true; m_reservedCacheNodesOfferingId = std::forward<ReservedCacheNodesOfferingIdT>(value); }
66 template<
typename ReservedCacheNodesOfferingIdT = Aws::String>
147 template<
typename CacheNodeTypeT = Aws::String>
148 void SetCacheNodeType(CacheNodeTypeT&& value) { m_cacheNodeTypeHasBeenSet =
true; m_cacheNodeType = std::forward<CacheNodeTypeT>(value); }
149 template<
typename CacheNodeTypeT = Aws::String>
159 template<
typename StartTimeT = Aws::Utils::DateTime>
160 void SetStartTime(StartTimeT&& value) { m_startTimeHasBeenSet =
true; m_startTime = std::forward<StartTimeT>(value); }
161 template<
typename StartTimeT = Aws::Utils::DateTime>
171 inline void SetDuration(
int value) { m_durationHasBeenSet =
true; m_duration = value; }
181 inline void SetFixedPrice(
double value) { m_fixedPriceHasBeenSet =
true; m_fixedPrice = value; }
191 inline void SetUsagePrice(
double value) { m_usagePriceHasBeenSet =
true; m_usagePrice = value; }
201 inline void SetCacheNodeCount(
int value) { m_cacheNodeCountHasBeenSet =
true; m_cacheNodeCount = value; }
211 template<
typename ProductDescriptionT = Aws::String>
212 void SetProductDescription(ProductDescriptionT&& value) { m_productDescriptionHasBeenSet =
true; m_productDescription = std::forward<ProductDescriptionT>(value); }
213 template<
typename ProductDescriptionT = Aws::String>
223 template<
typename OfferingTypeT = Aws::String>
224 void SetOfferingType(OfferingTypeT&& value) { m_offeringTypeHasBeenSet =
true; m_offeringType = std::forward<OfferingTypeT>(value); }
225 template<
typename OfferingTypeT = Aws::String>
235 template<
typename StateT = Aws::String>
236 void SetState(StateT&& value) { m_stateHasBeenSet =
true; m_state = std::forward<StateT>(value); }
237 template<
typename StateT = Aws::String>
247 template<
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
248 void SetRecurringCharges(RecurringChargesT&& value) { m_recurringChargesHasBeenSet =
true; m_recurringCharges = std::forward<RecurringChargesT>(value); }
249 template<
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
251 template<
typename RecurringChargesT = RecurringCharge>
252 ReservedCacheNode&
AddRecurringCharges(RecurringChargesT&& value) { m_recurringChargesHasBeenSet =
true; m_recurringCharges.emplace_back(std::forward<RecurringChargesT>(value));
return *
this; }
263 template<
typename ReservationARNT = Aws::String>
264 void SetReservationARN(ReservationARNT&& value) { m_reservationARNHasBeenSet =
true; m_reservationARN = std::forward<ReservationARNT>(value); }
265 template<
typename ReservationARNT = Aws::String>
271 bool m_reservedCacheNodeIdHasBeenSet =
false;
274 bool m_reservedCacheNodesOfferingIdHasBeenSet =
false;
277 bool m_cacheNodeTypeHasBeenSet =
false;
280 bool m_startTimeHasBeenSet =
false;
283 bool m_durationHasBeenSet =
false;
285 double m_fixedPrice{0.0};
286 bool m_fixedPriceHasBeenSet =
false;
288 double m_usagePrice{0.0};
289 bool m_usagePriceHasBeenSet =
false;
291 int m_cacheNodeCount{0};
292 bool m_cacheNodeCountHasBeenSet =
false;
295 bool m_productDescriptionHasBeenSet =
false;
298 bool m_offeringTypeHasBeenSet =
false;
301 bool m_stateHasBeenSet =
false;
304 bool m_recurringChargesHasBeenSet =
false;
307 bool m_reservationARNHasBeenSet =
false;
bool FixedPriceHasBeenSet() const
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
bool StateHasBeenSet() const
void SetDuration(int value)
void SetCacheNodeType(CacheNodeTypeT &&value)
ReservedCacheNode & WithCacheNodeCount(int value)
ReservedCacheNode & WithReservedCacheNodeId(ReservedCacheNodeIdT &&value)
bool RecurringChargesHasBeenSet() const
void SetCacheNodeCount(int value)
bool ReservedCacheNodeIdHasBeenSet() const
ReservedCacheNode & WithReservationARN(ReservationARNT &&value)
ReservedCacheNode & WithProductDescription(ProductDescriptionT &&value)
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
ReservedCacheNode & WithCacheNodeType(CacheNodeTypeT &&value)
bool OfferingTypeHasBeenSet() const
void SetReservedCacheNodeId(ReservedCacheNodeIdT &&value)
void SetReservedCacheNodesOfferingId(ReservedCacheNodesOfferingIdT &&value)
const Aws::String & GetReservationARN() const
bool StartTimeHasBeenSet() const
void SetRecurringCharges(RecurringChargesT &&value)
ReservedCacheNode & WithReservedCacheNodesOfferingId(ReservedCacheNodesOfferingIdT &&value)
void SetUsagePrice(double value)
const Aws::String & GetReservedCacheNodeId() const
ReservedCacheNode & AddRecurringCharges(RecurringChargesT &&value)
void SetOfferingType(OfferingTypeT &&value)
const Aws::String & GetProductDescription() const
void SetProductDescription(ProductDescriptionT &&value)
AWS_ELASTICACHE_API ReservedCacheNode & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
ReservedCacheNode & WithDuration(int value)
const Aws::String & GetState() const
const Aws::Utils::DateTime & GetStartTime() const
ReservedCacheNode & WithOfferingType(OfferingTypeT &&value)
double GetUsagePrice() const
void SetStartTime(StartTimeT &&value)
void SetReservationARN(ReservationARNT &&value)
double GetFixedPrice() const
bool DurationHasBeenSet() const
void SetState(StateT &&value)
int GetCacheNodeCount() const
bool ReservationARNHasBeenSet() const
void SetFixedPrice(double value)
bool CacheNodeCountHasBeenSet() const
const Aws::String & GetCacheNodeType() const
bool ProductDescriptionHasBeenSet() const
bool ReservedCacheNodesOfferingIdHasBeenSet() const
ReservedCacheNode & WithRecurringCharges(RecurringChargesT &&value)
const Aws::Vector< RecurringCharge > & GetRecurringCharges() const
ReservedCacheNode & WithStartTime(StartTimeT &&value)
ReservedCacheNode & WithFixedPrice(double value)
const Aws::String & GetOfferingType() const
AWS_ELASTICACHE_API ReservedCacheNode()=default
ReservedCacheNode & WithState(StateT &&value)
AWS_ELASTICACHE_API ReservedCacheNode(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetReservedCacheNodesOfferingId() const
ReservedCacheNode & WithUsagePrice(double value)
bool CacheNodeTypeHasBeenSet() const
bool UsagePriceHasBeenSet() const
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