1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/rds/RDS_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/rds/model/RecurringCharge.h>
13 #include <utility>
14 
15 namespace Aws
16 {
17 namespace Utils
18 {
19 namespace Xml
20 {
21   class XmlNode;
22 } // namespace Xml
23 } // namespace Utils
24 namespace RDS
25 {
26 namespace Model
27 {
28 
29   /**
30    * <p> This data type is used as a response element in the
31    * <code>DescribeReservedDBInstances</code> and
32    * <code>PurchaseReservedDBInstancesOffering</code> actions. </p><p><h3>See
33    * Also:</h3>   <a
34    * href="http://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ReservedDBInstance">AWS
35    * API Reference</a></p>
36    */
37   class AWS_RDS_API ReservedDBInstance
38   {
39   public:
40     ReservedDBInstance();
41     ReservedDBInstance(const Aws::Utils::Xml::XmlNode& xmlNode);
42     ReservedDBInstance& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
43 
44     void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
45     void OutputToStream(Aws::OStream& oStream, const char* location) const;
46 
47 
48     /**
49      * <p>The unique identifier for the reservation.</p>
50      */
GetReservedDBInstanceId()51     inline const Aws::String& GetReservedDBInstanceId() const{ return m_reservedDBInstanceId; }
52 
53     /**
54      * <p>The unique identifier for the reservation.</p>
55      */
ReservedDBInstanceIdHasBeenSet()56     inline bool ReservedDBInstanceIdHasBeenSet() const { return m_reservedDBInstanceIdHasBeenSet; }
57 
58     /**
59      * <p>The unique identifier for the reservation.</p>
60      */
SetReservedDBInstanceId(const Aws::String & value)61     inline void SetReservedDBInstanceId(const Aws::String& value) { m_reservedDBInstanceIdHasBeenSet = true; m_reservedDBInstanceId = value; }
62 
63     /**
64      * <p>The unique identifier for the reservation.</p>
65      */
SetReservedDBInstanceId(Aws::String && value)66     inline void SetReservedDBInstanceId(Aws::String&& value) { m_reservedDBInstanceIdHasBeenSet = true; m_reservedDBInstanceId = std::move(value); }
67 
68     /**
69      * <p>The unique identifier for the reservation.</p>
70      */
SetReservedDBInstanceId(const char * value)71     inline void SetReservedDBInstanceId(const char* value) { m_reservedDBInstanceIdHasBeenSet = true; m_reservedDBInstanceId.assign(value); }
72 
73     /**
74      * <p>The unique identifier for the reservation.</p>
75      */
WithReservedDBInstanceId(const Aws::String & value)76     inline ReservedDBInstance& WithReservedDBInstanceId(const Aws::String& value) { SetReservedDBInstanceId(value); return *this;}
77 
78     /**
79      * <p>The unique identifier for the reservation.</p>
80      */
WithReservedDBInstanceId(Aws::String && value)81     inline ReservedDBInstance& WithReservedDBInstanceId(Aws::String&& value) { SetReservedDBInstanceId(std::move(value)); return *this;}
82 
83     /**
84      * <p>The unique identifier for the reservation.</p>
85      */
WithReservedDBInstanceId(const char * value)86     inline ReservedDBInstance& WithReservedDBInstanceId(const char* value) { SetReservedDBInstanceId(value); return *this;}
87 
88 
89     /**
90      * <p>The offering identifier.</p>
91      */
GetReservedDBInstancesOfferingId()92     inline const Aws::String& GetReservedDBInstancesOfferingId() const{ return m_reservedDBInstancesOfferingId; }
93 
94     /**
95      * <p>The offering identifier.</p>
96      */
ReservedDBInstancesOfferingIdHasBeenSet()97     inline bool ReservedDBInstancesOfferingIdHasBeenSet() const { return m_reservedDBInstancesOfferingIdHasBeenSet; }
98 
99     /**
100      * <p>The offering identifier.</p>
101      */
SetReservedDBInstancesOfferingId(const Aws::String & value)102     inline void SetReservedDBInstancesOfferingId(const Aws::String& value) { m_reservedDBInstancesOfferingIdHasBeenSet = true; m_reservedDBInstancesOfferingId = value; }
103 
104     /**
105      * <p>The offering identifier.</p>
106      */
SetReservedDBInstancesOfferingId(Aws::String && value)107     inline void SetReservedDBInstancesOfferingId(Aws::String&& value) { m_reservedDBInstancesOfferingIdHasBeenSet = true; m_reservedDBInstancesOfferingId = std::move(value); }
108 
109     /**
110      * <p>The offering identifier.</p>
111      */
SetReservedDBInstancesOfferingId(const char * value)112     inline void SetReservedDBInstancesOfferingId(const char* value) { m_reservedDBInstancesOfferingIdHasBeenSet = true; m_reservedDBInstancesOfferingId.assign(value); }
113 
114     /**
115      * <p>The offering identifier.</p>
116      */
WithReservedDBInstancesOfferingId(const Aws::String & value)117     inline ReservedDBInstance& WithReservedDBInstancesOfferingId(const Aws::String& value) { SetReservedDBInstancesOfferingId(value); return *this;}
118 
119     /**
120      * <p>The offering identifier.</p>
121      */
WithReservedDBInstancesOfferingId(Aws::String && value)122     inline ReservedDBInstance& WithReservedDBInstancesOfferingId(Aws::String&& value) { SetReservedDBInstancesOfferingId(std::move(value)); return *this;}
123 
124     /**
125      * <p>The offering identifier.</p>
126      */
WithReservedDBInstancesOfferingId(const char * value)127     inline ReservedDBInstance& WithReservedDBInstancesOfferingId(const char* value) { SetReservedDBInstancesOfferingId(value); return *this;}
128 
129 
130     /**
131      * <p>The DB instance class for the reserved DB instance.</p>
132      */
GetDBInstanceClass()133     inline const Aws::String& GetDBInstanceClass() const{ return m_dBInstanceClass; }
134 
135     /**
136      * <p>The DB instance class for the reserved DB instance.</p>
137      */
DBInstanceClassHasBeenSet()138     inline bool DBInstanceClassHasBeenSet() const { return m_dBInstanceClassHasBeenSet; }
139 
140     /**
141      * <p>The DB instance class for the reserved DB instance.</p>
142      */
SetDBInstanceClass(const Aws::String & value)143     inline void SetDBInstanceClass(const Aws::String& value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass = value; }
144 
145     /**
146      * <p>The DB instance class for the reserved DB instance.</p>
147      */
SetDBInstanceClass(Aws::String && value)148     inline void SetDBInstanceClass(Aws::String&& value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass = std::move(value); }
149 
150     /**
151      * <p>The DB instance class for the reserved DB instance.</p>
152      */
SetDBInstanceClass(const char * value)153     inline void SetDBInstanceClass(const char* value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass.assign(value); }
154 
155     /**
156      * <p>The DB instance class for the reserved DB instance.</p>
157      */
WithDBInstanceClass(const Aws::String & value)158     inline ReservedDBInstance& WithDBInstanceClass(const Aws::String& value) { SetDBInstanceClass(value); return *this;}
159 
160     /**
161      * <p>The DB instance class for the reserved DB instance.</p>
162      */
WithDBInstanceClass(Aws::String && value)163     inline ReservedDBInstance& WithDBInstanceClass(Aws::String&& value) { SetDBInstanceClass(std::move(value)); return *this;}
164 
165     /**
166      * <p>The DB instance class for the reserved DB instance.</p>
167      */
WithDBInstanceClass(const char * value)168     inline ReservedDBInstance& WithDBInstanceClass(const char* value) { SetDBInstanceClass(value); return *this;}
169 
170 
171     /**
172      * <p>The time the reservation started.</p>
173      */
GetStartTime()174     inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; }
175 
176     /**
177      * <p>The time the reservation started.</p>
178      */
StartTimeHasBeenSet()179     inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
180 
181     /**
182      * <p>The time the reservation started.</p>
183      */
SetStartTime(const Aws::Utils::DateTime & value)184     inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; }
185 
186     /**
187      * <p>The time the reservation started.</p>
188      */
SetStartTime(Aws::Utils::DateTime && value)189     inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); }
190 
191     /**
192      * <p>The time the reservation started.</p>
193      */
WithStartTime(const Aws::Utils::DateTime & value)194     inline ReservedDBInstance& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;}
195 
196     /**
197      * <p>The time the reservation started.</p>
198      */
WithStartTime(Aws::Utils::DateTime && value)199     inline ReservedDBInstance& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;}
200 
201 
202     /**
203      * <p>The duration of the reservation in seconds.</p>
204      */
GetDuration()205     inline int GetDuration() const{ return m_duration; }
206 
207     /**
208      * <p>The duration of the reservation in seconds.</p>
209      */
DurationHasBeenSet()210     inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; }
211 
212     /**
213      * <p>The duration of the reservation in seconds.</p>
214      */
SetDuration(int value)215     inline void SetDuration(int value) { m_durationHasBeenSet = true; m_duration = value; }
216 
217     /**
218      * <p>The duration of the reservation in seconds.</p>
219      */
WithDuration(int value)220     inline ReservedDBInstance& WithDuration(int value) { SetDuration(value); return *this;}
221 
222 
223     /**
224      * <p>The fixed price charged for this reserved DB instance.</p>
225      */
GetFixedPrice()226     inline double GetFixedPrice() const{ return m_fixedPrice; }
227 
228     /**
229      * <p>The fixed price charged for this reserved DB instance.</p>
230      */
FixedPriceHasBeenSet()231     inline bool FixedPriceHasBeenSet() const { return m_fixedPriceHasBeenSet; }
232 
233     /**
234      * <p>The fixed price charged for this reserved DB instance.</p>
235      */
SetFixedPrice(double value)236     inline void SetFixedPrice(double value) { m_fixedPriceHasBeenSet = true; m_fixedPrice = value; }
237 
238     /**
239      * <p>The fixed price charged for this reserved DB instance.</p>
240      */
WithFixedPrice(double value)241     inline ReservedDBInstance& WithFixedPrice(double value) { SetFixedPrice(value); return *this;}
242 
243 
244     /**
245      * <p>The hourly price charged for this reserved DB instance.</p>
246      */
GetUsagePrice()247     inline double GetUsagePrice() const{ return m_usagePrice; }
248 
249     /**
250      * <p>The hourly price charged for this reserved DB instance.</p>
251      */
UsagePriceHasBeenSet()252     inline bool UsagePriceHasBeenSet() const { return m_usagePriceHasBeenSet; }
253 
254     /**
255      * <p>The hourly price charged for this reserved DB instance.</p>
256      */
SetUsagePrice(double value)257     inline void SetUsagePrice(double value) { m_usagePriceHasBeenSet = true; m_usagePrice = value; }
258 
259     /**
260      * <p>The hourly price charged for this reserved DB instance.</p>
261      */
WithUsagePrice(double value)262     inline ReservedDBInstance& WithUsagePrice(double value) { SetUsagePrice(value); return *this;}
263 
264 
265     /**
266      * <p>The currency code for the reserved DB instance.</p>
267      */
GetCurrencyCode()268     inline const Aws::String& GetCurrencyCode() const{ return m_currencyCode; }
269 
270     /**
271      * <p>The currency code for the reserved DB instance.</p>
272      */
CurrencyCodeHasBeenSet()273     inline bool CurrencyCodeHasBeenSet() const { return m_currencyCodeHasBeenSet; }
274 
275     /**
276      * <p>The currency code for the reserved DB instance.</p>
277      */
SetCurrencyCode(const Aws::String & value)278     inline void SetCurrencyCode(const Aws::String& value) { m_currencyCodeHasBeenSet = true; m_currencyCode = value; }
279 
280     /**
281      * <p>The currency code for the reserved DB instance.</p>
282      */
SetCurrencyCode(Aws::String && value)283     inline void SetCurrencyCode(Aws::String&& value) { m_currencyCodeHasBeenSet = true; m_currencyCode = std::move(value); }
284 
285     /**
286      * <p>The currency code for the reserved DB instance.</p>
287      */
SetCurrencyCode(const char * value)288     inline void SetCurrencyCode(const char* value) { m_currencyCodeHasBeenSet = true; m_currencyCode.assign(value); }
289 
290     /**
291      * <p>The currency code for the reserved DB instance.</p>
292      */
WithCurrencyCode(const Aws::String & value)293     inline ReservedDBInstance& WithCurrencyCode(const Aws::String& value) { SetCurrencyCode(value); return *this;}
294 
295     /**
296      * <p>The currency code for the reserved DB instance.</p>
297      */
WithCurrencyCode(Aws::String && value)298     inline ReservedDBInstance& WithCurrencyCode(Aws::String&& value) { SetCurrencyCode(std::move(value)); return *this;}
299 
300     /**
301      * <p>The currency code for the reserved DB instance.</p>
302      */
WithCurrencyCode(const char * value)303     inline ReservedDBInstance& WithCurrencyCode(const char* value) { SetCurrencyCode(value); return *this;}
304 
305 
306     /**
307      * <p>The number of reserved DB instances.</p>
308      */
GetDBInstanceCount()309     inline int GetDBInstanceCount() const{ return m_dBInstanceCount; }
310 
311     /**
312      * <p>The number of reserved DB instances.</p>
313      */
DBInstanceCountHasBeenSet()314     inline bool DBInstanceCountHasBeenSet() const { return m_dBInstanceCountHasBeenSet; }
315 
316     /**
317      * <p>The number of reserved DB instances.</p>
318      */
SetDBInstanceCount(int value)319     inline void SetDBInstanceCount(int value) { m_dBInstanceCountHasBeenSet = true; m_dBInstanceCount = value; }
320 
321     /**
322      * <p>The number of reserved DB instances.</p>
323      */
WithDBInstanceCount(int value)324     inline ReservedDBInstance& WithDBInstanceCount(int value) { SetDBInstanceCount(value); return *this;}
325 
326 
327     /**
328      * <p>The description of the reserved DB instance.</p>
329      */
GetProductDescription()330     inline const Aws::String& GetProductDescription() const{ return m_productDescription; }
331 
332     /**
333      * <p>The description of the reserved DB instance.</p>
334      */
ProductDescriptionHasBeenSet()335     inline bool ProductDescriptionHasBeenSet() const { return m_productDescriptionHasBeenSet; }
336 
337     /**
338      * <p>The description of the reserved DB instance.</p>
339      */
SetProductDescription(const Aws::String & value)340     inline void SetProductDescription(const Aws::String& value) { m_productDescriptionHasBeenSet = true; m_productDescription = value; }
341 
342     /**
343      * <p>The description of the reserved DB instance.</p>
344      */
SetProductDescription(Aws::String && value)345     inline void SetProductDescription(Aws::String&& value) { m_productDescriptionHasBeenSet = true; m_productDescription = std::move(value); }
346 
347     /**
348      * <p>The description of the reserved DB instance.</p>
349      */
SetProductDescription(const char * value)350     inline void SetProductDescription(const char* value) { m_productDescriptionHasBeenSet = true; m_productDescription.assign(value); }
351 
352     /**
353      * <p>The description of the reserved DB instance.</p>
354      */
WithProductDescription(const Aws::String & value)355     inline ReservedDBInstance& WithProductDescription(const Aws::String& value) { SetProductDescription(value); return *this;}
356 
357     /**
358      * <p>The description of the reserved DB instance.</p>
359      */
WithProductDescription(Aws::String && value)360     inline ReservedDBInstance& WithProductDescription(Aws::String&& value) { SetProductDescription(std::move(value)); return *this;}
361 
362     /**
363      * <p>The description of the reserved DB instance.</p>
364      */
WithProductDescription(const char * value)365     inline ReservedDBInstance& WithProductDescription(const char* value) { SetProductDescription(value); return *this;}
366 
367 
368     /**
369      * <p>The offering type of this reserved DB instance.</p>
370      */
GetOfferingType()371     inline const Aws::String& GetOfferingType() const{ return m_offeringType; }
372 
373     /**
374      * <p>The offering type of this reserved DB instance.</p>
375      */
OfferingTypeHasBeenSet()376     inline bool OfferingTypeHasBeenSet() const { return m_offeringTypeHasBeenSet; }
377 
378     /**
379      * <p>The offering type of this reserved DB instance.</p>
380      */
SetOfferingType(const Aws::String & value)381     inline void SetOfferingType(const Aws::String& value) { m_offeringTypeHasBeenSet = true; m_offeringType = value; }
382 
383     /**
384      * <p>The offering type of this reserved DB instance.</p>
385      */
SetOfferingType(Aws::String && value)386     inline void SetOfferingType(Aws::String&& value) { m_offeringTypeHasBeenSet = true; m_offeringType = std::move(value); }
387 
388     /**
389      * <p>The offering type of this reserved DB instance.</p>
390      */
SetOfferingType(const char * value)391     inline void SetOfferingType(const char* value) { m_offeringTypeHasBeenSet = true; m_offeringType.assign(value); }
392 
393     /**
394      * <p>The offering type of this reserved DB instance.</p>
395      */
WithOfferingType(const Aws::String & value)396     inline ReservedDBInstance& WithOfferingType(const Aws::String& value) { SetOfferingType(value); return *this;}
397 
398     /**
399      * <p>The offering type of this reserved DB instance.</p>
400      */
WithOfferingType(Aws::String && value)401     inline ReservedDBInstance& WithOfferingType(Aws::String&& value) { SetOfferingType(std::move(value)); return *this;}
402 
403     /**
404      * <p>The offering type of this reserved DB instance.</p>
405      */
WithOfferingType(const char * value)406     inline ReservedDBInstance& WithOfferingType(const char* value) { SetOfferingType(value); return *this;}
407 
408 
409     /**
410      * <p>Indicates if the reservation applies to Multi-AZ deployments.</p>
411      */
GetMultiAZ()412     inline bool GetMultiAZ() const{ return m_multiAZ; }
413 
414     /**
415      * <p>Indicates if the reservation applies to Multi-AZ deployments.</p>
416      */
MultiAZHasBeenSet()417     inline bool MultiAZHasBeenSet() const { return m_multiAZHasBeenSet; }
418 
419     /**
420      * <p>Indicates if the reservation applies to Multi-AZ deployments.</p>
421      */
SetMultiAZ(bool value)422     inline void SetMultiAZ(bool value) { m_multiAZHasBeenSet = true; m_multiAZ = value; }
423 
424     /**
425      * <p>Indicates if the reservation applies to Multi-AZ deployments.</p>
426      */
WithMultiAZ(bool value)427     inline ReservedDBInstance& WithMultiAZ(bool value) { SetMultiAZ(value); return *this;}
428 
429 
430     /**
431      * <p>The state of the reserved DB instance.</p>
432      */
GetState()433     inline const Aws::String& GetState() const{ return m_state; }
434 
435     /**
436      * <p>The state of the reserved DB instance.</p>
437      */
StateHasBeenSet()438     inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
439 
440     /**
441      * <p>The state of the reserved DB instance.</p>
442      */
SetState(const Aws::String & value)443     inline void SetState(const Aws::String& value) { m_stateHasBeenSet = true; m_state = value; }
444 
445     /**
446      * <p>The state of the reserved DB instance.</p>
447      */
SetState(Aws::String && value)448     inline void SetState(Aws::String&& value) { m_stateHasBeenSet = true; m_state = std::move(value); }
449 
450     /**
451      * <p>The state of the reserved DB instance.</p>
452      */
SetState(const char * value)453     inline void SetState(const char* value) { m_stateHasBeenSet = true; m_state.assign(value); }
454 
455     /**
456      * <p>The state of the reserved DB instance.</p>
457      */
WithState(const Aws::String & value)458     inline ReservedDBInstance& WithState(const Aws::String& value) { SetState(value); return *this;}
459 
460     /**
461      * <p>The state of the reserved DB instance.</p>
462      */
WithState(Aws::String && value)463     inline ReservedDBInstance& WithState(Aws::String&& value) { SetState(std::move(value)); return *this;}
464 
465     /**
466      * <p>The state of the reserved DB instance.</p>
467      */
WithState(const char * value)468     inline ReservedDBInstance& WithState(const char* value) { SetState(value); return *this;}
469 
470 
471     /**
472      * <p>The recurring price charged to run this reserved DB instance.</p>
473      */
GetRecurringCharges()474     inline const Aws::Vector<RecurringCharge>& GetRecurringCharges() const{ return m_recurringCharges; }
475 
476     /**
477      * <p>The recurring price charged to run this reserved DB instance.</p>
478      */
RecurringChargesHasBeenSet()479     inline bool RecurringChargesHasBeenSet() const { return m_recurringChargesHasBeenSet; }
480 
481     /**
482      * <p>The recurring price charged to run this reserved DB instance.</p>
483      */
SetRecurringCharges(const Aws::Vector<RecurringCharge> & value)484     inline void SetRecurringCharges(const Aws::Vector<RecurringCharge>& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges = value; }
485 
486     /**
487      * <p>The recurring price charged to run this reserved DB instance.</p>
488      */
SetRecurringCharges(Aws::Vector<RecurringCharge> && value)489     inline void SetRecurringCharges(Aws::Vector<RecurringCharge>&& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges = std::move(value); }
490 
491     /**
492      * <p>The recurring price charged to run this reserved DB instance.</p>
493      */
WithRecurringCharges(const Aws::Vector<RecurringCharge> & value)494     inline ReservedDBInstance& WithRecurringCharges(const Aws::Vector<RecurringCharge>& value) { SetRecurringCharges(value); return *this;}
495 
496     /**
497      * <p>The recurring price charged to run this reserved DB instance.</p>
498      */
WithRecurringCharges(Aws::Vector<RecurringCharge> && value)499     inline ReservedDBInstance& WithRecurringCharges(Aws::Vector<RecurringCharge>&& value) { SetRecurringCharges(std::move(value)); return *this;}
500 
501     /**
502      * <p>The recurring price charged to run this reserved DB instance.</p>
503      */
AddRecurringCharges(const RecurringCharge & value)504     inline ReservedDBInstance& AddRecurringCharges(const RecurringCharge& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges.push_back(value); return *this; }
505 
506     /**
507      * <p>The recurring price charged to run this reserved DB instance.</p>
508      */
AddRecurringCharges(RecurringCharge && value)509     inline ReservedDBInstance& AddRecurringCharges(RecurringCharge&& value) { m_recurringChargesHasBeenSet = true; m_recurringCharges.push_back(std::move(value)); return *this; }
510 
511 
512     /**
513      * <p>The Amazon Resource Name (ARN) for the reserved DB instance.</p>
514      */
GetReservedDBInstanceArn()515     inline const Aws::String& GetReservedDBInstanceArn() const{ return m_reservedDBInstanceArn; }
516 
517     /**
518      * <p>The Amazon Resource Name (ARN) for the reserved DB instance.</p>
519      */
ReservedDBInstanceArnHasBeenSet()520     inline bool ReservedDBInstanceArnHasBeenSet() const { return m_reservedDBInstanceArnHasBeenSet; }
521 
522     /**
523      * <p>The Amazon Resource Name (ARN) for the reserved DB instance.</p>
524      */
SetReservedDBInstanceArn(const Aws::String & value)525     inline void SetReservedDBInstanceArn(const Aws::String& value) { m_reservedDBInstanceArnHasBeenSet = true; m_reservedDBInstanceArn = value; }
526 
527     /**
528      * <p>The Amazon Resource Name (ARN) for the reserved DB instance.</p>
529      */
SetReservedDBInstanceArn(Aws::String && value)530     inline void SetReservedDBInstanceArn(Aws::String&& value) { m_reservedDBInstanceArnHasBeenSet = true; m_reservedDBInstanceArn = std::move(value); }
531 
532     /**
533      * <p>The Amazon Resource Name (ARN) for the reserved DB instance.</p>
534      */
SetReservedDBInstanceArn(const char * value)535     inline void SetReservedDBInstanceArn(const char* value) { m_reservedDBInstanceArnHasBeenSet = true; m_reservedDBInstanceArn.assign(value); }
536 
537     /**
538      * <p>The Amazon Resource Name (ARN) for the reserved DB instance.</p>
539      */
WithReservedDBInstanceArn(const Aws::String & value)540     inline ReservedDBInstance& WithReservedDBInstanceArn(const Aws::String& value) { SetReservedDBInstanceArn(value); return *this;}
541 
542     /**
543      * <p>The Amazon Resource Name (ARN) for the reserved DB instance.</p>
544      */
WithReservedDBInstanceArn(Aws::String && value)545     inline ReservedDBInstance& WithReservedDBInstanceArn(Aws::String&& value) { SetReservedDBInstanceArn(std::move(value)); return *this;}
546 
547     /**
548      * <p>The Amazon Resource Name (ARN) for the reserved DB instance.</p>
549      */
WithReservedDBInstanceArn(const char * value)550     inline ReservedDBInstance& WithReservedDBInstanceArn(const char* value) { SetReservedDBInstanceArn(value); return *this;}
551 
552 
553     /**
554      * <p>The unique identifier for the lease associated with the reserved DB
555      * instance.</p>  <p>Amazon Web Services Support might request the lease ID
556      * for an issue related to a reserved DB instance.</p>
557      */
GetLeaseId()558     inline const Aws::String& GetLeaseId() const{ return m_leaseId; }
559 
560     /**
561      * <p>The unique identifier for the lease associated with the reserved DB
562      * instance.</p>  <p>Amazon Web Services Support might request the lease ID
563      * for an issue related to a reserved DB instance.</p>
564      */
LeaseIdHasBeenSet()565     inline bool LeaseIdHasBeenSet() const { return m_leaseIdHasBeenSet; }
566 
567     /**
568      * <p>The unique identifier for the lease associated with the reserved DB
569      * instance.</p>  <p>Amazon Web Services Support might request the lease ID
570      * for an issue related to a reserved DB instance.</p>
571      */
SetLeaseId(const Aws::String & value)572     inline void SetLeaseId(const Aws::String& value) { m_leaseIdHasBeenSet = true; m_leaseId = value; }
573 
574     /**
575      * <p>The unique identifier for the lease associated with the reserved DB
576      * instance.</p>  <p>Amazon Web Services Support might request the lease ID
577      * for an issue related to a reserved DB instance.</p>
578      */
SetLeaseId(Aws::String && value)579     inline void SetLeaseId(Aws::String&& value) { m_leaseIdHasBeenSet = true; m_leaseId = std::move(value); }
580 
581     /**
582      * <p>The unique identifier for the lease associated with the reserved DB
583      * instance.</p>  <p>Amazon Web Services Support might request the lease ID
584      * for an issue related to a reserved DB instance.</p>
585      */
SetLeaseId(const char * value)586     inline void SetLeaseId(const char* value) { m_leaseIdHasBeenSet = true; m_leaseId.assign(value); }
587 
588     /**
589      * <p>The unique identifier for the lease associated with the reserved DB
590      * instance.</p>  <p>Amazon Web Services Support might request the lease ID
591      * for an issue related to a reserved DB instance.</p>
592      */
WithLeaseId(const Aws::String & value)593     inline ReservedDBInstance& WithLeaseId(const Aws::String& value) { SetLeaseId(value); return *this;}
594 
595     /**
596      * <p>The unique identifier for the lease associated with the reserved DB
597      * instance.</p>  <p>Amazon Web Services Support might request the lease ID
598      * for an issue related to a reserved DB instance.</p>
599      */
WithLeaseId(Aws::String && value)600     inline ReservedDBInstance& WithLeaseId(Aws::String&& value) { SetLeaseId(std::move(value)); return *this;}
601 
602     /**
603      * <p>The unique identifier for the lease associated with the reserved DB
604      * instance.</p>  <p>Amazon Web Services Support might request the lease ID
605      * for an issue related to a reserved DB instance.</p>
606      */
WithLeaseId(const char * value)607     inline ReservedDBInstance& WithLeaseId(const char* value) { SetLeaseId(value); return *this;}
608 
609   private:
610 
611     Aws::String m_reservedDBInstanceId;
612     bool m_reservedDBInstanceIdHasBeenSet;
613 
614     Aws::String m_reservedDBInstancesOfferingId;
615     bool m_reservedDBInstancesOfferingIdHasBeenSet;
616 
617     Aws::String m_dBInstanceClass;
618     bool m_dBInstanceClassHasBeenSet;
619 
620     Aws::Utils::DateTime m_startTime;
621     bool m_startTimeHasBeenSet;
622 
623     int m_duration;
624     bool m_durationHasBeenSet;
625 
626     double m_fixedPrice;
627     bool m_fixedPriceHasBeenSet;
628 
629     double m_usagePrice;
630     bool m_usagePriceHasBeenSet;
631 
632     Aws::String m_currencyCode;
633     bool m_currencyCodeHasBeenSet;
634 
635     int m_dBInstanceCount;
636     bool m_dBInstanceCountHasBeenSet;
637 
638     Aws::String m_productDescription;
639     bool m_productDescriptionHasBeenSet;
640 
641     Aws::String m_offeringType;
642     bool m_offeringTypeHasBeenSet;
643 
644     bool m_multiAZ;
645     bool m_multiAZHasBeenSet;
646 
647     Aws::String m_state;
648     bool m_stateHasBeenSet;
649 
650     Aws::Vector<RecurringCharge> m_recurringCharges;
651     bool m_recurringChargesHasBeenSet;
652 
653     Aws::String m_reservedDBInstanceArn;
654     bool m_reservedDBInstanceArnHasBeenSet;
655 
656     Aws::String m_leaseId;
657     bool m_leaseIdHasBeenSet;
658   };
659 
660 } // namespace Model
661 } // namespace RDS
662 } // namespace Aws
663