AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
VpcEncryptionControlExclusions.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/ec2/EC2_EXPORTS.h>
9#include <aws/ec2/model/VpcEncryptionControlExclusion.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Xml {
16class XmlNode;
17} // namespace Xml
18} // namespace Utils
19namespace EC2 {
20namespace Model {
21
32 public:
33 AWS_EC2_API VpcEncryptionControlExclusions() = default;
36
37 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
38 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
39
41
44 inline const VpcEncryptionControlExclusion& GetInternetGateway() const { return m_internetGateway; }
45 inline bool InternetGatewayHasBeenSet() const { return m_internetGatewayHasBeenSet; }
46 template <typename InternetGatewayT = VpcEncryptionControlExclusion>
47 void SetInternetGateway(InternetGatewayT&& value) {
48 m_internetGatewayHasBeenSet = true;
49 m_internetGateway = std::forward<InternetGatewayT>(value);
50 }
51 template <typename InternetGatewayT = VpcEncryptionControlExclusion>
53 SetInternetGateway(std::forward<InternetGatewayT>(value));
54 return *this;
55 }
57
59
62 inline const VpcEncryptionControlExclusion& GetEgressOnlyInternetGateway() const { return m_egressOnlyInternetGateway; }
63 inline bool EgressOnlyInternetGatewayHasBeenSet() const { return m_egressOnlyInternetGatewayHasBeenSet; }
64 template <typename EgressOnlyInternetGatewayT = VpcEncryptionControlExclusion>
65 void SetEgressOnlyInternetGateway(EgressOnlyInternetGatewayT&& value) {
66 m_egressOnlyInternetGatewayHasBeenSet = true;
67 m_egressOnlyInternetGateway = std::forward<EgressOnlyInternetGatewayT>(value);
68 }
69 template <typename EgressOnlyInternetGatewayT = VpcEncryptionControlExclusion>
71 SetEgressOnlyInternetGateway(std::forward<EgressOnlyInternetGatewayT>(value));
72 return *this;
73 }
75
77
80 inline const VpcEncryptionControlExclusion& GetNatGateway() const { return m_natGateway; }
81 inline bool NatGatewayHasBeenSet() const { return m_natGatewayHasBeenSet; }
82 template <typename NatGatewayT = VpcEncryptionControlExclusion>
83 void SetNatGateway(NatGatewayT&& value) {
84 m_natGatewayHasBeenSet = true;
85 m_natGateway = std::forward<NatGatewayT>(value);
86 }
87 template <typename NatGatewayT = VpcEncryptionControlExclusion>
89 SetNatGateway(std::forward<NatGatewayT>(value));
90 return *this;
91 }
93
95
98 inline const VpcEncryptionControlExclusion& GetVirtualPrivateGateway() const { return m_virtualPrivateGateway; }
99 inline bool VirtualPrivateGatewayHasBeenSet() const { return m_virtualPrivateGatewayHasBeenSet; }
100 template <typename VirtualPrivateGatewayT = VpcEncryptionControlExclusion>
101 void SetVirtualPrivateGateway(VirtualPrivateGatewayT&& value) {
102 m_virtualPrivateGatewayHasBeenSet = true;
103 m_virtualPrivateGateway = std::forward<VirtualPrivateGatewayT>(value);
104 }
105 template <typename VirtualPrivateGatewayT = VpcEncryptionControlExclusion>
107 SetVirtualPrivateGateway(std::forward<VirtualPrivateGatewayT>(value));
108 return *this;
109 }
111
113
116 inline const VpcEncryptionControlExclusion& GetVpcPeering() const { return m_vpcPeering; }
117 inline bool VpcPeeringHasBeenSet() const { return m_vpcPeeringHasBeenSet; }
118 template <typename VpcPeeringT = VpcEncryptionControlExclusion>
119 void SetVpcPeering(VpcPeeringT&& value) {
120 m_vpcPeeringHasBeenSet = true;
121 m_vpcPeering = std::forward<VpcPeeringT>(value);
122 }
123 template <typename VpcPeeringT = VpcEncryptionControlExclusion>
125 SetVpcPeering(std::forward<VpcPeeringT>(value));
126 return *this;
127 }
129
131
134 inline const VpcEncryptionControlExclusion& GetLambda() const { return m_lambda; }
135 inline bool LambdaHasBeenSet() const { return m_lambdaHasBeenSet; }
136 template <typename LambdaT = VpcEncryptionControlExclusion>
137 void SetLambda(LambdaT&& value) {
138 m_lambdaHasBeenSet = true;
139 m_lambda = std::forward<LambdaT>(value);
140 }
141 template <typename LambdaT = VpcEncryptionControlExclusion>
143 SetLambda(std::forward<LambdaT>(value));
144 return *this;
145 }
147
149
152 inline const VpcEncryptionControlExclusion& GetVpcLattice() const { return m_vpcLattice; }
153 inline bool VpcLatticeHasBeenSet() const { return m_vpcLatticeHasBeenSet; }
154 template <typename VpcLatticeT = VpcEncryptionControlExclusion>
155 void SetVpcLattice(VpcLatticeT&& value) {
156 m_vpcLatticeHasBeenSet = true;
157 m_vpcLattice = std::forward<VpcLatticeT>(value);
158 }
159 template <typename VpcLatticeT = VpcEncryptionControlExclusion>
161 SetVpcLattice(std::forward<VpcLatticeT>(value));
162 return *this;
163 }
165
167
170 inline const VpcEncryptionControlExclusion& GetElasticFileSystem() const { return m_elasticFileSystem; }
171 inline bool ElasticFileSystemHasBeenSet() const { return m_elasticFileSystemHasBeenSet; }
172 template <typename ElasticFileSystemT = VpcEncryptionControlExclusion>
173 void SetElasticFileSystem(ElasticFileSystemT&& value) {
174 m_elasticFileSystemHasBeenSet = true;
175 m_elasticFileSystem = std::forward<ElasticFileSystemT>(value);
176 }
177 template <typename ElasticFileSystemT = VpcEncryptionControlExclusion>
179 SetElasticFileSystem(std::forward<ElasticFileSystemT>(value));
180 return *this;
181 }
183 private:
184 VpcEncryptionControlExclusion m_internetGateway;
185
186 VpcEncryptionControlExclusion m_egressOnlyInternetGateway;
187
189
190 VpcEncryptionControlExclusion m_virtualPrivateGateway;
191
193
195
197
198 VpcEncryptionControlExclusion m_elasticFileSystem;
199 bool m_internetGatewayHasBeenSet = false;
200 bool m_egressOnlyInternetGatewayHasBeenSet = false;
201 bool m_natGatewayHasBeenSet = false;
202 bool m_virtualPrivateGatewayHasBeenSet = false;
203 bool m_vpcPeeringHasBeenSet = false;
204 bool m_lambdaHasBeenSet = false;
205 bool m_vpcLatticeHasBeenSet = false;
206 bool m_elasticFileSystemHasBeenSet = false;
207};
208
209} // namespace Model
210} // namespace EC2
211} // namespace Aws
const VpcEncryptionControlExclusion & GetElasticFileSystem() const
void SetEgressOnlyInternetGateway(EgressOnlyInternetGatewayT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
VpcEncryptionControlExclusions & WithVpcLattice(VpcLatticeT &&value)
const VpcEncryptionControlExclusion & GetVpcPeering() const
const VpcEncryptionControlExclusion & GetVpcLattice() const
AWS_EC2_API VpcEncryptionControlExclusions(const Aws::Utils::Xml::XmlNode &xmlNode)
VpcEncryptionControlExclusions & WithNatGateway(NatGatewayT &&value)
const VpcEncryptionControlExclusion & GetInternetGateway() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
VpcEncryptionControlExclusions & WithElasticFileSystem(ElasticFileSystemT &&value)
VpcEncryptionControlExclusions & WithLambda(LambdaT &&value)
const VpcEncryptionControlExclusion & GetNatGateway() const
VpcEncryptionControlExclusions & WithVirtualPrivateGateway(VirtualPrivateGatewayT &&value)
const VpcEncryptionControlExclusion & GetEgressOnlyInternetGateway() const
AWS_EC2_API VpcEncryptionControlExclusions & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const VpcEncryptionControlExclusion & GetLambda() const
const VpcEncryptionControlExclusion & GetVirtualPrivateGateway() const
VpcEncryptionControlExclusions & WithEgressOnlyInternetGateway(EgressOnlyInternetGatewayT &&value)
VpcEncryptionControlExclusions & WithInternetGateway(InternetGatewayT &&value)
VpcEncryptionControlExclusions & WithVpcPeering(VpcPeeringT &&value)
std::basic_ostream< char, std::char_traits< char > > OStream