AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
ReservedDBInstancesOffering.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/rds/RDS_EXPORTS.h>
11#include <aws/rds/model/RecurringCharge.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Xml {
18class XmlNode;
19} // namespace Xml
20} // namespace Utils
21namespace RDS {
22namespace Model {
23
32 public:
33 AWS_RDS_API ReservedDBInstancesOffering() = default;
36
37 AWS_RDS_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
38 AWS_RDS_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
39
41
44 inline const Aws::String& GetReservedDBInstancesOfferingId() const { return m_reservedDBInstancesOfferingId; }
45 inline bool ReservedDBInstancesOfferingIdHasBeenSet() const { return m_reservedDBInstancesOfferingIdHasBeenSet; }
46 template <typename ReservedDBInstancesOfferingIdT = Aws::String>
47 void SetReservedDBInstancesOfferingId(ReservedDBInstancesOfferingIdT&& value) {
48 m_reservedDBInstancesOfferingIdHasBeenSet = true;
49 m_reservedDBInstancesOfferingId = std::forward<ReservedDBInstancesOfferingIdT>(value);
50 }
51 template <typename ReservedDBInstancesOfferingIdT = Aws::String>
52 ReservedDBInstancesOffering& WithReservedDBInstancesOfferingId(ReservedDBInstancesOfferingIdT&& value) {
53 SetReservedDBInstancesOfferingId(std::forward<ReservedDBInstancesOfferingIdT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetDBInstanceClass() const { return m_dBInstanceClass; }
63 inline bool DBInstanceClassHasBeenSet() const { return m_dBInstanceClassHasBeenSet; }
64 template <typename DBInstanceClassT = Aws::String>
65 void SetDBInstanceClass(DBInstanceClassT&& value) {
66 m_dBInstanceClassHasBeenSet = true;
67 m_dBInstanceClass = std::forward<DBInstanceClassT>(value);
68 }
69 template <typename DBInstanceClassT = Aws::String>
71 SetDBInstanceClass(std::forward<DBInstanceClassT>(value));
72 return *this;
73 }
75
77
80 inline int GetDuration() const { return m_duration; }
81 inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; }
82 inline void SetDuration(int value) {
83 m_durationHasBeenSet = true;
84 m_duration = value;
85 }
87 SetDuration(value);
88 return *this;
89 }
91
93
96 inline double GetFixedPrice() const { return m_fixedPrice; }
97 inline bool FixedPriceHasBeenSet() const { return m_fixedPriceHasBeenSet; }
98 inline void SetFixedPrice(double value) {
99 m_fixedPriceHasBeenSet = true;
100 m_fixedPrice = value;
101 }
103 SetFixedPrice(value);
104 return *this;
105 }
107
109
112 inline double GetUsagePrice() const { return m_usagePrice; }
113 inline bool UsagePriceHasBeenSet() const { return m_usagePriceHasBeenSet; }
114 inline void SetUsagePrice(double value) {
115 m_usagePriceHasBeenSet = true;
116 m_usagePrice = value;
117 }
119 SetUsagePrice(value);
120 return *this;
121 }
123
125
128 inline const Aws::String& GetCurrencyCode() const { return m_currencyCode; }
129 inline bool CurrencyCodeHasBeenSet() const { return m_currencyCodeHasBeenSet; }
130 template <typename CurrencyCodeT = Aws::String>
131 void SetCurrencyCode(CurrencyCodeT&& value) {
132 m_currencyCodeHasBeenSet = true;
133 m_currencyCode = std::forward<CurrencyCodeT>(value);
134 }
135 template <typename CurrencyCodeT = Aws::String>
137 SetCurrencyCode(std::forward<CurrencyCodeT>(value));
138 return *this;
139 }
141
143
146 inline const Aws::String& GetProductDescription() const { return m_productDescription; }
147 inline bool ProductDescriptionHasBeenSet() const { return m_productDescriptionHasBeenSet; }
148 template <typename ProductDescriptionT = Aws::String>
149 void SetProductDescription(ProductDescriptionT&& value) {
150 m_productDescriptionHasBeenSet = true;
151 m_productDescription = std::forward<ProductDescriptionT>(value);
152 }
153 template <typename ProductDescriptionT = Aws::String>
155 SetProductDescription(std::forward<ProductDescriptionT>(value));
156 return *this;
157 }
159
161
164 inline const Aws::String& GetOfferingType() const { return m_offeringType; }
165 inline bool OfferingTypeHasBeenSet() const { return m_offeringTypeHasBeenSet; }
166 template <typename OfferingTypeT = Aws::String>
167 void SetOfferingType(OfferingTypeT&& value) {
168 m_offeringTypeHasBeenSet = true;
169 m_offeringType = std::forward<OfferingTypeT>(value);
170 }
171 template <typename OfferingTypeT = Aws::String>
173 SetOfferingType(std::forward<OfferingTypeT>(value));
174 return *this;
175 }
177
179
182 inline bool GetMultiAZ() const { return m_multiAZ; }
183 inline bool MultiAZHasBeenSet() const { return m_multiAZHasBeenSet; }
184 inline void SetMultiAZ(bool value) {
185 m_multiAZHasBeenSet = true;
186 m_multiAZ = value;
187 }
189 SetMultiAZ(value);
190 return *this;
191 }
193
195
198 inline const Aws::Vector<RecurringCharge>& GetRecurringCharges() const { return m_recurringCharges; }
199 inline bool RecurringChargesHasBeenSet() const { return m_recurringChargesHasBeenSet; }
200 template <typename RecurringChargesT = Aws::Vector<RecurringCharge>>
201 void SetRecurringCharges(RecurringChargesT&& value) {
202 m_recurringChargesHasBeenSet = true;
203 m_recurringCharges = std::forward<RecurringChargesT>(value);
204 }
205 template <typename RecurringChargesT = Aws::Vector<RecurringCharge>>
207 SetRecurringCharges(std::forward<RecurringChargesT>(value));
208 return *this;
209 }
210 template <typename RecurringChargesT = RecurringCharge>
212 m_recurringChargesHasBeenSet = true;
213 m_recurringCharges.emplace_back(std::forward<RecurringChargesT>(value));
214 return *this;
215 }
217 private:
218 Aws::String m_reservedDBInstancesOfferingId;
219
220 Aws::String m_dBInstanceClass;
221
222 int m_duration{0};
223
224 double m_fixedPrice{0.0};
225
226 double m_usagePrice{0.0};
227
228 Aws::String m_currencyCode;
229
230 Aws::String m_productDescription;
231
232 Aws::String m_offeringType;
233
234 bool m_multiAZ{false};
235
236 Aws::Vector<RecurringCharge> m_recurringCharges;
237 bool m_reservedDBInstancesOfferingIdHasBeenSet = false;
238 bool m_dBInstanceClassHasBeenSet = false;
239 bool m_durationHasBeenSet = false;
240 bool m_fixedPriceHasBeenSet = false;
241 bool m_usagePriceHasBeenSet = false;
242 bool m_currencyCodeHasBeenSet = false;
243 bool m_productDescriptionHasBeenSet = false;
244 bool m_offeringTypeHasBeenSet = false;
245 bool m_multiAZHasBeenSet = false;
246 bool m_recurringChargesHasBeenSet = false;
247};
248
249} // namespace Model
250} // namespace RDS
251} // namespace Aws
ReservedDBInstancesOffering & WithFixedPrice(double value)
ReservedDBInstancesOffering & WithDuration(int value)
AWS_RDS_API ReservedDBInstancesOffering(const Aws::Utils::Xml::XmlNode &xmlNode)
ReservedDBInstancesOffering & WithReservedDBInstancesOfferingId(ReservedDBInstancesOfferingIdT &&value)
ReservedDBInstancesOffering & AddRecurringCharges(RecurringChargesT &&value)
ReservedDBInstancesOffering & WithCurrencyCode(CurrencyCodeT &&value)
ReservedDBInstancesOffering & WithOfferingType(OfferingTypeT &&value)
AWS_RDS_API void OutputToStream(Aws::OStream &oStream, const char *location) const
ReservedDBInstancesOffering & WithMultiAZ(bool value)
void SetReservedDBInstancesOfferingId(ReservedDBInstancesOfferingIdT &&value)
ReservedDBInstancesOffering & WithDBInstanceClass(DBInstanceClassT &&value)
ReservedDBInstancesOffering & WithProductDescription(ProductDescriptionT &&value)
AWS_RDS_API ReservedDBInstancesOffering()=default
AWS_RDS_API ReservedDBInstancesOffering & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_RDS_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
ReservedDBInstancesOffering & WithUsagePrice(double value)
ReservedDBInstancesOffering & WithRecurringCharges(RecurringChargesT &&value)
const Aws::Vector< RecurringCharge > & GetRecurringCharges() 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