AWS SDK for C++  0.14.3
AWS SDK for C++
ReservedDBInstance.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
16 #include <aws/rds/RDS_EXPORTS.h>
22 
23 namespace Aws
24 {
25 namespace Utils
26 {
27 namespace Xml
28 {
29  class XmlNode;
30 } // namespace Xml
31 } // namespace Utils
32 namespace RDS
33 {
34 namespace Model
35 {
36 
43  {
44  public:
47  ReservedDBInstance& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
48 
49  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
50  void OutputToStream(Aws::OStream& oStream, const char* location) const;
51 
55  inline const Aws::String& GetReservedDBInstanceId() const{ return m_reservedDBInstanceId; }
56 
60  inline void SetReservedDBInstanceId(const Aws::String& value) { m_reservedDBInstanceIdHasBeenSet = true; m_reservedDBInstanceId = value; }
61 
65  inline void SetReservedDBInstanceId(Aws::String&& value) { m_reservedDBInstanceIdHasBeenSet = true; m_reservedDBInstanceId = value; }
66 
70  inline void SetReservedDBInstanceId(const char* value) { m_reservedDBInstanceIdHasBeenSet = true; m_reservedDBInstanceId.assign(value); }
71 
75  inline ReservedDBInstance& WithReservedDBInstanceId(const Aws::String& value) { SetReservedDBInstanceId(value); return *this;}
76 
80  inline ReservedDBInstance& WithReservedDBInstanceId(Aws::String&& value) { SetReservedDBInstanceId(value); return *this;}
81 
85  inline ReservedDBInstance& WithReservedDBInstanceId(const char* value) { SetReservedDBInstanceId(value); return *this;}
86 
90  inline const Aws::String& GetReservedDBInstancesOfferingId() const{ return m_reservedDBInstancesOfferingId; }
91 
95  inline void SetReservedDBInstancesOfferingId(const Aws::String& value) { m_reservedDBInstancesOfferingIdHasBeenSet = true; m_reservedDBInstancesOfferingId = value; }
96 
100  inline void SetReservedDBInstancesOfferingId(Aws::String&& value) { m_reservedDBInstancesOfferingIdHasBeenSet = true; m_reservedDBInstancesOfferingId = value; }
101 
105  inline void SetReservedDBInstancesOfferingId(const char* value) { m_reservedDBInstancesOfferingIdHasBeenSet = true; m_reservedDBInstancesOfferingId.assign(value); }
106 
110  inline ReservedDBInstance& WithReservedDBInstancesOfferingId(const Aws::String& value) { SetReservedDBInstancesOfferingId(value); return *this;}
111 
115  inline ReservedDBInstance& WithReservedDBInstancesOfferingId(Aws::String&& value) { SetReservedDBInstancesOfferingId(value); return *this;}
116 
120  inline ReservedDBInstance& WithReservedDBInstancesOfferingId(const char* value) { SetReservedDBInstancesOfferingId(value); return *this;}
121 
125  inline const Aws::String& GetDBInstanceClass() const{ return m_dBInstanceClass; }
126 
130  inline void SetDBInstanceClass(const Aws::String& value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass = value; }
131 
135  inline void SetDBInstanceClass(Aws::String&& value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass = value; }
136 
140  inline void SetDBInstanceClass(const char* value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass.assign(value); }
141 
145  inline ReservedDBInstance& WithDBInstanceClass(const Aws::String& value) { SetDBInstanceClass(value); return *this;}
146 
150  inline ReservedDBInstance& WithDBInstanceClass(Aws::String&& value) { SetDBInstanceClass(value); return *this;}
151 
155  inline ReservedDBInstance& WithDBInstanceClass(const char* value) { SetDBInstanceClass(value); return *this;}
156 
160  inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; }
161 
165  inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; }
166 
170  inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = value; }
171 
175  inline ReservedDBInstance& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;}
176 
180  inline ReservedDBInstance& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(value); return *this;}
181 
185  inline int GetDuration() const{ return m_duration; }
186 
190  inline void SetDuration(int value) { m_durationHasBeenSet = true; m_duration = value; }
191 
195  inline ReservedDBInstance& WithDuration(int value) { SetDuration(value); return *this;}
196 
200  inline double GetFixedPrice() const{ return m_fixedPrice; }
201 
205  inline void SetFixedPrice(double value) { m_fixedPriceHasBeenSet = true; m_fixedPrice = value; }
206 
210  inline ReservedDBInstance& WithFixedPrice(double value) { SetFixedPrice(value); return *this;}
211 
215  inline double GetUsagePrice() const{ return m_usagePrice; }
216 
220  inline void SetUsagePrice(double value) { m_usagePriceHasBeenSet = true; m_usagePrice = value; }
221 
225  inline ReservedDBInstance& WithUsagePrice(double value) { SetUsagePrice(value); return *this;}
226 
230  inline const Aws::String& GetCurrencyCode() const{ return m_currencyCode; }
231 
235  inline void SetCurrencyCode(const Aws::String& value) { m_currencyCodeHasBeenSet = true; m_currencyCode = value; }
236 
240  inline void SetCurrencyCode(Aws::String&& value) { m_currencyCodeHasBeenSet = true; m_currencyCode = value; }
241 
245  inline void SetCurrencyCode(const char* value) { m_currencyCodeHasBeenSet = true; m_currencyCode.assign(value); }
246 
250  inline ReservedDBInstance& WithCurrencyCode(const Aws::String& value) { SetCurrencyCode(value); return *this;}
251 
255  inline ReservedDBInstance& WithCurrencyCode(Aws::String&& value) { SetCurrencyCode(value); return *this;}
256 
260  inline ReservedDBInstance& WithCurrencyCode(const char* value) { SetCurrencyCode(value); return *this;}
261 
265  inline int GetDBInstanceCount() const{ return m_dBInstanceCount; }
266 
270  inline void SetDBInstanceCount(int value) { m_dBInstanceCountHasBeenSet = true; m_dBInstanceCount = value; }
271 
275  inline ReservedDBInstance& WithDBInstanceCount(int value) { SetDBInstanceCount(value); return *this;}
276 
280  inline const Aws::String& GetProductDescription() const{ return m_productDescription; }
281 
285  inline void SetProductDescription(const Aws::String& value) { m_productDescriptionHasBeenSet = true; m_productDescription = value; }
286 
290  inline void SetProductDescription(Aws::String&& value) { m_productDescriptionHasBeenSet = true; m_productDescription = value; }
291 
295  inline void SetProductDescription(const char* value) { m_productDescriptionHasBeenSet = true; m_productDescription.assign(value); }
296 
300  inline ReservedDBInstance& WithProductDescription(const Aws::String& value) { SetProductDescription(value); return *this;}
301 
305  inline ReservedDBInstance& WithProductDescription(Aws::String&& value) { SetProductDescription(value); return *this;}
306 
310  inline ReservedDBInstance& WithProductDescription(const char* value) { SetProductDescription(value); return *this;}
311 
315  inline const Aws::String& GetOfferingType() const{ return m_offeringType; }
316 
320  inline void SetOfferingType(const Aws::String& value) { m_offeringTypeHasBeenSet = true; m_offeringType = value; }
321 
325  inline void SetOfferingType(Aws::String&& value) { m_offeringTypeHasBeenSet = true; m_offeringType = value; }
326 
330  inline void SetOfferingType(const char* value) { m_offeringTypeHasBeenSet = true; m_offeringType.assign(value); }
331 
335  inline ReservedDBInstance& WithOfferingType(const Aws::String& value) { SetOfferingType(value); return *this;}
336 
340  inline ReservedDBInstance& WithOfferingType(Aws::String&& value) { SetOfferingType(value); return *this;}
341 
345  inline ReservedDBInstance& WithOfferingType(const char* value) { SetOfferingType(value); return *this;}
346 
350  inline bool GetMultiAZ() const{ return m_multiAZ; }
351 
355  inline void SetMultiAZ(bool value) { m_multiAZHasBeenSet = true; m_multiAZ = value; }
356 
360  inline ReservedDBInstance& WithMultiAZ(bool value) { SetMultiAZ(value); return *this;}
361 
365  inline const Aws::String& GetState() const{ return m_state; }
366 
370  inline void SetState(const Aws::String& value) { m_stateHasBeenSet = true; m_state = value; }
371 
375  inline void SetState(Aws::String&& value) { m_stateHasBeenSet = true; m_state = value; }
376 
380  inline void SetState(const char* value) { m_stateHasBeenSet = true; m_state.assign(value); }
381 
385  inline ReservedDBInstance& WithState(const Aws::String& value) { SetState(value); return *this;}
386 
390  inline ReservedDBInstance& WithState(Aws::String&& value) { SetState(value); return *this;}
391 
395  inline ReservedDBInstance& WithState(const char* value) { SetState(value); return *this;}
396 
400  inline const Aws::Vector<RecurringCharge>& GetRecurringCharges() const{ return m_recurringCharges; }
401 
405  inline void SetRecurringCharges(const Aws::Vector<RecurringCharge>& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges = value; }
406 
410  inline void SetRecurringCharges(Aws::Vector<RecurringCharge>&& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges = value; }
411 
415  inline ReservedDBInstance& WithRecurringCharges(const Aws::Vector<RecurringCharge>& value) { SetRecurringCharges(value); return *this;}
416 
420  inline ReservedDBInstance& WithRecurringCharges(Aws::Vector<RecurringCharge>&& value) { SetRecurringCharges(value); return *this;}
421 
425  inline ReservedDBInstance& AddRecurringCharges(const RecurringCharge& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges.push_back(value); return *this; }
426 
430  inline ReservedDBInstance& AddRecurringCharges(RecurringCharge&& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges.push_back(value); return *this; }
431 
432  private:
433  Aws::String m_reservedDBInstanceId;
434  bool m_reservedDBInstanceIdHasBeenSet;
435  Aws::String m_reservedDBInstancesOfferingId;
436  bool m_reservedDBInstancesOfferingIdHasBeenSet;
437  Aws::String m_dBInstanceClass;
438  bool m_dBInstanceClassHasBeenSet;
439  Aws::Utils::DateTime m_startTime;
440  bool m_startTimeHasBeenSet;
441  int m_duration;
442  bool m_durationHasBeenSet;
443  double m_fixedPrice;
444  bool m_fixedPriceHasBeenSet;
445  double m_usagePrice;
446  bool m_usagePriceHasBeenSet;
447  Aws::String m_currencyCode;
448  bool m_currencyCodeHasBeenSet;
449  int m_dBInstanceCount;
450  bool m_dBInstanceCountHasBeenSet;
451  Aws::String m_productDescription;
452  bool m_productDescriptionHasBeenSet;
453  Aws::String m_offeringType;
454  bool m_offeringTypeHasBeenSet;
455  bool m_multiAZ;
456  bool m_multiAZHasBeenSet;
457  Aws::String m_state;
458  bool m_stateHasBeenSet;
459  Aws::Vector<RecurringCharge> m_recurringCharges;
460  bool m_recurringChargesHasBeenSet;
461  };
462 
463 } // namespace Model
464 } // namespace RDS
465 } // namespace Aws
void SetProductDescription(const Aws::String &value)
void SetReservedDBInstanceId(const char *value)
void SetReservedDBInstanceId(Aws::String &&value)
void SetDBInstanceClass(const char *value)
ReservedDBInstance & WithDBInstanceClass(const char *value)
ReservedDBInstance & WithMultiAZ(bool value)
ReservedDBInstance & WithStartTime(Aws::Utils::DateTime &&value)
const Aws::Utils::DateTime & GetStartTime() const
void SetCurrencyCode(const Aws::String &value)
ReservedDBInstance & WithRecurringCharges(Aws::Vector< RecurringCharge > &&value)
ReservedDBInstance & WithOfferingType(const Aws::String &value)
#define AWS_RDS_API
Definition: RDS_EXPORTS.h:37
void SetCurrencyCode(const char *value)
void SetDBInstanceClass(Aws::String &&value)
const Aws::Vector< RecurringCharge > & GetRecurringCharges() const
ReservedDBInstance & WithState(const Aws::String &value)
void SetState(const Aws::String &value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
void SetRecurringCharges(Aws::Vector< RecurringCharge > &&value)
void SetRecurringCharges(const Aws::Vector< RecurringCharge > &value)
ReservedDBInstance & WithProductDescription(Aws::String &&value)
void SetOfferingType(Aws::String &&value)
void SetOfferingType(const Aws::String &value)
void SetDBInstanceClass(const Aws::String &value)
const Aws::String & GetCurrencyCode() const
void SetState(Aws::String &&value)
ReservedDBInstance & WithReservedDBInstanceId(const char *value)
ReservedDBInstance & WithOfferingType(Aws::String &&value)
ReservedDBInstance & WithReservedDBInstancesOfferingId(const Aws::String &value)
const Aws::String & GetReservedDBInstancesOfferingId() const
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
ReservedDBInstance & WithState(const char *value)
ReservedDBInstance & WithProductDescription(const char *value)
ReservedDBInstance & WithReservedDBInstancesOfferingId(Aws::String &&value)
void SetProductDescription(Aws::String &&value)
ReservedDBInstance & AddRecurringCharges(RecurringCharge &&value)
ReservedDBInstance & WithProductDescription(const Aws::String &value)
ReservedDBInstance & WithState(Aws::String &&value)
const Aws::String & GetState() const
void SetReservedDBInstancesOfferingId(Aws::String &&value)
void SetStartTime(Aws::Utils::DateTime &&value)
ReservedDBInstance & WithStartTime(const Aws::Utils::DateTime &value)
ReservedDBInstance & WithDBInstanceCount(int value)
ReservedDBInstance & WithDBInstanceClass(Aws::String &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
ReservedDBInstance & WithRecurringCharges(const Aws::Vector< RecurringCharge > &value)
void SetCurrencyCode(Aws::String &&value)
const Aws::String & GetProductDescription() const
void SetReservedDBInstancesOfferingId(const char *value)
ReservedDBInstance & WithReservedDBInstanceId(const Aws::String &value)
ReservedDBInstance & WithDuration(int value)
const Aws::String & GetOfferingType() const
ReservedDBInstance & WithOfferingType(const char *value)
ReservedDBInstance & WithCurrencyCode(const Aws::String &value)
ReservedDBInstance & WithDBInstanceClass(const Aws::String &value)
ReservedDBInstance & WithCurrencyCode(Aws::String &&value)
void SetReservedDBInstanceId(const Aws::String &value)
void SetReservedDBInstancesOfferingId(const Aws::String &value)
void SetStartTime(const Aws::Utils::DateTime &value)
ReservedDBInstance & WithFixedPrice(double value)
ReservedDBInstance & WithReservedDBInstancesOfferingId(const char *value)
const Aws::String & GetDBInstanceClass() const
void SetProductDescription(const char *value)
ReservedDBInstance & WithUsagePrice(double value)
ReservedDBInstance & WithCurrencyCode(const char *value)
ReservedDBInstance & WithReservedDBInstanceId(Aws::String &&value)
const Aws::String & GetReservedDBInstanceId() const
JSON (JavaScript Object Notation).
void SetOfferingType(const char *value)
ReservedDBInstance & AddRecurringCharges(const RecurringCharge &value)