AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
OrderableDBInstanceOption.h
1
6#pragma once
7#include <aws/docdb/DocDB_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/memory/stl/AWSVector.h>
11#include <aws/docdb/model/AvailabilityZone.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Xml
19{
20 class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace DocDB
24{
25namespace Model
26{
27
34 {
35 public:
36 AWS_DOCDB_API OrderableDBInstanceOption() = default;
39
40 AWS_DOCDB_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
41 AWS_DOCDB_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
42
43
45
48 inline const Aws::String& GetEngine() const { return m_engine; }
49 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; }
50 template<typename EngineT = Aws::String>
51 void SetEngine(EngineT&& value) { m_engineHasBeenSet = true; m_engine = std::forward<EngineT>(value); }
52 template<typename EngineT = Aws::String>
53 OrderableDBInstanceOption& WithEngine(EngineT&& value) { SetEngine(std::forward<EngineT>(value)); return *this;}
55
57
60 inline const Aws::String& GetEngineVersion() const { return m_engineVersion; }
61 inline bool EngineVersionHasBeenSet() const { return m_engineVersionHasBeenSet; }
62 template<typename EngineVersionT = Aws::String>
63 void SetEngineVersion(EngineVersionT&& value) { m_engineVersionHasBeenSet = true; m_engineVersion = std::forward<EngineVersionT>(value); }
64 template<typename EngineVersionT = Aws::String>
65 OrderableDBInstanceOption& WithEngineVersion(EngineVersionT&& value) { SetEngineVersion(std::forward<EngineVersionT>(value)); return *this;}
67
69
72 inline const Aws::String& GetDBInstanceClass() const { return m_dBInstanceClass; }
73 inline bool DBInstanceClassHasBeenSet() const { return m_dBInstanceClassHasBeenSet; }
74 template<typename DBInstanceClassT = Aws::String>
75 void SetDBInstanceClass(DBInstanceClassT&& value) { m_dBInstanceClassHasBeenSet = true; m_dBInstanceClass = std::forward<DBInstanceClassT>(value); }
76 template<typename DBInstanceClassT = Aws::String>
77 OrderableDBInstanceOption& WithDBInstanceClass(DBInstanceClassT&& value) { SetDBInstanceClass(std::forward<DBInstanceClassT>(value)); return *this;}
79
81
84 inline const Aws::String& GetLicenseModel() const { return m_licenseModel; }
85 inline bool LicenseModelHasBeenSet() const { return m_licenseModelHasBeenSet; }
86 template<typename LicenseModelT = Aws::String>
87 void SetLicenseModel(LicenseModelT&& value) { m_licenseModelHasBeenSet = true; m_licenseModel = std::forward<LicenseModelT>(value); }
88 template<typename LicenseModelT = Aws::String>
89 OrderableDBInstanceOption& WithLicenseModel(LicenseModelT&& value) { SetLicenseModel(std::forward<LicenseModelT>(value)); return *this;}
91
93
96 inline const Aws::Vector<AvailabilityZone>& GetAvailabilityZones() const { return m_availabilityZones; }
97 inline bool AvailabilityZonesHasBeenSet() const { return m_availabilityZonesHasBeenSet; }
98 template<typename AvailabilityZonesT = Aws::Vector<AvailabilityZone>>
99 void SetAvailabilityZones(AvailabilityZonesT&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = std::forward<AvailabilityZonesT>(value); }
100 template<typename AvailabilityZonesT = Aws::Vector<AvailabilityZone>>
101 OrderableDBInstanceOption& WithAvailabilityZones(AvailabilityZonesT&& value) { SetAvailabilityZones(std::forward<AvailabilityZonesT>(value)); return *this;}
102 template<typename AvailabilityZonesT = AvailabilityZone>
103 OrderableDBInstanceOption& AddAvailabilityZones(AvailabilityZonesT&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.emplace_back(std::forward<AvailabilityZonesT>(value)); return *this; }
105
107
110 inline bool GetVpc() const { return m_vpc; }
111 inline bool VpcHasBeenSet() const { return m_vpcHasBeenSet; }
112 inline void SetVpc(bool value) { m_vpcHasBeenSet = true; m_vpc = value; }
113 inline OrderableDBInstanceOption& WithVpc(bool value) { SetVpc(value); return *this;}
115
117
120 inline const Aws::String& GetStorageType() const { return m_storageType; }
121 inline bool StorageTypeHasBeenSet() const { return m_storageTypeHasBeenSet; }
122 template<typename StorageTypeT = Aws::String>
123 void SetStorageType(StorageTypeT&& value) { m_storageTypeHasBeenSet = true; m_storageType = std::forward<StorageTypeT>(value); }
124 template<typename StorageTypeT = Aws::String>
125 OrderableDBInstanceOption& WithStorageType(StorageTypeT&& value) { SetStorageType(std::forward<StorageTypeT>(value)); return *this;}
127 private:
128
129 Aws::String m_engine;
130 bool m_engineHasBeenSet = false;
131
132 Aws::String m_engineVersion;
133 bool m_engineVersionHasBeenSet = false;
134
135 Aws::String m_dBInstanceClass;
136 bool m_dBInstanceClassHasBeenSet = false;
137
138 Aws::String m_licenseModel;
139 bool m_licenseModelHasBeenSet = false;
140
141 Aws::Vector<AvailabilityZone> m_availabilityZones;
142 bool m_availabilityZonesHasBeenSet = false;
143
144 bool m_vpc{false};
145 bool m_vpcHasBeenSet = false;
146
147 Aws::String m_storageType;
148 bool m_storageTypeHasBeenSet = false;
149 };
150
151} // namespace Model
152} // namespace DocDB
153} // namespace Aws
AWS_DOCDB_API void OutputToStream(Aws::OStream &oStream, const char *location) const
OrderableDBInstanceOption & WithDBInstanceClass(DBInstanceClassT &&value)
OrderableDBInstanceOption & WithAvailabilityZones(AvailabilityZonesT &&value)
AWS_DOCDB_API OrderableDBInstanceOption & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_DOCDB_API OrderableDBInstanceOption()=default
OrderableDBInstanceOption & WithVpc(bool value)
OrderableDBInstanceOption & AddAvailabilityZones(AvailabilityZonesT &&value)
OrderableDBInstanceOption & WithEngineVersion(EngineVersionT &&value)
AWS_DOCDB_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
OrderableDBInstanceOption & WithStorageType(StorageTypeT &&value)
OrderableDBInstanceOption & WithLicenseModel(LicenseModelT &&value)
OrderableDBInstanceOption & WithEngine(EngineT &&value)
void SetAvailabilityZones(AvailabilityZonesT &&value)
AWS_DOCDB_API OrderableDBInstanceOption(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< AvailabilityZone > & GetAvailabilityZones() 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