AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
ClusterSubnetGroup.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/redshift/Redshift_EXPORTS.h>
11#include <aws/redshift/model/Subnet.h>
12#include <aws/redshift/model/Tag.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace Redshift {
23namespace Model {
24
31 public:
32 AWS_REDSHIFT_API ClusterSubnetGroup() = default;
33 AWS_REDSHIFT_API ClusterSubnetGroup(const Aws::Utils::Xml::XmlNode& xmlNode);
34 AWS_REDSHIFT_API ClusterSubnetGroup& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
35
36 AWS_REDSHIFT_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
37 AWS_REDSHIFT_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
38
40
43 inline const Aws::String& GetClusterSubnetGroupName() const { return m_clusterSubnetGroupName; }
44 inline bool ClusterSubnetGroupNameHasBeenSet() const { return m_clusterSubnetGroupNameHasBeenSet; }
45 template <typename ClusterSubnetGroupNameT = Aws::String>
46 void SetClusterSubnetGroupName(ClusterSubnetGroupNameT&& value) {
47 m_clusterSubnetGroupNameHasBeenSet = true;
48 m_clusterSubnetGroupName = std::forward<ClusterSubnetGroupNameT>(value);
49 }
50 template <typename ClusterSubnetGroupNameT = Aws::String>
51 ClusterSubnetGroup& WithClusterSubnetGroupName(ClusterSubnetGroupNameT&& value) {
52 SetClusterSubnetGroupName(std::forward<ClusterSubnetGroupNameT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetDescription() const { return m_description; }
62 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
63 template <typename DescriptionT = Aws::String>
64 void SetDescription(DescriptionT&& value) {
65 m_descriptionHasBeenSet = true;
66 m_description = std::forward<DescriptionT>(value);
67 }
68 template <typename DescriptionT = Aws::String>
69 ClusterSubnetGroup& WithDescription(DescriptionT&& value) {
70 SetDescription(std::forward<DescriptionT>(value));
71 return *this;
72 }
74
76
79 inline const Aws::String& GetVpcId() const { return m_vpcId; }
80 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
81 template <typename VpcIdT = Aws::String>
82 void SetVpcId(VpcIdT&& value) {
83 m_vpcIdHasBeenSet = true;
84 m_vpcId = std::forward<VpcIdT>(value);
85 }
86 template <typename VpcIdT = Aws::String>
87 ClusterSubnetGroup& WithVpcId(VpcIdT&& value) {
88 SetVpcId(std::forward<VpcIdT>(value));
89 return *this;
90 }
92
94
98 inline const Aws::String& GetSubnetGroupStatus() const { return m_subnetGroupStatus; }
99 inline bool SubnetGroupStatusHasBeenSet() const { return m_subnetGroupStatusHasBeenSet; }
100 template <typename SubnetGroupStatusT = Aws::String>
101 void SetSubnetGroupStatus(SubnetGroupStatusT&& value) {
102 m_subnetGroupStatusHasBeenSet = true;
103 m_subnetGroupStatus = std::forward<SubnetGroupStatusT>(value);
104 }
105 template <typename SubnetGroupStatusT = Aws::String>
106 ClusterSubnetGroup& WithSubnetGroupStatus(SubnetGroupStatusT&& value) {
107 SetSubnetGroupStatus(std::forward<SubnetGroupStatusT>(value));
108 return *this;
109 }
111
113
116 inline const Aws::Vector<Subnet>& GetSubnets() const { return m_subnets; }
117 inline bool SubnetsHasBeenSet() const { return m_subnetsHasBeenSet; }
118 template <typename SubnetsT = Aws::Vector<Subnet>>
119 void SetSubnets(SubnetsT&& value) {
120 m_subnetsHasBeenSet = true;
121 m_subnets = std::forward<SubnetsT>(value);
122 }
123 template <typename SubnetsT = Aws::Vector<Subnet>>
124 ClusterSubnetGroup& WithSubnets(SubnetsT&& value) {
125 SetSubnets(std::forward<SubnetsT>(value));
126 return *this;
127 }
128 template <typename SubnetsT = Subnet>
129 ClusterSubnetGroup& AddSubnets(SubnetsT&& value) {
130 m_subnetsHasBeenSet = true;
131 m_subnets.emplace_back(std::forward<SubnetsT>(value));
132 return *this;
133 }
135
137
140 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
141 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
142 template <typename TagsT = Aws::Vector<Tag>>
143 void SetTags(TagsT&& value) {
144 m_tagsHasBeenSet = true;
145 m_tags = std::forward<TagsT>(value);
146 }
147 template <typename TagsT = Aws::Vector<Tag>>
148 ClusterSubnetGroup& WithTags(TagsT&& value) {
149 SetTags(std::forward<TagsT>(value));
150 return *this;
151 }
152 template <typename TagsT = Tag>
153 ClusterSubnetGroup& AddTags(TagsT&& value) {
154 m_tagsHasBeenSet = true;
155 m_tags.emplace_back(std::forward<TagsT>(value));
156 return *this;
157 }
159
161
165 inline const Aws::Vector<Aws::String>& GetSupportedClusterIpAddressTypes() const { return m_supportedClusterIpAddressTypes; }
166 inline bool SupportedClusterIpAddressTypesHasBeenSet() const { return m_supportedClusterIpAddressTypesHasBeenSet; }
167 template <typename SupportedClusterIpAddressTypesT = Aws::Vector<Aws::String>>
168 void SetSupportedClusterIpAddressTypes(SupportedClusterIpAddressTypesT&& value) {
169 m_supportedClusterIpAddressTypesHasBeenSet = true;
170 m_supportedClusterIpAddressTypes = std::forward<SupportedClusterIpAddressTypesT>(value);
171 }
172 template <typename SupportedClusterIpAddressTypesT = Aws::Vector<Aws::String>>
173 ClusterSubnetGroup& WithSupportedClusterIpAddressTypes(SupportedClusterIpAddressTypesT&& value) {
174 SetSupportedClusterIpAddressTypes(std::forward<SupportedClusterIpAddressTypesT>(value));
175 return *this;
176 }
177 template <typename SupportedClusterIpAddressTypesT = Aws::String>
178 ClusterSubnetGroup& AddSupportedClusterIpAddressTypes(SupportedClusterIpAddressTypesT&& value) {
179 m_supportedClusterIpAddressTypesHasBeenSet = true;
180 m_supportedClusterIpAddressTypes.emplace_back(std::forward<SupportedClusterIpAddressTypesT>(value));
181 return *this;
182 }
184 private:
185 Aws::String m_clusterSubnetGroupName;
186
187 Aws::String m_description;
188
189 Aws::String m_vpcId;
190
191 Aws::String m_subnetGroupStatus;
192
193 Aws::Vector<Subnet> m_subnets;
194
195 Aws::Vector<Tag> m_tags;
196
197 Aws::Vector<Aws::String> m_supportedClusterIpAddressTypes;
198 bool m_clusterSubnetGroupNameHasBeenSet = false;
199 bool m_descriptionHasBeenSet = false;
200 bool m_vpcIdHasBeenSet = false;
201 bool m_subnetGroupStatusHasBeenSet = false;
202 bool m_subnetsHasBeenSet = false;
203 bool m_tagsHasBeenSet = false;
204 bool m_supportedClusterIpAddressTypesHasBeenSet = false;
205};
206
207} // namespace Model
208} // namespace Redshift
209} // namespace Aws
void SetSupportedClusterIpAddressTypes(SupportedClusterIpAddressTypesT &&value)
AWS_REDSHIFT_API ClusterSubnetGroup()=default
const Aws::Vector< Aws::String > & GetSupportedClusterIpAddressTypes() const
const Aws::String & GetClusterSubnetGroupName() const
const Aws::Vector< Tag > & GetTags() const
void SetClusterSubnetGroupName(ClusterSubnetGroupNameT &&value)
ClusterSubnetGroup & WithSubnetGroupStatus(SubnetGroupStatusT &&value)
void SetSubnetGroupStatus(SubnetGroupStatusT &&value)
ClusterSubnetGroup & WithClusterSubnetGroupName(ClusterSubnetGroupNameT &&value)
ClusterSubnetGroup & WithVpcId(VpcIdT &&value)
ClusterSubnetGroup & AddSubnets(SubnetsT &&value)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_REDSHIFT_API ClusterSubnetGroup & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
ClusterSubnetGroup & WithSupportedClusterIpAddressTypes(SupportedClusterIpAddressTypesT &&value)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_REDSHIFT_API ClusterSubnetGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
ClusterSubnetGroup & WithSubnets(SubnetsT &&value)
ClusterSubnetGroup & WithDescription(DescriptionT &&value)
const Aws::String & GetDescription() const
ClusterSubnetGroup & AddTags(TagsT &&value)
ClusterSubnetGroup & AddSupportedClusterIpAddressTypes(SupportedClusterIpAddressTypesT &&value)
const Aws::Vector< Subnet > & GetSubnets() const
ClusterSubnetGroup & WithTags(TagsT &&value)
const Aws::String & GetSubnetGroupStatus() 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