AWS SDK for C++  0.12.9
AWS SDK for C++
OrderableDBInstanceOption.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>
21 
22 namespace Aws
23 {
24 namespace Utils
25 {
26 namespace Xml
27 {
28  class XmlNode;
29 } // namespace Xml
30 } // namespace Utils
31 namespace RDS
32 {
33 namespace Model
34 {
35 
42  {
43  public:
46  OrderableDBInstanceOption& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
47 
48  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
49  void OutputToStream(Aws::OStream& oStream, const char* location) const;
50 
54  inline const Aws::String& GetEngine() const{ return m_engine; }
55 
59  inline void SetEngine(const Aws::String& value) { m_engineHasBeenSet = true; m_engine = value; }
60 
64  inline void SetEngine(Aws::String&& value) { m_engineHasBeenSet = true; m_engine = value; }
65 
69  inline void SetEngine(const char* value) { m_engineHasBeenSet = true; m_engine.assign(value); }
70 
74  inline OrderableDBInstanceOption& WithEngine(const Aws::String& value) { SetEngine(value); return *this;}
75 
79  inline OrderableDBInstanceOption& WithEngine(Aws::String&& value) { SetEngine(value); return *this;}
80 
84  inline OrderableDBInstanceOption& WithEngine(const char* value) { SetEngine(value); return *this;}
85 
89  inline const Aws::String& GetEngineVersion() const{ return m_engineVersion; }
90 
94  inline void SetEngineVersion(const Aws::String& value) { m_engineVersionHasBeenSet = true; m_engineVersion = value; }
95 
99  inline void SetEngineVersion(Aws::String&& value) { m_engineVersionHasBeenSet = true; m_engineVersion = value; }
100 
104  inline void SetEngineVersion(const char* value) { m_engineVersionHasBeenSet = true; m_engineVersion.assign(value); }
105 
109  inline OrderableDBInstanceOption& WithEngineVersion(const Aws::String& value) { SetEngineVersion(value); return *this;}
110 
114  inline OrderableDBInstanceOption& WithEngineVersion(Aws::String&& value) { SetEngineVersion(value); return *this;}
115 
119  inline OrderableDBInstanceOption& WithEngineVersion(const char* value) { SetEngineVersion(value); return *this;}
120 
124  inline const Aws::String& GetDBInstanceClass() const{ return m_dBInstanceClass; }
125 
129  inline void SetDBInstanceClass(const Aws::String& value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass = value; }
130 
134  inline void SetDBInstanceClass(Aws::String&& value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass = value; }
135 
139  inline void SetDBInstanceClass(const char* value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass.assign(value); }
140 
144  inline OrderableDBInstanceOption& WithDBInstanceClass(const Aws::String& value) { SetDBInstanceClass(value); return *this;}
145 
149  inline OrderableDBInstanceOption& WithDBInstanceClass(Aws::String&& value) { SetDBInstanceClass(value); return *this;}
150 
154  inline OrderableDBInstanceOption& WithDBInstanceClass(const char* value) { SetDBInstanceClass(value); return *this;}
155 
159  inline const Aws::String& GetLicenseModel() const{ return m_licenseModel; }
160 
164  inline void SetLicenseModel(const Aws::String& value) { m_licenseModelHasBeenSet = true; m_licenseModel = value; }
165 
169  inline void SetLicenseModel(Aws::String&& value) { m_licenseModelHasBeenSet = true; m_licenseModel = value; }
170 
174  inline void SetLicenseModel(const char* value) { m_licenseModelHasBeenSet = true; m_licenseModel.assign(value); }
175 
179  inline OrderableDBInstanceOption& WithLicenseModel(const Aws::String& value) { SetLicenseModel(value); return *this;}
180 
184  inline OrderableDBInstanceOption& WithLicenseModel(Aws::String&& value) { SetLicenseModel(value); return *this;}
185 
189  inline OrderableDBInstanceOption& WithLicenseModel(const char* value) { SetLicenseModel(value); return *this;}
190 
194  inline const Aws::Vector<AvailabilityZone>& GetAvailabilityZones() const{ return m_availabilityZones; }
195 
199  inline void SetAvailabilityZones(const Aws::Vector<AvailabilityZone>& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = value; }
200 
204  inline void SetAvailabilityZones(Aws::Vector<AvailabilityZone>&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = value; }
205 
209  inline OrderableDBInstanceOption& WithAvailabilityZones(const Aws::Vector<AvailabilityZone>& value) { SetAvailabilityZones(value); return *this;}
210 
214  inline OrderableDBInstanceOption& WithAvailabilityZones(Aws::Vector<AvailabilityZone>&& value) { SetAvailabilityZones(value); return *this;}
215 
219  inline OrderableDBInstanceOption& AddAvailabilityZones(const AvailabilityZone& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
220 
224  inline OrderableDBInstanceOption& AddAvailabilityZones(AvailabilityZone&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
225 
229  inline bool GetMultiAZCapable() const{ return m_multiAZCapable; }
230 
234  inline void SetMultiAZCapable(bool value) { m_multiAZCapableHasBeenSet = true; m_multiAZCapable = value; }
235 
239  inline OrderableDBInstanceOption& WithMultiAZCapable(bool value) { SetMultiAZCapable(value); return *this;}
240 
244  inline bool GetReadReplicaCapable() const{ return m_readReplicaCapable; }
245 
249  inline void SetReadReplicaCapable(bool value) { m_readReplicaCapableHasBeenSet = true; m_readReplicaCapable = value; }
250 
254  inline OrderableDBInstanceOption& WithReadReplicaCapable(bool value) { SetReadReplicaCapable(value); return *this;}
255 
259  inline bool GetVpc() const{ return m_vpc; }
260 
264  inline void SetVpc(bool value) { m_vpcHasBeenSet = true; m_vpc = value; }
265 
269  inline OrderableDBInstanceOption& WithVpc(bool value) { SetVpc(value); return *this;}
270 
274  inline bool GetSupportsStorageEncryption() const{ return m_supportsStorageEncryption; }
275 
279  inline void SetSupportsStorageEncryption(bool value) { m_supportsStorageEncryptionHasBeenSet = true; m_supportsStorageEncryption = value; }
280 
284  inline OrderableDBInstanceOption& WithSupportsStorageEncryption(bool value) { SetSupportsStorageEncryption(value); return *this;}
285 
289  inline const Aws::String& GetStorageType() const{ return m_storageType; }
290 
294  inline void SetStorageType(const Aws::String& value) { m_storageTypeHasBeenSet = true; m_storageType = value; }
295 
299  inline void SetStorageType(Aws::String&& value) { m_storageTypeHasBeenSet = true; m_storageType = value; }
300 
304  inline void SetStorageType(const char* value) { m_storageTypeHasBeenSet = true; m_storageType.assign(value); }
305 
309  inline OrderableDBInstanceOption& WithStorageType(const Aws::String& value) { SetStorageType(value); return *this;}
310 
314  inline OrderableDBInstanceOption& WithStorageType(Aws::String&& value) { SetStorageType(value); return *this;}
315 
319  inline OrderableDBInstanceOption& WithStorageType(const char* value) { SetStorageType(value); return *this;}
320 
324  inline bool GetSupportsIops() const{ return m_supportsIops; }
325 
329  inline void SetSupportsIops(bool value) { m_supportsIopsHasBeenSet = true; m_supportsIops = value; }
330 
334  inline OrderableDBInstanceOption& WithSupportsIops(bool value) { SetSupportsIops(value); return *this;}
335 
340  inline bool GetSupportsEnhancedMonitoring() const{ return m_supportsEnhancedMonitoring; }
341 
346  inline void SetSupportsEnhancedMonitoring(bool value) { m_supportsEnhancedMonitoringHasBeenSet = true; m_supportsEnhancedMonitoring = value; }
347 
352  inline OrderableDBInstanceOption& WithSupportsEnhancedMonitoring(bool value) { SetSupportsEnhancedMonitoring(value); return *this;}
353 
354  private:
355  Aws::String m_engine;
356  bool m_engineHasBeenSet;
357  Aws::String m_engineVersion;
358  bool m_engineVersionHasBeenSet;
359  Aws::String m_dBInstanceClass;
360  bool m_dBInstanceClassHasBeenSet;
361  Aws::String m_licenseModel;
362  bool m_licenseModelHasBeenSet;
363  Aws::Vector<AvailabilityZone> m_availabilityZones;
364  bool m_availabilityZonesHasBeenSet;
365  bool m_multiAZCapable;
366  bool m_multiAZCapableHasBeenSet;
367  bool m_readReplicaCapable;
368  bool m_readReplicaCapableHasBeenSet;
369  bool m_vpc;
370  bool m_vpcHasBeenSet;
371  bool m_supportsStorageEncryption;
372  bool m_supportsStorageEncryptionHasBeenSet;
373  Aws::String m_storageType;
374  bool m_storageTypeHasBeenSet;
375  bool m_supportsIops;
376  bool m_supportsIopsHasBeenSet;
377  bool m_supportsEnhancedMonitoring;
378  bool m_supportsEnhancedMonitoringHasBeenSet;
379  };
380 
381 } // namespace Model
382 } // namespace RDS
383 } // namespace Aws
OrderableDBInstanceOption & WithEngineVersion(const char *value)
OrderableDBInstanceOption & WithLicenseModel(Aws::String &&value)
OrderableDBInstanceOption & WithEngine(const Aws::String &value)
#define AWS_RDS_API
Definition: RDS_EXPORTS.h:34
OrderableDBInstanceOption & WithVpc(bool value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
OrderableDBInstanceOption & WithStorageType(const Aws::String &value)
OrderableDBInstanceOption & WithEngineVersion(const Aws::String &value)
OrderableDBInstanceOption & WithEngineVersion(Aws::String &&value)
OrderableDBInstanceOption & WithLicenseModel(const Aws::String &value)
OrderableDBInstanceOption & WithDBInstanceClass(const char *value)
OrderableDBInstanceOption & WithStorageType(const char *value)
OrderableDBInstanceOption & WithStorageType(Aws::String &&value)
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
OrderableDBInstanceOption & WithDBInstanceClass(const Aws::String &value)
OrderableDBInstanceOption & WithAvailabilityZones(Aws::Vector< AvailabilityZone > &&value)
OrderableDBInstanceOption & WithAvailabilityZones(const Aws::Vector< AvailabilityZone > &value)
OrderableDBInstanceOption & WithDBInstanceClass(Aws::String &&value)
OrderableDBInstanceOption & AddAvailabilityZones(const AvailabilityZone &value)
void SetAvailabilityZones(const Aws::Vector< AvailabilityZone > &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
OrderableDBInstanceOption & WithMultiAZCapable(bool value)
OrderableDBInstanceOption & WithSupportsStorageEncryption(bool value)
void SetAvailabilityZones(Aws::Vector< AvailabilityZone > &&value)
OrderableDBInstanceOption & WithSupportsEnhancedMonitoring(bool value)
OrderableDBInstanceOption & WithEngine(Aws::String &&value)
OrderableDBInstanceOption & WithLicenseModel(const char *value)
OrderableDBInstanceOption & WithEngine(const char *value)
const Aws::Vector< AvailabilityZone > & GetAvailabilityZones() const
OrderableDBInstanceOption & WithReadReplicaCapable(bool value)
OrderableDBInstanceOption & AddAvailabilityZones(AvailabilityZone &&value)
OrderableDBInstanceOption & WithSupportsIops(bool value)
JSON (JavaScript Object Notation).