AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CacheSubnetGroup.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/elasticache/ElastiCache_EXPORTS.h>
11#include <aws/elasticache/model/NetworkType.h>
12#include <aws/elasticache/model/Subnet.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace ElastiCache {
23namespace Model {
24
33 public:
34 AWS_ELASTICACHE_API CacheSubnetGroup() = default;
35 AWS_ELASTICACHE_API CacheSubnetGroup(const Aws::Utils::Xml::XmlNode& xmlNode);
36 AWS_ELASTICACHE_API CacheSubnetGroup& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
37
38 AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
39 AWS_ELASTICACHE_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
40
42
45 inline const Aws::String& GetCacheSubnetGroupName() const { return m_cacheSubnetGroupName; }
46 inline bool CacheSubnetGroupNameHasBeenSet() const { return m_cacheSubnetGroupNameHasBeenSet; }
47 template <typename CacheSubnetGroupNameT = Aws::String>
48 void SetCacheSubnetGroupName(CacheSubnetGroupNameT&& value) {
49 m_cacheSubnetGroupNameHasBeenSet = true;
50 m_cacheSubnetGroupName = std::forward<CacheSubnetGroupNameT>(value);
51 }
52 template <typename CacheSubnetGroupNameT = Aws::String>
53 CacheSubnetGroup& WithCacheSubnetGroupName(CacheSubnetGroupNameT&& value) {
54 SetCacheSubnetGroupName(std::forward<CacheSubnetGroupNameT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetCacheSubnetGroupDescription() const { return m_cacheSubnetGroupDescription; }
64 inline bool CacheSubnetGroupDescriptionHasBeenSet() const { return m_cacheSubnetGroupDescriptionHasBeenSet; }
65 template <typename CacheSubnetGroupDescriptionT = Aws::String>
66 void SetCacheSubnetGroupDescription(CacheSubnetGroupDescriptionT&& value) {
67 m_cacheSubnetGroupDescriptionHasBeenSet = true;
68 m_cacheSubnetGroupDescription = std::forward<CacheSubnetGroupDescriptionT>(value);
69 }
70 template <typename CacheSubnetGroupDescriptionT = Aws::String>
71 CacheSubnetGroup& WithCacheSubnetGroupDescription(CacheSubnetGroupDescriptionT&& value) {
72 SetCacheSubnetGroupDescription(std::forward<CacheSubnetGroupDescriptionT>(value));
73 return *this;
74 }
76
78
82 inline const Aws::String& GetVpcId() const { return m_vpcId; }
83 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
84 template <typename VpcIdT = Aws::String>
85 void SetVpcId(VpcIdT&& value) {
86 m_vpcIdHasBeenSet = true;
87 m_vpcId = std::forward<VpcIdT>(value);
88 }
89 template <typename VpcIdT = Aws::String>
90 CacheSubnetGroup& WithVpcId(VpcIdT&& value) {
91 SetVpcId(std::forward<VpcIdT>(value));
92 return *this;
93 }
95
97
100 inline const Aws::Vector<Subnet>& GetSubnets() const { return m_subnets; }
101 inline bool SubnetsHasBeenSet() const { return m_subnetsHasBeenSet; }
102 template <typename SubnetsT = Aws::Vector<Subnet>>
103 void SetSubnets(SubnetsT&& value) {
104 m_subnetsHasBeenSet = true;
105 m_subnets = std::forward<SubnetsT>(value);
106 }
107 template <typename SubnetsT = Aws::Vector<Subnet>>
108 CacheSubnetGroup& WithSubnets(SubnetsT&& value) {
109 SetSubnets(std::forward<SubnetsT>(value));
110 return *this;
111 }
112 template <typename SubnetsT = Subnet>
113 CacheSubnetGroup& AddSubnets(SubnetsT&& value) {
114 m_subnetsHasBeenSet = true;
115 m_subnets.emplace_back(std::forward<SubnetsT>(value));
116 return *this;
117 }
119
121
124 inline const Aws::String& GetARN() const { return m_aRN; }
125 inline bool ARNHasBeenSet() const { return m_aRNHasBeenSet; }
126 template <typename ARNT = Aws::String>
127 void SetARN(ARNT&& value) {
128 m_aRNHasBeenSet = true;
129 m_aRN = std::forward<ARNT>(value);
130 }
131 template <typename ARNT = Aws::String>
132 CacheSubnetGroup& WithARN(ARNT&& value) {
133 SetARN(std::forward<ARNT>(value));
134 return *this;
135 }
137
139
145 inline const Aws::Vector<NetworkType>& GetSupportedNetworkTypes() const { return m_supportedNetworkTypes; }
146 inline bool SupportedNetworkTypesHasBeenSet() const { return m_supportedNetworkTypesHasBeenSet; }
147 template <typename SupportedNetworkTypesT = Aws::Vector<NetworkType>>
148 void SetSupportedNetworkTypes(SupportedNetworkTypesT&& value) {
149 m_supportedNetworkTypesHasBeenSet = true;
150 m_supportedNetworkTypes = std::forward<SupportedNetworkTypesT>(value);
151 }
152 template <typename SupportedNetworkTypesT = Aws::Vector<NetworkType>>
153 CacheSubnetGroup& WithSupportedNetworkTypes(SupportedNetworkTypesT&& value) {
154 SetSupportedNetworkTypes(std::forward<SupportedNetworkTypesT>(value));
155 return *this;
156 }
158 m_supportedNetworkTypesHasBeenSet = true;
159 m_supportedNetworkTypes.push_back(value);
160 return *this;
161 }
163 private:
164 Aws::String m_cacheSubnetGroupName;
165
166 Aws::String m_cacheSubnetGroupDescription;
167
168 Aws::String m_vpcId;
169
170 Aws::Vector<Subnet> m_subnets;
171
172 Aws::String m_aRN;
173
174 Aws::Vector<NetworkType> m_supportedNetworkTypes;
175 bool m_cacheSubnetGroupNameHasBeenSet = false;
176 bool m_cacheSubnetGroupDescriptionHasBeenSet = false;
177 bool m_vpcIdHasBeenSet = false;
178 bool m_subnetsHasBeenSet = false;
179 bool m_aRNHasBeenSet = false;
180 bool m_supportedNetworkTypesHasBeenSet = false;
181};
182
183} // namespace Model
184} // namespace ElastiCache
185} // namespace Aws
CacheSubnetGroup & WithSupportedNetworkTypes(SupportedNetworkTypesT &&value)
CacheSubnetGroup & WithCacheSubnetGroupDescription(CacheSubnetGroupDescriptionT &&value)
CacheSubnetGroup & WithVpcId(VpcIdT &&value)
CacheSubnetGroup & AddSupportedNetworkTypes(NetworkType value)
AWS_ELASTICACHE_API CacheSubnetGroup & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
CacheSubnetGroup & WithCacheSubnetGroupName(CacheSubnetGroupNameT &&value)
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_ELASTICACHE_API CacheSubnetGroup()=default
AWS_ELASTICACHE_API CacheSubnetGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_ELASTICACHE_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetCacheSubnetGroupName(CacheSubnetGroupNameT &&value)
const Aws::String & GetCacheSubnetGroupName() const
CacheSubnetGroup & AddSubnets(SubnetsT &&value)
const Aws::Vector< Subnet > & GetSubnets() const
const Aws::Vector< NetworkType > & GetSupportedNetworkTypes() const
CacheSubnetGroup & WithSubnets(SubnetsT &&value)
void SetSupportedNetworkTypes(SupportedNetworkTypesT &&value)
void SetCacheSubnetGroupDescription(CacheSubnetGroupDescriptionT &&value)
CacheSubnetGroup & WithARN(ARNT &&value)
const Aws::String & GetCacheSubnetGroupDescription() 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