AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
Option.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/DBSecurityGroupMembership.h>
12#include <aws/rds/model/OptionSetting.h>
13#include <aws/rds/model/VpcSecurityGroupMembership.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Xml {
20class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace RDS {
24namespace Model {
25
31class Option {
32 public:
33 AWS_RDS_API Option() = default;
34 AWS_RDS_API Option(const Aws::Utils::Xml::XmlNode& xmlNode);
35 AWS_RDS_API Option& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
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& GetOptionName() const { return m_optionName; }
45 inline bool OptionNameHasBeenSet() const { return m_optionNameHasBeenSet; }
46 template <typename OptionNameT = Aws::String>
47 void SetOptionName(OptionNameT&& value) {
48 m_optionNameHasBeenSet = true;
49 m_optionName = std::forward<OptionNameT>(value);
50 }
51 template <typename OptionNameT = Aws::String>
52 Option& WithOptionName(OptionNameT&& value) {
53 SetOptionName(std::forward<OptionNameT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetOptionDescription() const { return m_optionDescription; }
63 inline bool OptionDescriptionHasBeenSet() const { return m_optionDescriptionHasBeenSet; }
64 template <typename OptionDescriptionT = Aws::String>
65 void SetOptionDescription(OptionDescriptionT&& value) {
66 m_optionDescriptionHasBeenSet = true;
67 m_optionDescription = std::forward<OptionDescriptionT>(value);
68 }
69 template <typename OptionDescriptionT = Aws::String>
70 Option& WithOptionDescription(OptionDescriptionT&& value) {
71 SetOptionDescription(std::forward<OptionDescriptionT>(value));
72 return *this;
73 }
75
77
80 inline bool GetPersistent() const { return m_persistent; }
81 inline bool PersistentHasBeenSet() const { return m_persistentHasBeenSet; }
82 inline void SetPersistent(bool value) {
83 m_persistentHasBeenSet = true;
84 m_persistent = value;
85 }
86 inline Option& WithPersistent(bool value) {
87 SetPersistent(value);
88 return *this;
89 }
91
93
96 inline bool GetPermanent() const { return m_permanent; }
97 inline bool PermanentHasBeenSet() const { return m_permanentHasBeenSet; }
98 inline void SetPermanent(bool value) {
99 m_permanentHasBeenSet = true;
100 m_permanent = value;
101 }
102 inline Option& WithPermanent(bool value) {
103 SetPermanent(value);
104 return *this;
105 }
107
109
112 inline int GetPort() const { return m_port; }
113 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
114 inline void SetPort(int value) {
115 m_portHasBeenSet = true;
116 m_port = value;
117 }
118 inline Option& WithPort(int value) {
119 SetPort(value);
120 return *this;
121 }
123
125
128 inline const Aws::String& GetOptionVersion() const { return m_optionVersion; }
129 inline bool OptionVersionHasBeenSet() const { return m_optionVersionHasBeenSet; }
130 template <typename OptionVersionT = Aws::String>
131 void SetOptionVersion(OptionVersionT&& value) {
132 m_optionVersionHasBeenSet = true;
133 m_optionVersion = std::forward<OptionVersionT>(value);
134 }
135 template <typename OptionVersionT = Aws::String>
136 Option& WithOptionVersion(OptionVersionT&& value) {
137 SetOptionVersion(std::forward<OptionVersionT>(value));
138 return *this;
139 }
141
143
146 inline const Aws::Vector<OptionSetting>& GetOptionSettings() const { return m_optionSettings; }
147 inline bool OptionSettingsHasBeenSet() const { return m_optionSettingsHasBeenSet; }
148 template <typename OptionSettingsT = Aws::Vector<OptionSetting>>
149 void SetOptionSettings(OptionSettingsT&& value) {
150 m_optionSettingsHasBeenSet = true;
151 m_optionSettings = std::forward<OptionSettingsT>(value);
152 }
153 template <typename OptionSettingsT = Aws::Vector<OptionSetting>>
154 Option& WithOptionSettings(OptionSettingsT&& value) {
155 SetOptionSettings(std::forward<OptionSettingsT>(value));
156 return *this;
157 }
158 template <typename OptionSettingsT = OptionSetting>
159 Option& AddOptionSettings(OptionSettingsT&& value) {
160 m_optionSettingsHasBeenSet = true;
161 m_optionSettings.emplace_back(std::forward<OptionSettingsT>(value));
162 return *this;
163 }
165
167
171 inline const Aws::Vector<DBSecurityGroupMembership>& GetDBSecurityGroupMemberships() const { return m_dBSecurityGroupMemberships; }
172 inline bool DBSecurityGroupMembershipsHasBeenSet() const { return m_dBSecurityGroupMembershipsHasBeenSet; }
173 template <typename DBSecurityGroupMembershipsT = Aws::Vector<DBSecurityGroupMembership>>
174 void SetDBSecurityGroupMemberships(DBSecurityGroupMembershipsT&& value) {
175 m_dBSecurityGroupMembershipsHasBeenSet = true;
176 m_dBSecurityGroupMemberships = std::forward<DBSecurityGroupMembershipsT>(value);
177 }
178 template <typename DBSecurityGroupMembershipsT = Aws::Vector<DBSecurityGroupMembership>>
179 Option& WithDBSecurityGroupMemberships(DBSecurityGroupMembershipsT&& value) {
180 SetDBSecurityGroupMemberships(std::forward<DBSecurityGroupMembershipsT>(value));
181 return *this;
182 }
183 template <typename DBSecurityGroupMembershipsT = DBSecurityGroupMembership>
184 Option& AddDBSecurityGroupMemberships(DBSecurityGroupMembershipsT&& value) {
185 m_dBSecurityGroupMembershipsHasBeenSet = true;
186 m_dBSecurityGroupMemberships.emplace_back(std::forward<DBSecurityGroupMembershipsT>(value));
187 return *this;
188 }
190
192
196 inline const Aws::Vector<VpcSecurityGroupMembership>& GetVpcSecurityGroupMemberships() const { return m_vpcSecurityGroupMemberships; }
197 inline bool VpcSecurityGroupMembershipsHasBeenSet() const { return m_vpcSecurityGroupMembershipsHasBeenSet; }
198 template <typename VpcSecurityGroupMembershipsT = Aws::Vector<VpcSecurityGroupMembership>>
199 void SetVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT&& value) {
200 m_vpcSecurityGroupMembershipsHasBeenSet = true;
201 m_vpcSecurityGroupMemberships = std::forward<VpcSecurityGroupMembershipsT>(value);
202 }
203 template <typename VpcSecurityGroupMembershipsT = Aws::Vector<VpcSecurityGroupMembership>>
204 Option& WithVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT&& value) {
205 SetVpcSecurityGroupMemberships(std::forward<VpcSecurityGroupMembershipsT>(value));
206 return *this;
207 }
208 template <typename VpcSecurityGroupMembershipsT = VpcSecurityGroupMembership>
209 Option& AddVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT&& value) {
210 m_vpcSecurityGroupMembershipsHasBeenSet = true;
211 m_vpcSecurityGroupMemberships.emplace_back(std::forward<VpcSecurityGroupMembershipsT>(value));
212 return *this;
213 }
215 private:
216 Aws::String m_optionName;
217
218 Aws::String m_optionDescription;
219
220 bool m_persistent{false};
221
222 bool m_permanent{false};
223
224 int m_port{0};
225
226 Aws::String m_optionVersion;
227
228 Aws::Vector<OptionSetting> m_optionSettings;
229
230 Aws::Vector<DBSecurityGroupMembership> m_dBSecurityGroupMemberships;
231
232 Aws::Vector<VpcSecurityGroupMembership> m_vpcSecurityGroupMemberships;
233 bool m_optionNameHasBeenSet = false;
234 bool m_optionDescriptionHasBeenSet = false;
235 bool m_persistentHasBeenSet = false;
236 bool m_permanentHasBeenSet = false;
237 bool m_portHasBeenSet = false;
238 bool m_optionVersionHasBeenSet = false;
239 bool m_optionSettingsHasBeenSet = false;
240 bool m_dBSecurityGroupMembershipsHasBeenSet = false;
241 bool m_vpcSecurityGroupMembershipsHasBeenSet = false;
242};
243
244} // namespace Model
245} // namespace RDS
246} // namespace Aws
void SetOptionDescription(OptionDescriptionT &&value)
Definition Option.h:65
const Aws::Vector< VpcSecurityGroupMembership > & GetVpcSecurityGroupMemberships() const
Definition Option.h:196
bool PersistentHasBeenSet() const
Definition Option.h:81
const Aws::Vector< DBSecurityGroupMembership > & GetDBSecurityGroupMemberships() const
Definition Option.h:171
AWS_RDS_API void OutputToStream(Aws::OStream &oStream, const char *location) const
Option & AddOptionSettings(OptionSettingsT &&value)
Definition Option.h:159
Option & WithOptionSettings(OptionSettingsT &&value)
Definition Option.h:154
bool GetPermanent() const
Definition Option.h:96
Option & WithPersistent(bool value)
Definition Option.h:86
void SetPort(int value)
Definition Option.h:114
void SetOptionSettings(OptionSettingsT &&value)
Definition Option.h:149
bool OptionDescriptionHasBeenSet() const
Definition Option.h:63
Option & WithVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT &&value)
Definition Option.h:204
Option & WithPort(int value)
Definition Option.h:118
const Aws::Vector< OptionSetting > & GetOptionSettings() const
Definition Option.h:146
bool VpcSecurityGroupMembershipsHasBeenSet() const
Definition Option.h:197
bool PortHasBeenSet() const
Definition Option.h:113
void SetVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT &&value)
Definition Option.h:199
bool DBSecurityGroupMembershipsHasBeenSet() const
Definition Option.h:172
Option & WithOptionName(OptionNameT &&value)
Definition Option.h:52
AWS_RDS_API Option()=default
const Aws::String & GetOptionVersion() const
Definition Option.h:128
bool OptionNameHasBeenSet() const
Definition Option.h:45
Option & WithOptionDescription(OptionDescriptionT &&value)
Definition Option.h:70
void SetOptionVersion(OptionVersionT &&value)
Definition Option.h:131
void SetPermanent(bool value)
Definition Option.h:98
Option & AddVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT &&value)
Definition Option.h:209
Option & WithDBSecurityGroupMemberships(DBSecurityGroupMembershipsT &&value)
Definition Option.h:179
const Aws::String & GetOptionName() const
Definition Option.h:44
Option & WithPermanent(bool value)
Definition Option.h:102
bool GetPersistent() const
Definition Option.h:80
void SetDBSecurityGroupMemberships(DBSecurityGroupMembershipsT &&value)
Definition Option.h:174
AWS_RDS_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
int GetPort() const
Definition Option.h:112
Option & WithOptionVersion(OptionVersionT &&value)
Definition Option.h:136
AWS_RDS_API Option(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetPersistent(bool value)
Definition Option.h:82
const Aws::String & GetOptionDescription() const
Definition Option.h:62
bool OptionVersionHasBeenSet() const
Definition Option.h:129
Option & AddDBSecurityGroupMemberships(DBSecurityGroupMembershipsT &&value)
Definition Option.h:184
bool OptionSettingsHasBeenSet() const
Definition Option.h:147
bool PermanentHasBeenSet() const
Definition Option.h:97
void SetOptionName(OptionNameT &&value)
Definition Option.h:47
AWS_RDS_API Option & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
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