AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
OptionConfiguration.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/OptionSetting.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
31 public:
32 AWS_RDS_API OptionConfiguration() = default;
33 AWS_RDS_API OptionConfiguration(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& GetOptionName() const { return m_optionName; }
44 inline bool OptionNameHasBeenSet() const { return m_optionNameHasBeenSet; }
45 template <typename OptionNameT = Aws::String>
46 void SetOptionName(OptionNameT&& value) {
47 m_optionNameHasBeenSet = true;
48 m_optionName = std::forward<OptionNameT>(value);
49 }
50 template <typename OptionNameT = Aws::String>
51 OptionConfiguration& WithOptionName(OptionNameT&& value) {
52 SetOptionName(std::forward<OptionNameT>(value));
53 return *this;
54 }
56
58
61 inline int GetPort() const { return m_port; }
62 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
63 inline void SetPort(int value) {
64 m_portHasBeenSet = true;
65 m_port = value;
66 }
67 inline OptionConfiguration& WithPort(int value) {
68 SetPort(value);
69 return *this;
70 }
72
74
77 inline const Aws::String& GetOptionVersion() const { return m_optionVersion; }
78 inline bool OptionVersionHasBeenSet() const { return m_optionVersionHasBeenSet; }
79 template <typename OptionVersionT = Aws::String>
80 void SetOptionVersion(OptionVersionT&& value) {
81 m_optionVersionHasBeenSet = true;
82 m_optionVersion = std::forward<OptionVersionT>(value);
83 }
84 template <typename OptionVersionT = Aws::String>
85 OptionConfiguration& WithOptionVersion(OptionVersionT&& value) {
86 SetOptionVersion(std::forward<OptionVersionT>(value));
87 return *this;
88 }
90
92
95 inline const Aws::Vector<Aws::String>& GetDBSecurityGroupMemberships() const { return m_dBSecurityGroupMemberships; }
96 inline bool DBSecurityGroupMembershipsHasBeenSet() const { return m_dBSecurityGroupMembershipsHasBeenSet; }
97 template <typename DBSecurityGroupMembershipsT = Aws::Vector<Aws::String>>
98 void SetDBSecurityGroupMemberships(DBSecurityGroupMembershipsT&& value) {
99 m_dBSecurityGroupMembershipsHasBeenSet = true;
100 m_dBSecurityGroupMemberships = std::forward<DBSecurityGroupMembershipsT>(value);
101 }
102 template <typename DBSecurityGroupMembershipsT = Aws::Vector<Aws::String>>
103 OptionConfiguration& WithDBSecurityGroupMemberships(DBSecurityGroupMembershipsT&& value) {
104 SetDBSecurityGroupMemberships(std::forward<DBSecurityGroupMembershipsT>(value));
105 return *this;
106 }
107 template <typename DBSecurityGroupMembershipsT = Aws::String>
108 OptionConfiguration& AddDBSecurityGroupMemberships(DBSecurityGroupMembershipsT&& value) {
109 m_dBSecurityGroupMembershipsHasBeenSet = true;
110 m_dBSecurityGroupMemberships.emplace_back(std::forward<DBSecurityGroupMembershipsT>(value));
111 return *this;
112 }
114
116
119 inline const Aws::Vector<Aws::String>& GetVpcSecurityGroupMemberships() const { return m_vpcSecurityGroupMemberships; }
120 inline bool VpcSecurityGroupMembershipsHasBeenSet() const { return m_vpcSecurityGroupMembershipsHasBeenSet; }
121 template <typename VpcSecurityGroupMembershipsT = Aws::Vector<Aws::String>>
122 void SetVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT&& value) {
123 m_vpcSecurityGroupMembershipsHasBeenSet = true;
124 m_vpcSecurityGroupMemberships = std::forward<VpcSecurityGroupMembershipsT>(value);
125 }
126 template <typename VpcSecurityGroupMembershipsT = Aws::Vector<Aws::String>>
127 OptionConfiguration& WithVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT&& value) {
128 SetVpcSecurityGroupMemberships(std::forward<VpcSecurityGroupMembershipsT>(value));
129 return *this;
130 }
131 template <typename VpcSecurityGroupMembershipsT = Aws::String>
132 OptionConfiguration& AddVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT&& value) {
133 m_vpcSecurityGroupMembershipsHasBeenSet = true;
134 m_vpcSecurityGroupMemberships.emplace_back(std::forward<VpcSecurityGroupMembershipsT>(value));
135 return *this;
136 }
138
140
143 inline const Aws::Vector<OptionSetting>& GetOptionSettings() const { return m_optionSettings; }
144 inline bool OptionSettingsHasBeenSet() const { return m_optionSettingsHasBeenSet; }
145 template <typename OptionSettingsT = Aws::Vector<OptionSetting>>
146 void SetOptionSettings(OptionSettingsT&& value) {
147 m_optionSettingsHasBeenSet = true;
148 m_optionSettings = std::forward<OptionSettingsT>(value);
149 }
150 template <typename OptionSettingsT = Aws::Vector<OptionSetting>>
151 OptionConfiguration& WithOptionSettings(OptionSettingsT&& value) {
152 SetOptionSettings(std::forward<OptionSettingsT>(value));
153 return *this;
154 }
155 template <typename OptionSettingsT = OptionSetting>
156 OptionConfiguration& AddOptionSettings(OptionSettingsT&& value) {
157 m_optionSettingsHasBeenSet = true;
158 m_optionSettings.emplace_back(std::forward<OptionSettingsT>(value));
159 return *this;
160 }
162 private:
163 Aws::String m_optionName;
164
165 int m_port{0};
166
167 Aws::String m_optionVersion;
168
169 Aws::Vector<Aws::String> m_dBSecurityGroupMemberships;
170
171 Aws::Vector<Aws::String> m_vpcSecurityGroupMemberships;
172
173 Aws::Vector<OptionSetting> m_optionSettings;
174 bool m_optionNameHasBeenSet = false;
175 bool m_portHasBeenSet = false;
176 bool m_optionVersionHasBeenSet = false;
177 bool m_dBSecurityGroupMembershipsHasBeenSet = false;
178 bool m_vpcSecurityGroupMembershipsHasBeenSet = false;
179 bool m_optionSettingsHasBeenSet = false;
180};
181
182} // namespace Model
183} // namespace RDS
184} // namespace Aws
AWS_RDS_API OptionConfiguration()=default
const Aws::String & GetOptionVersion() const
void SetOptionSettings(OptionSettingsT &&value)
const Aws::Vector< Aws::String > & GetDBSecurityGroupMemberships() const
OptionConfiguration & WithDBSecurityGroupMemberships(DBSecurityGroupMembershipsT &&value)
OptionConfiguration & WithOptionName(OptionNameT &&value)
OptionConfiguration & AddOptionSettings(OptionSettingsT &&value)
void SetOptionName(OptionNameT &&value)
OptionConfiguration & WithOptionVersion(OptionVersionT &&value)
AWS_RDS_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::Vector< OptionSetting > & GetOptionSettings() const
OptionConfiguration & WithOptionSettings(OptionSettingsT &&value)
const Aws::Vector< Aws::String > & GetVpcSecurityGroupMemberships() const
void SetDBSecurityGroupMemberships(DBSecurityGroupMembershipsT &&value)
OptionConfiguration & AddVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT &&value)
OptionConfiguration & AddDBSecurityGroupMemberships(DBSecurityGroupMembershipsT &&value)
void SetVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT &&value)
void SetOptionVersion(OptionVersionT &&value)
AWS_RDS_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
OptionConfiguration & WithPort(int value)
OptionConfiguration & WithVpcSecurityGroupMemberships(VpcSecurityGroupMembershipsT &&value)
const Aws::String & GetOptionName() const
AWS_RDS_API OptionConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_RDS_API OptionConfiguration & 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