AWS SDK for C++

AWS SDK for C++ Version 1.11.850

Loading...
Searching...
No Matches
VpcEndpointConnection.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/ec2/EC2_EXPORTS.h>
12#include <aws/ec2/model/DnsEntry.h>
13#include <aws/ec2/model/IpAddressType.h>
14#include <aws/ec2/model/PayerResponsibilityEntry.h>
15#include <aws/ec2/model/State.h>
16#include <aws/ec2/model/Tag.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Xml {
23class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace EC2 {
27namespace Model {
28
36 public:
37 AWS_EC2_API VpcEndpointConnection() = default;
40
41 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
42 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
43
45
48 inline const Aws::String& GetServiceId() const { return m_serviceId; }
49 inline bool ServiceIdHasBeenSet() const { return m_serviceIdHasBeenSet; }
50 template <typename ServiceIdT = Aws::String>
51 void SetServiceId(ServiceIdT&& value) {
52 m_serviceIdHasBeenSet = true;
53 m_serviceId = std::forward<ServiceIdT>(value);
54 }
55 template <typename ServiceIdT = Aws::String>
56 VpcEndpointConnection& WithServiceId(ServiceIdT&& value) {
57 SetServiceId(std::forward<ServiceIdT>(value));
58 return *this;
59 }
61
63
66 inline const Aws::String& GetVpcEndpointId() const { return m_vpcEndpointId; }
67 inline bool VpcEndpointIdHasBeenSet() const { return m_vpcEndpointIdHasBeenSet; }
68 template <typename VpcEndpointIdT = Aws::String>
69 void SetVpcEndpointId(VpcEndpointIdT&& value) {
70 m_vpcEndpointIdHasBeenSet = true;
71 m_vpcEndpointId = std::forward<VpcEndpointIdT>(value);
72 }
73 template <typename VpcEndpointIdT = Aws::String>
74 VpcEndpointConnection& WithVpcEndpointId(VpcEndpointIdT&& value) {
75 SetVpcEndpointId(std::forward<VpcEndpointIdT>(value));
76 return *this;
77 }
79
81
84 inline const Aws::String& GetVpcEndpointOwner() const { return m_vpcEndpointOwner; }
85 inline bool VpcEndpointOwnerHasBeenSet() const { return m_vpcEndpointOwnerHasBeenSet; }
86 template <typename VpcEndpointOwnerT = Aws::String>
87 void SetVpcEndpointOwner(VpcEndpointOwnerT&& value) {
88 m_vpcEndpointOwnerHasBeenSet = true;
89 m_vpcEndpointOwner = std::forward<VpcEndpointOwnerT>(value);
90 }
91 template <typename VpcEndpointOwnerT = Aws::String>
92 VpcEndpointConnection& WithVpcEndpointOwner(VpcEndpointOwnerT&& value) {
93 SetVpcEndpointOwner(std::forward<VpcEndpointOwnerT>(value));
94 return *this;
95 }
97
99
102 inline State GetVpcEndpointState() const { return m_vpcEndpointState; }
103 inline bool VpcEndpointStateHasBeenSet() const { return m_vpcEndpointStateHasBeenSet; }
104 inline void SetVpcEndpointState(State value) {
105 m_vpcEndpointStateHasBeenSet = true;
106 m_vpcEndpointState = value;
107 }
109 SetVpcEndpointState(value);
110 return *this;
111 }
113
115
118 inline const Aws::Utils::DateTime& GetCreationTimestamp() const { return m_creationTimestamp; }
119 inline bool CreationTimestampHasBeenSet() const { return m_creationTimestampHasBeenSet; }
120 template <typename CreationTimestampT = Aws::Utils::DateTime>
121 void SetCreationTimestamp(CreationTimestampT&& value) {
122 m_creationTimestampHasBeenSet = true;
123 m_creationTimestamp = std::forward<CreationTimestampT>(value);
124 }
125 template <typename CreationTimestampT = Aws::Utils::DateTime>
126 VpcEndpointConnection& WithCreationTimestamp(CreationTimestampT&& value) {
127 SetCreationTimestamp(std::forward<CreationTimestampT>(value));
128 return *this;
129 }
131
133
136 inline const Aws::Vector<DnsEntry>& GetDnsEntries() const { return m_dnsEntries; }
137 inline bool DnsEntriesHasBeenSet() const { return m_dnsEntriesHasBeenSet; }
138 template <typename DnsEntriesT = Aws::Vector<DnsEntry>>
139 void SetDnsEntries(DnsEntriesT&& value) {
140 m_dnsEntriesHasBeenSet = true;
141 m_dnsEntries = std::forward<DnsEntriesT>(value);
142 }
143 template <typename DnsEntriesT = Aws::Vector<DnsEntry>>
144 VpcEndpointConnection& WithDnsEntries(DnsEntriesT&& value) {
145 SetDnsEntries(std::forward<DnsEntriesT>(value));
146 return *this;
147 }
148 template <typename DnsEntriesT = DnsEntry>
149 VpcEndpointConnection& AddDnsEntries(DnsEntriesT&& value) {
150 m_dnsEntriesHasBeenSet = true;
151 m_dnsEntries.emplace_back(std::forward<DnsEntriesT>(value));
152 return *this;
153 }
155
157
161 inline const Aws::Vector<Aws::String>& GetNetworkLoadBalancerArns() const { return m_networkLoadBalancerArns; }
162 inline bool NetworkLoadBalancerArnsHasBeenSet() const { return m_networkLoadBalancerArnsHasBeenSet; }
163 template <typename NetworkLoadBalancerArnsT = Aws::Vector<Aws::String>>
164 void SetNetworkLoadBalancerArns(NetworkLoadBalancerArnsT&& value) {
165 m_networkLoadBalancerArnsHasBeenSet = true;
166 m_networkLoadBalancerArns = std::forward<NetworkLoadBalancerArnsT>(value);
167 }
168 template <typename NetworkLoadBalancerArnsT = Aws::Vector<Aws::String>>
169 VpcEndpointConnection& WithNetworkLoadBalancerArns(NetworkLoadBalancerArnsT&& value) {
170 SetNetworkLoadBalancerArns(std::forward<NetworkLoadBalancerArnsT>(value));
171 return *this;
172 }
173 template <typename NetworkLoadBalancerArnsT = Aws::String>
174 VpcEndpointConnection& AddNetworkLoadBalancerArns(NetworkLoadBalancerArnsT&& value) {
175 m_networkLoadBalancerArnsHasBeenSet = true;
176 m_networkLoadBalancerArns.emplace_back(std::forward<NetworkLoadBalancerArnsT>(value));
177 return *this;
178 }
180
182
186 inline const Aws::Vector<Aws::String>& GetGatewayLoadBalancerArns() const { return m_gatewayLoadBalancerArns; }
187 inline bool GatewayLoadBalancerArnsHasBeenSet() const { return m_gatewayLoadBalancerArnsHasBeenSet; }
188 template <typename GatewayLoadBalancerArnsT = Aws::Vector<Aws::String>>
189 void SetGatewayLoadBalancerArns(GatewayLoadBalancerArnsT&& value) {
190 m_gatewayLoadBalancerArnsHasBeenSet = true;
191 m_gatewayLoadBalancerArns = std::forward<GatewayLoadBalancerArnsT>(value);
192 }
193 template <typename GatewayLoadBalancerArnsT = Aws::Vector<Aws::String>>
194 VpcEndpointConnection& WithGatewayLoadBalancerArns(GatewayLoadBalancerArnsT&& value) {
195 SetGatewayLoadBalancerArns(std::forward<GatewayLoadBalancerArnsT>(value));
196 return *this;
197 }
198 template <typename GatewayLoadBalancerArnsT = Aws::String>
199 VpcEndpointConnection& AddGatewayLoadBalancerArns(GatewayLoadBalancerArnsT&& value) {
200 m_gatewayLoadBalancerArnsHasBeenSet = true;
201 m_gatewayLoadBalancerArns.emplace_back(std::forward<GatewayLoadBalancerArnsT>(value));
202 return *this;
203 }
205
207
210 inline IpAddressType GetIpAddressType() const { return m_ipAddressType; }
211 inline bool IpAddressTypeHasBeenSet() const { return m_ipAddressTypeHasBeenSet; }
212 inline void SetIpAddressType(IpAddressType value) {
213 m_ipAddressTypeHasBeenSet = true;
214 m_ipAddressType = value;
215 }
217 SetIpAddressType(value);
218 return *this;
219 }
221
223
226 inline const Aws::String& GetVpcEndpointConnectionId() const { return m_vpcEndpointConnectionId; }
227 inline bool VpcEndpointConnectionIdHasBeenSet() const { return m_vpcEndpointConnectionIdHasBeenSet; }
228 template <typename VpcEndpointConnectionIdT = Aws::String>
229 void SetVpcEndpointConnectionId(VpcEndpointConnectionIdT&& value) {
230 m_vpcEndpointConnectionIdHasBeenSet = true;
231 m_vpcEndpointConnectionId = std::forward<VpcEndpointConnectionIdT>(value);
232 }
233 template <typename VpcEndpointConnectionIdT = Aws::String>
234 VpcEndpointConnection& WithVpcEndpointConnectionId(VpcEndpointConnectionIdT&& value) {
235 SetVpcEndpointConnectionId(std::forward<VpcEndpointConnectionIdT>(value));
236 return *this;
237 }
239
241
244 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
245 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
246 template <typename TagsT = Aws::Vector<Tag>>
247 void SetTags(TagsT&& value) {
248 m_tagsHasBeenSet = true;
249 m_tags = std::forward<TagsT>(value);
250 }
251 template <typename TagsT = Aws::Vector<Tag>>
253 SetTags(std::forward<TagsT>(value));
254 return *this;
255 }
256 template <typename TagsT = Tag>
258 m_tagsHasBeenSet = true;
259 m_tags.emplace_back(std::forward<TagsT>(value));
260 return *this;
261 }
263
265
268 inline const Aws::String& GetVpcEndpointRegion() const { return m_vpcEndpointRegion; }
269 inline bool VpcEndpointRegionHasBeenSet() const { return m_vpcEndpointRegionHasBeenSet; }
270 template <typename VpcEndpointRegionT = Aws::String>
271 void SetVpcEndpointRegion(VpcEndpointRegionT&& value) {
272 m_vpcEndpointRegionHasBeenSet = true;
273 m_vpcEndpointRegion = std::forward<VpcEndpointRegionT>(value);
274 }
275 template <typename VpcEndpointRegionT = Aws::String>
276 VpcEndpointConnection& WithVpcEndpointRegion(VpcEndpointRegionT&& value) {
277 SetVpcEndpointRegion(std::forward<VpcEndpointRegionT>(value));
278 return *this;
279 }
281
283
286 inline const Aws::Vector<PayerResponsibilityEntry>& GetPayerResponsibilities() const { return m_payerResponsibilities; }
287 inline bool PayerResponsibilitiesHasBeenSet() const { return m_payerResponsibilitiesHasBeenSet; }
288 template <typename PayerResponsibilitiesT = Aws::Vector<PayerResponsibilityEntry>>
289 void SetPayerResponsibilities(PayerResponsibilitiesT&& value) {
290 m_payerResponsibilitiesHasBeenSet = true;
291 m_payerResponsibilities = std::forward<PayerResponsibilitiesT>(value);
292 }
293 template <typename PayerResponsibilitiesT = Aws::Vector<PayerResponsibilityEntry>>
294 VpcEndpointConnection& WithPayerResponsibilities(PayerResponsibilitiesT&& value) {
295 SetPayerResponsibilities(std::forward<PayerResponsibilitiesT>(value));
296 return *this;
297 }
298 template <typename PayerResponsibilitiesT = PayerResponsibilityEntry>
299 VpcEndpointConnection& AddPayerResponsibilities(PayerResponsibilitiesT&& value) {
300 m_payerResponsibilitiesHasBeenSet = true;
301 m_payerResponsibilities.emplace_back(std::forward<PayerResponsibilitiesT>(value));
302 return *this;
303 }
305 private:
306 Aws::String m_serviceId;
307
308 Aws::String m_vpcEndpointId;
309
310 Aws::String m_vpcEndpointOwner;
311
312 State m_vpcEndpointState{State::NOT_SET};
313
314 Aws::Utils::DateTime m_creationTimestamp{};
315
316 Aws::Vector<DnsEntry> m_dnsEntries;
317
318 Aws::Vector<Aws::String> m_networkLoadBalancerArns;
319
320 Aws::Vector<Aws::String> m_gatewayLoadBalancerArns;
321
322 IpAddressType m_ipAddressType{IpAddressType::NOT_SET};
323
324 Aws::String m_vpcEndpointConnectionId;
325
326 Aws::Vector<Tag> m_tags;
327
328 Aws::String m_vpcEndpointRegion;
329
330 Aws::Vector<PayerResponsibilityEntry> m_payerResponsibilities;
331 bool m_serviceIdHasBeenSet = false;
332 bool m_vpcEndpointIdHasBeenSet = false;
333 bool m_vpcEndpointOwnerHasBeenSet = false;
334 bool m_vpcEndpointStateHasBeenSet = false;
335 bool m_creationTimestampHasBeenSet = false;
336 bool m_dnsEntriesHasBeenSet = false;
337 bool m_networkLoadBalancerArnsHasBeenSet = false;
338 bool m_gatewayLoadBalancerArnsHasBeenSet = false;
339 bool m_ipAddressTypeHasBeenSet = false;
340 bool m_vpcEndpointConnectionIdHasBeenSet = false;
341 bool m_tagsHasBeenSet = false;
342 bool m_vpcEndpointRegionHasBeenSet = false;
343 bool m_payerResponsibilitiesHasBeenSet = false;
344};
345
346} // namespace Model
347} // namespace EC2
348} // namespace Aws
VpcEndpointConnection & AddGatewayLoadBalancerArns(GatewayLoadBalancerArnsT &&value)
VpcEndpointConnection & WithDnsEntries(DnsEntriesT &&value)
VpcEndpointConnection & WithTags(TagsT &&value)
void SetVpcEndpointRegion(VpcEndpointRegionT &&value)
AWS_EC2_API VpcEndpointConnection & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetVpcEndpointOwner() const
void SetVpcEndpointConnectionId(VpcEndpointConnectionIdT &&value)
VpcEndpointConnection & WithPayerResponsibilities(PayerResponsibilitiesT &&value)
AWS_EC2_API VpcEndpointConnection()=default
const Aws::Vector< Tag > & GetTags() const
VpcEndpointConnection & AddTags(TagsT &&value)
VpcEndpointConnection & WithVpcEndpointConnectionId(VpcEndpointConnectionIdT &&value)
VpcEndpointConnection & AddNetworkLoadBalancerArns(NetworkLoadBalancerArnsT &&value)
VpcEndpointConnection & WithVpcEndpointId(VpcEndpointIdT &&value)
void SetNetworkLoadBalancerArns(NetworkLoadBalancerArnsT &&value)
const Aws::Vector< Aws::String > & GetNetworkLoadBalancerArns() const
const Aws::Vector< Aws::String > & GetGatewayLoadBalancerArns() const
VpcEndpointConnection & AddDnsEntries(DnsEntriesT &&value)
VpcEndpointConnection & WithVpcEndpointState(State value)
const Aws::String & GetVpcEndpointConnectionId() const
VpcEndpointConnection & WithServiceId(ServiceIdT &&value)
void SetPayerResponsibilities(PayerResponsibilitiesT &&value)
AWS_EC2_API VpcEndpointConnection(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetVpcEndpointRegion() const
VpcEndpointConnection & WithCreationTimestamp(CreationTimestampT &&value)
const Aws::Vector< PayerResponsibilityEntry > & GetPayerResponsibilities() const
void SetVpcEndpointOwner(VpcEndpointOwnerT &&value)
void SetVpcEndpointId(VpcEndpointIdT &&value)
void SetCreationTimestamp(CreationTimestampT &&value)
const Aws::String & GetVpcEndpointId() const
VpcEndpointConnection & AddPayerResponsibilities(PayerResponsibilitiesT &&value)
VpcEndpointConnection & WithGatewayLoadBalancerArns(GatewayLoadBalancerArnsT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
VpcEndpointConnection & WithVpcEndpointOwner(VpcEndpointOwnerT &&value)
void SetGatewayLoadBalancerArns(GatewayLoadBalancerArnsT &&value)
VpcEndpointConnection & WithIpAddressType(IpAddressType value)
VpcEndpointConnection & WithVpcEndpointRegion(VpcEndpointRegionT &&value)
VpcEndpointConnection & WithNetworkLoadBalancerArns(NetworkLoadBalancerArnsT &&value)
const Aws::Vector< DnsEntry > & GetDnsEntries() const
const Aws::Utils::DateTime & GetCreationTimestamp() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) 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