AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
OptionGroup.h
1
6#pragma once
7#include <aws/core/utils/DateTime.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/rds/RDS_EXPORTS.h>
12#include <aws/rds/model/Option.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace RDS {
23namespace Model {
24
31 public:
32 AWS_RDS_API OptionGroup() = default;
33 AWS_RDS_API OptionGroup(const Aws::Utils::Xml::XmlNode& xmlNode);
34 AWS_RDS_API OptionGroup& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
35
36 AWS_RDS_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
37 AWS_RDS_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
38
40
43 inline const Aws::String& GetOptionGroupName() const { return m_optionGroupName; }
44 inline bool OptionGroupNameHasBeenSet() const { return m_optionGroupNameHasBeenSet; }
45 template <typename OptionGroupNameT = Aws::String>
46 void SetOptionGroupName(OptionGroupNameT&& value) {
47 m_optionGroupNameHasBeenSet = true;
48 m_optionGroupName = std::forward<OptionGroupNameT>(value);
49 }
50 template <typename OptionGroupNameT = Aws::String>
51 OptionGroup& WithOptionGroupName(OptionGroupNameT&& value) {
52 SetOptionGroupName(std::forward<OptionGroupNameT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetOptionGroupDescription() const { return m_optionGroupDescription; }
62 inline bool OptionGroupDescriptionHasBeenSet() const { return m_optionGroupDescriptionHasBeenSet; }
63 template <typename OptionGroupDescriptionT = Aws::String>
64 void SetOptionGroupDescription(OptionGroupDescriptionT&& value) {
65 m_optionGroupDescriptionHasBeenSet = true;
66 m_optionGroupDescription = std::forward<OptionGroupDescriptionT>(value);
67 }
68 template <typename OptionGroupDescriptionT = Aws::String>
69 OptionGroup& WithOptionGroupDescription(OptionGroupDescriptionT&& value) {
70 SetOptionGroupDescription(std::forward<OptionGroupDescriptionT>(value));
71 return *this;
72 }
74
76
80 inline const Aws::String& GetEngineName() const { return m_engineName; }
81 inline bool EngineNameHasBeenSet() const { return m_engineNameHasBeenSet; }
82 template <typename EngineNameT = Aws::String>
83 void SetEngineName(EngineNameT&& value) {
84 m_engineNameHasBeenSet = true;
85 m_engineName = std::forward<EngineNameT>(value);
86 }
87 template <typename EngineNameT = Aws::String>
88 OptionGroup& WithEngineName(EngineNameT&& value) {
89 SetEngineName(std::forward<EngineNameT>(value));
90 return *this;
91 }
93
95
98 inline const Aws::String& GetMajorEngineVersion() const { return m_majorEngineVersion; }
99 inline bool MajorEngineVersionHasBeenSet() const { return m_majorEngineVersionHasBeenSet; }
100 template <typename MajorEngineVersionT = Aws::String>
101 void SetMajorEngineVersion(MajorEngineVersionT&& value) {
102 m_majorEngineVersionHasBeenSet = true;
103 m_majorEngineVersion = std::forward<MajorEngineVersionT>(value);
104 }
105 template <typename MajorEngineVersionT = Aws::String>
106 OptionGroup& WithMajorEngineVersion(MajorEngineVersionT&& value) {
107 SetMajorEngineVersion(std::forward<MajorEngineVersionT>(value));
108 return *this;
109 }
111
113
116 inline const Aws::Vector<Option>& GetOptions() const { return m_options; }
117 inline bool OptionsHasBeenSet() const { return m_optionsHasBeenSet; }
118 template <typename OptionsT = Aws::Vector<Option>>
119 void SetOptions(OptionsT&& value) {
120 m_optionsHasBeenSet = true;
121 m_options = std::forward<OptionsT>(value);
122 }
123 template <typename OptionsT = Aws::Vector<Option>>
124 OptionGroup& WithOptions(OptionsT&& value) {
125 SetOptions(std::forward<OptionsT>(value));
126 return *this;
127 }
128 template <typename OptionsT = Option>
129 OptionGroup& AddOptions(OptionsT&& value) {
130 m_optionsHasBeenSet = true;
131 m_options.emplace_back(std::forward<OptionsT>(value));
132 return *this;
133 }
135
137
142 inline bool GetAllowsVpcAndNonVpcInstanceMemberships() const { return m_allowsVpcAndNonVpcInstanceMemberships; }
143 inline bool AllowsVpcAndNonVpcInstanceMembershipsHasBeenSet() const { return m_allowsVpcAndNonVpcInstanceMembershipsHasBeenSet; }
145 m_allowsVpcAndNonVpcInstanceMembershipsHasBeenSet = true;
146 m_allowsVpcAndNonVpcInstanceMemberships = value;
147 }
150 return *this;
151 }
153
155
163 inline const Aws::String& GetVpcId() const { return m_vpcId; }
164 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
165 template <typename VpcIdT = Aws::String>
166 void SetVpcId(VpcIdT&& value) {
167 m_vpcIdHasBeenSet = true;
168 m_vpcId = std::forward<VpcIdT>(value);
169 }
170 template <typename VpcIdT = Aws::String>
171 OptionGroup& WithVpcId(VpcIdT&& value) {
172 SetVpcId(std::forward<VpcIdT>(value));
173 return *this;
174 }
176
178
181 inline const Aws::String& GetOptionGroupArn() const { return m_optionGroupArn; }
182 inline bool OptionGroupArnHasBeenSet() const { return m_optionGroupArnHasBeenSet; }
183 template <typename OptionGroupArnT = Aws::String>
184 void SetOptionGroupArn(OptionGroupArnT&& value) {
185 m_optionGroupArnHasBeenSet = true;
186 m_optionGroupArn = std::forward<OptionGroupArnT>(value);
187 }
188 template <typename OptionGroupArnT = Aws::String>
189 OptionGroup& WithOptionGroupArn(OptionGroupArnT&& value) {
190 SetOptionGroupArn(std::forward<OptionGroupArnT>(value));
191 return *this;
192 }
194
196
200 inline const Aws::String& GetSourceOptionGroup() const { return m_sourceOptionGroup; }
201 inline bool SourceOptionGroupHasBeenSet() const { return m_sourceOptionGroupHasBeenSet; }
202 template <typename SourceOptionGroupT = Aws::String>
203 void SetSourceOptionGroup(SourceOptionGroupT&& value) {
204 m_sourceOptionGroupHasBeenSet = true;
205 m_sourceOptionGroup = std::forward<SourceOptionGroupT>(value);
206 }
207 template <typename SourceOptionGroupT = Aws::String>
208 OptionGroup& WithSourceOptionGroup(SourceOptionGroupT&& value) {
209 SetSourceOptionGroup(std::forward<SourceOptionGroupT>(value));
210 return *this;
211 }
213
215
219 inline const Aws::String& GetSourceAccountId() const { return m_sourceAccountId; }
220 inline bool SourceAccountIdHasBeenSet() const { return m_sourceAccountIdHasBeenSet; }
221 template <typename SourceAccountIdT = Aws::String>
222 void SetSourceAccountId(SourceAccountIdT&& value) {
223 m_sourceAccountIdHasBeenSet = true;
224 m_sourceAccountId = std::forward<SourceAccountIdT>(value);
225 }
226 template <typename SourceAccountIdT = Aws::String>
227 OptionGroup& WithSourceAccountId(SourceAccountIdT&& value) {
228 SetSourceAccountId(std::forward<SourceAccountIdT>(value));
229 return *this;
230 }
232
234
237 inline const Aws::Utils::DateTime& GetCopyTimestamp() const { return m_copyTimestamp; }
238 inline bool CopyTimestampHasBeenSet() const { return m_copyTimestampHasBeenSet; }
239 template <typename CopyTimestampT = Aws::Utils::DateTime>
240 void SetCopyTimestamp(CopyTimestampT&& value) {
241 m_copyTimestampHasBeenSet = true;
242 m_copyTimestamp = std::forward<CopyTimestampT>(value);
243 }
244 template <typename CopyTimestampT = Aws::Utils::DateTime>
245 OptionGroup& WithCopyTimestamp(CopyTimestampT&& value) {
246 SetCopyTimestamp(std::forward<CopyTimestampT>(value));
247 return *this;
248 }
250 private:
251 Aws::String m_optionGroupName;
252
253 Aws::String m_optionGroupDescription;
254
255 Aws::String m_engineName;
256
257 Aws::String m_majorEngineVersion;
258
259 Aws::Vector<Option> m_options;
260
261 bool m_allowsVpcAndNonVpcInstanceMemberships{false};
262
263 Aws::String m_vpcId;
264
265 Aws::String m_optionGroupArn;
266
267 Aws::String m_sourceOptionGroup;
268
269 Aws::String m_sourceAccountId;
270
271 Aws::Utils::DateTime m_copyTimestamp{};
272 bool m_optionGroupNameHasBeenSet = false;
273 bool m_optionGroupDescriptionHasBeenSet = false;
274 bool m_engineNameHasBeenSet = false;
275 bool m_majorEngineVersionHasBeenSet = false;
276 bool m_optionsHasBeenSet = false;
277 bool m_allowsVpcAndNonVpcInstanceMembershipsHasBeenSet = false;
278 bool m_vpcIdHasBeenSet = false;
279 bool m_optionGroupArnHasBeenSet = false;
280 bool m_sourceOptionGroupHasBeenSet = false;
281 bool m_sourceAccountIdHasBeenSet = false;
282 bool m_copyTimestampHasBeenSet = false;
283};
284
285} // namespace Model
286} // namespace RDS
287} // namespace Aws
const Aws::String & GetVpcId() const
AWS_RDS_API OptionGroup & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Utils::DateTime & GetCopyTimestamp() const
OptionGroup & WithVpcId(VpcIdT &&value)
OptionGroup & WithSourceOptionGroup(SourceOptionGroupT &&value)
void SetOptionGroupName(OptionGroupNameT &&value)
Definition OptionGroup.h:46
bool SourceOptionGroupHasBeenSet() const
OptionGroup & WithOptionGroupDescription(OptionGroupDescriptionT &&value)
Definition OptionGroup.h:69
void SetMajorEngineVersion(MajorEngineVersionT &&value)
OptionGroup & WithAllowsVpcAndNonVpcInstanceMemberships(bool value)
const Aws::String & GetMajorEngineVersion() const
Definition OptionGroup.h:98
void SetSourceAccountId(SourceAccountIdT &&value)
bool OptionGroupDescriptionHasBeenSet() const
Definition OptionGroup.h:62
void SetAllowsVpcAndNonVpcInstanceMemberships(bool value)
OptionGroup & WithOptionGroupArn(OptionGroupArnT &&value)
void SetEngineName(EngineNameT &&value)
Definition OptionGroup.h:83
bool AllowsVpcAndNonVpcInstanceMembershipsHasBeenSet() const
const Aws::String & GetOptionGroupDescription() const
Definition OptionGroup.h:61
void SetCopyTimestamp(CopyTimestampT &&value)
AWS_RDS_API OptionGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< Option > & GetOptions() const
bool OptionGroupArnHasBeenSet() const
bool EngineNameHasBeenSet() const
Definition OptionGroup.h:81
void SetVpcId(VpcIdT &&value)
OptionGroup & WithCopyTimestamp(CopyTimestampT &&value)
const Aws::String & GetSourceAccountId() const
OptionGroup & AddOptions(OptionsT &&value)
const Aws::String & GetOptionGroupName() const
Definition OptionGroup.h:43
OptionGroup & WithMajorEngineVersion(MajorEngineVersionT &&value)
OptionGroup & WithOptionGroupName(OptionGroupNameT &&value)
Definition OptionGroup.h:51
AWS_RDS_API OptionGroup()=default
bool OptionGroupNameHasBeenSet() const
Definition OptionGroup.h:44
bool SourceAccountIdHasBeenSet() const
const Aws::String & GetEngineName() const
Definition OptionGroup.h:80
void SetSourceOptionGroup(SourceOptionGroupT &&value)
void SetOptionGroupDescription(OptionGroupDescriptionT &&value)
Definition OptionGroup.h:64
AWS_RDS_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetOptionGroupArn(OptionGroupArnT &&value)
bool MajorEngineVersionHasBeenSet() const
Definition OptionGroup.h:99
void SetOptions(OptionsT &&value)
OptionGroup & WithSourceAccountId(SourceAccountIdT &&value)
AWS_RDS_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::String & GetSourceOptionGroup() const
OptionGroup & WithEngineName(EngineNameT &&value)
Definition OptionGroup.h:88
bool GetAllowsVpcAndNonVpcInstanceMemberships() const
const Aws::String & GetOptionGroupArn() const
OptionGroup & WithOptions(OptionsT &&value)
bool CopyTimestampHasBeenSet() 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