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/memory/stl/AWSVector.h>
11#include <aws/elasticache/model/RecurringCharge.h>
51 template<
typename ReservedCacheNodesOfferingIdT = Aws::String>
52 void SetReservedCacheNodesOfferingId(ReservedCacheNodesOfferingIdT&& value) { m_reservedCacheNodesOfferingIdHasBeenSet =
true; m_reservedCacheNodesOfferingId = std::forward<ReservedCacheNodesOfferingIdT>(value); }
53 template<
typename ReservedCacheNodesOfferingIdT = Aws::String>
134 template<
typename CacheNodeTypeT = Aws::String>
135 void SetCacheNodeType(CacheNodeTypeT&& value) { m_cacheNodeTypeHasBeenSet =
true; m_cacheNodeType = std::forward<CacheNodeTypeT>(value); }
136 template<
typename CacheNodeTypeT = Aws::String>
146 inline void SetDuration(
int value) { m_durationHasBeenSet =
true; m_duration = value; }
156 inline void SetFixedPrice(
double value) { m_fixedPriceHasBeenSet =
true; m_fixedPrice = value; }
166 inline void SetUsagePrice(
double value) { m_usagePriceHasBeenSet =
true; m_usagePrice = value; }
176 template<
typename ProductDescriptionT = Aws::String>
177 void SetProductDescription(ProductDescriptionT&& value) { m_productDescriptionHasBeenSet =
true; m_productDescription = std::forward<ProductDescriptionT>(value); }
178 template<
typename ProductDescriptionT = Aws::String>
188 template<
typename OfferingTypeT = Aws::String>
189 void SetOfferingType(OfferingTypeT&& value) { m_offeringTypeHasBeenSet =
true; m_offeringType = std::forward<OfferingTypeT>(value); }
190 template<
typename OfferingTypeT = Aws::String>
200 template<
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
201 void SetRecurringCharges(RecurringChargesT&& value) { m_recurringChargesHasBeenSet =
true; m_recurringCharges = std::forward<RecurringChargesT>(value); }
202 template<
typename RecurringChargesT = Aws::Vector<RecurringCharge>>
204 template<
typename RecurringChargesT = RecurringCharge>
210 bool m_reservedCacheNodesOfferingIdHasBeenSet =
false;
213 bool m_cacheNodeTypeHasBeenSet =
false;
216 bool m_durationHasBeenSet =
false;
218 double m_fixedPrice{0.0};
219 bool m_fixedPriceHasBeenSet =
false;
221 double m_usagePrice{0.0};
222 bool m_usagePriceHasBeenSet =
false;
225 bool m_productDescriptionHasBeenSet =
false;
228 bool m_offeringTypeHasBeenSet =
false;
231 bool m_recurringChargesHasBeenSet =
false;
const Aws::String & GetProductDescription() const
ReservedCacheNodesOffering & WithDuration(int value)
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool FixedPriceHasBeenSet() const
double GetUsagePrice() const
bool ReservedCacheNodesOfferingIdHasBeenSet() const
bool RecurringChargesHasBeenSet() const
bool DurationHasBeenSet() const
bool UsagePriceHasBeenSet() const
void SetDuration(int value)
ReservedCacheNodesOffering & WithOfferingType(OfferingTypeT &&value)
void SetRecurringCharges(RecurringChargesT &&value)
void SetProductDescription(ProductDescriptionT &&value)
ReservedCacheNodesOffering & AddRecurringCharges(RecurringChargesT &&value)
void SetFixedPrice(double value)
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
bool OfferingTypeHasBeenSet() const
bool CacheNodeTypeHasBeenSet() const
AWS_ELASTICACHE_API ReservedCacheNodesOffering()=default
const Aws::String & GetCacheNodeType() const
const Aws::Vector< RecurringCharge > & GetRecurringCharges() const
void SetCacheNodeType(CacheNodeTypeT &&value)
ReservedCacheNodesOffering & WithCacheNodeType(CacheNodeTypeT &&value)
ReservedCacheNodesOffering & WithFixedPrice(double value)
AWS_ELASTICACHE_API ReservedCacheNodesOffering & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
ReservedCacheNodesOffering & WithRecurringCharges(RecurringChargesT &&value)
ReservedCacheNodesOffering & WithUsagePrice(double value)
const Aws::String & GetReservedCacheNodesOfferingId() const
double GetFixedPrice() const
void SetReservedCacheNodesOfferingId(ReservedCacheNodesOfferingIdT &&value)
const Aws::String & GetOfferingType() const
void SetOfferingType(OfferingTypeT &&value)
AWS_ELASTICACHE_API ReservedCacheNodesOffering(const Aws::Utils::Xml::XmlNode &xmlNode)
bool ProductDescriptionHasBeenSet() const
void SetUsagePrice(double value)
ReservedCacheNodesOffering & WithProductDescription(ProductDescriptionT &&value)
ReservedCacheNodesOffering & WithReservedCacheNodesOfferingId(ReservedCacheNodesOfferingIdT &&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