AWS SDK for C++  0.14.3
AWS SDK for C++
ReservedCacheNodesOffering.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
21 
22 namespace Aws
23 {
24 namespace Utils
25 {
26 namespace Xml
27 {
28  class XmlNode;
29 } // namespace Xml
30 } // namespace Utils
31 namespace ElastiCache
32 {
33 namespace Model
34 {
35 
40  {
41  public:
44  ReservedCacheNodesOffering& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
45 
46  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
47  void OutputToStream(Aws::OStream& oStream, const char* location) const;
48 
52  inline const Aws::String& GetReservedCacheNodesOfferingId() const{ return m_reservedCacheNodesOfferingId; }
53 
57  inline void SetReservedCacheNodesOfferingId(const Aws::String& value) { m_reservedCacheNodesOfferingIdHasBeenSet = true; m_reservedCacheNodesOfferingId = value; }
58 
62  inline void SetReservedCacheNodesOfferingId(Aws::String&& value) { m_reservedCacheNodesOfferingIdHasBeenSet = true; m_reservedCacheNodesOfferingId = value; }
63 
67  inline void SetReservedCacheNodesOfferingId(const char* value) { m_reservedCacheNodesOfferingIdHasBeenSet = true; m_reservedCacheNodesOfferingId.assign(value); }
68 
72  inline ReservedCacheNodesOffering& WithReservedCacheNodesOfferingId(const Aws::String& value) { SetReservedCacheNodesOfferingId(value); return *this;}
73 
77  inline ReservedCacheNodesOffering& WithReservedCacheNodesOfferingId(Aws::String&& value) { SetReservedCacheNodesOfferingId(value); return *this;}
78 
82  inline ReservedCacheNodesOffering& WithReservedCacheNodesOfferingId(const char* value) { SetReservedCacheNodesOfferingId(value); return *this;}
83 
112  inline const Aws::String& GetCacheNodeType() const{ return m_cacheNodeType; }
113 
142  inline void SetCacheNodeType(const Aws::String& value) { m_cacheNodeTypeHasBeenSet = true; m_cacheNodeType = value; }
143 
172  inline void SetCacheNodeType(Aws::String&& value) { m_cacheNodeTypeHasBeenSet = true; m_cacheNodeType = value; }
173 
202  inline void SetCacheNodeType(const char* value) { m_cacheNodeTypeHasBeenSet = true; m_cacheNodeType.assign(value); }
203 
232  inline ReservedCacheNodesOffering& WithCacheNodeType(const Aws::String& value) { SetCacheNodeType(value); return *this;}
233 
262  inline ReservedCacheNodesOffering& WithCacheNodeType(Aws::String&& value) { SetCacheNodeType(value); return *this;}
263 
292  inline ReservedCacheNodesOffering& WithCacheNodeType(const char* value) { SetCacheNodeType(value); return *this;}
293 
297  inline int GetDuration() const{ return m_duration; }
298 
302  inline void SetDuration(int value) { m_durationHasBeenSet = true; m_duration = value; }
303 
307  inline ReservedCacheNodesOffering& WithDuration(int value) { SetDuration(value); return *this;}
308 
312  inline double GetFixedPrice() const{ return m_fixedPrice; }
313 
317  inline void SetFixedPrice(double value) { m_fixedPriceHasBeenSet = true; m_fixedPrice = value; }
318 
322  inline ReservedCacheNodesOffering& WithFixedPrice(double value) { SetFixedPrice(value); return *this;}
323 
327  inline double GetUsagePrice() const{ return m_usagePrice; }
328 
332  inline void SetUsagePrice(double value) { m_usagePriceHasBeenSet = true; m_usagePrice = value; }
333 
337  inline ReservedCacheNodesOffering& WithUsagePrice(double value) { SetUsagePrice(value); return *this;}
338 
342  inline const Aws::String& GetProductDescription() const{ return m_productDescription; }
343 
347  inline void SetProductDescription(const Aws::String& value) { m_productDescriptionHasBeenSet = true; m_productDescription = value; }
348 
352  inline void SetProductDescription(Aws::String&& value) { m_productDescriptionHasBeenSet = true; m_productDescription = value; }
353 
357  inline void SetProductDescription(const char* value) { m_productDescriptionHasBeenSet = true; m_productDescription.assign(value); }
358 
362  inline ReservedCacheNodesOffering& WithProductDescription(const Aws::String& value) { SetProductDescription(value); return *this;}
363 
367  inline ReservedCacheNodesOffering& WithProductDescription(Aws::String&& value) { SetProductDescription(value); return *this;}
368 
372  inline ReservedCacheNodesOffering& WithProductDescription(const char* value) { SetProductDescription(value); return *this;}
373 
377  inline const Aws::String& GetOfferingType() const{ return m_offeringType; }
378 
382  inline void SetOfferingType(const Aws::String& value) { m_offeringTypeHasBeenSet = true; m_offeringType = value; }
383 
387  inline void SetOfferingType(Aws::String&& value) { m_offeringTypeHasBeenSet = true; m_offeringType = value; }
388 
392  inline void SetOfferingType(const char* value) { m_offeringTypeHasBeenSet = true; m_offeringType.assign(value); }
393 
397  inline ReservedCacheNodesOffering& WithOfferingType(const Aws::String& value) { SetOfferingType(value); return *this;}
398 
402  inline ReservedCacheNodesOffering& WithOfferingType(Aws::String&& value) { SetOfferingType(value); return *this;}
403 
407  inline ReservedCacheNodesOffering& WithOfferingType(const char* value) { SetOfferingType(value); return *this;}
408 
412  inline const Aws::Vector<RecurringCharge>& GetRecurringCharges() const{ return m_recurringCharges; }
413 
417  inline void SetRecurringCharges(const Aws::Vector<RecurringCharge>& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges = value; }
418 
422  inline void SetRecurringCharges(Aws::Vector<RecurringCharge>&& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges = value; }
423 
427  inline ReservedCacheNodesOffering& WithRecurringCharges(const Aws::Vector<RecurringCharge>& value) { SetRecurringCharges(value); return *this;}
428 
432  inline ReservedCacheNodesOffering& WithRecurringCharges(Aws::Vector<RecurringCharge>&& value) { SetRecurringCharges(value); return *this;}
433 
437  inline ReservedCacheNodesOffering& AddRecurringCharges(const RecurringCharge& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges.push_back(value); return *this; }
438 
442  inline ReservedCacheNodesOffering& AddRecurringCharges(RecurringCharge&& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges.push_back(value); return *this; }
443 
444  private:
445  Aws::String m_reservedCacheNodesOfferingId;
446  bool m_reservedCacheNodesOfferingIdHasBeenSet;
447  Aws::String m_cacheNodeType;
448  bool m_cacheNodeTypeHasBeenSet;
449  int m_duration;
450  bool m_durationHasBeenSet;
451  double m_fixedPrice;
452  bool m_fixedPriceHasBeenSet;
453  double m_usagePrice;
454  bool m_usagePriceHasBeenSet;
455  Aws::String m_productDescription;
456  bool m_productDescriptionHasBeenSet;
457  Aws::String m_offeringType;
458  bool m_offeringTypeHasBeenSet;
459  Aws::Vector<RecurringCharge> m_recurringCharges;
460  bool m_recurringChargesHasBeenSet;
461  };
462 
463 } // namespace Model
464 } // namespace ElastiCache
465 } // namespace Aws
ReservedCacheNodesOffering & WithRecurringCharges(Aws::Vector< RecurringCharge > &&value)
void SetRecurringCharges(Aws::Vector< RecurringCharge > &&value)
ReservedCacheNodesOffering & WithOfferingType(Aws::String &&value)
ReservedCacheNodesOffering & WithProductDescription(const Aws::String &value)
ReservedCacheNodesOffering & WithUsagePrice(double value)
ReservedCacheNodesOffering & WithProductDescription(Aws::String &&value)
ReservedCacheNodesOffering & AddRecurringCharges(RecurringCharge &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
ReservedCacheNodesOffering & WithProductDescription(const char *value)
ReservedCacheNodesOffering & WithReservedCacheNodesOfferingId(Aws::String &&value)
ReservedCacheNodesOffering & WithCacheNodeType(const char *value)
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
void SetRecurringCharges(const Aws::Vector< RecurringCharge > &value)
ReservedCacheNodesOffering & WithOfferingType(const char *value)
const Aws::Vector< RecurringCharge > & GetRecurringCharges() const
ReservedCacheNodesOffering & WithOfferingType(const Aws::String &value)
ReservedCacheNodesOffering & WithReservedCacheNodesOfferingId(const Aws::String &value)
ReservedCacheNodesOffering & WithFixedPrice(double value)
ReservedCacheNodesOffering & AddRecurringCharges(const RecurringCharge &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
#define AWS_ELASTICACHE_API
ReservedCacheNodesOffering & WithReservedCacheNodesOfferingId(const char *value)
ReservedCacheNodesOffering & WithRecurringCharges(const Aws::Vector< RecurringCharge > &value)
ReservedCacheNodesOffering & WithCacheNodeType(const Aws::String &value)
JSON (JavaScript Object Notation).
ReservedCacheNodesOffering & WithCacheNodeType(Aws::String &&value)