AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
NetworkInterface.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/inspector/Inspector_EXPORTS.h>
10#include <aws/inspector/model/PrivateIp.h>
11#include <aws/inspector/model/SecurityGroup.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Inspector {
23namespace Model {
24
33 public:
34 AWS_INSPECTOR_API NetworkInterface() = default;
35 AWS_INSPECTOR_API NetworkInterface(Aws::Utils::Json::JsonView jsonValue);
37 AWS_INSPECTOR_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::String& GetNetworkInterfaceId() const { return m_networkInterfaceId; }
44 inline bool NetworkInterfaceIdHasBeenSet() const { return m_networkInterfaceIdHasBeenSet; }
45 template <typename NetworkInterfaceIdT = Aws::String>
46 void SetNetworkInterfaceId(NetworkInterfaceIdT&& value) {
47 m_networkInterfaceIdHasBeenSet = true;
48 m_networkInterfaceId = std::forward<NetworkInterfaceIdT>(value);
49 }
50 template <typename NetworkInterfaceIdT = Aws::String>
51 NetworkInterface& WithNetworkInterfaceId(NetworkInterfaceIdT&& value) {
52 SetNetworkInterfaceId(std::forward<NetworkInterfaceIdT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
62 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
63 template <typename SubnetIdT = Aws::String>
64 void SetSubnetId(SubnetIdT&& value) {
65 m_subnetIdHasBeenSet = true;
66 m_subnetId = std::forward<SubnetIdT>(value);
67 }
68 template <typename SubnetIdT = Aws::String>
69 NetworkInterface& WithSubnetId(SubnetIdT&& value) {
70 SetSubnetId(std::forward<SubnetIdT>(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 NetworkInterface& WithVpcId(VpcIdT&& value) {
88 SetVpcId(std::forward<VpcIdT>(value));
89 return *this;
90 }
92
94
97 inline const Aws::String& GetPrivateDnsName() const { return m_privateDnsName; }
98 inline bool PrivateDnsNameHasBeenSet() const { return m_privateDnsNameHasBeenSet; }
99 template <typename PrivateDnsNameT = Aws::String>
100 void SetPrivateDnsName(PrivateDnsNameT&& value) {
101 m_privateDnsNameHasBeenSet = true;
102 m_privateDnsName = std::forward<PrivateDnsNameT>(value);
103 }
104 template <typename PrivateDnsNameT = Aws::String>
105 NetworkInterface& WithPrivateDnsName(PrivateDnsNameT&& value) {
106 SetPrivateDnsName(std::forward<PrivateDnsNameT>(value));
107 return *this;
108 }
110
112
115 inline const Aws::String& GetPrivateIpAddress() const { return m_privateIpAddress; }
116 inline bool PrivateIpAddressHasBeenSet() const { return m_privateIpAddressHasBeenSet; }
117 template <typename PrivateIpAddressT = Aws::String>
118 void SetPrivateIpAddress(PrivateIpAddressT&& value) {
119 m_privateIpAddressHasBeenSet = true;
120 m_privateIpAddress = std::forward<PrivateIpAddressT>(value);
121 }
122 template <typename PrivateIpAddressT = Aws::String>
123 NetworkInterface& WithPrivateIpAddress(PrivateIpAddressT&& value) {
124 SetPrivateIpAddress(std::forward<PrivateIpAddressT>(value));
125 return *this;
126 }
128
130
134 inline const Aws::Vector<PrivateIp>& GetPrivateIpAddresses() const { return m_privateIpAddresses; }
135 inline bool PrivateIpAddressesHasBeenSet() const { return m_privateIpAddressesHasBeenSet; }
136 template <typename PrivateIpAddressesT = Aws::Vector<PrivateIp>>
137 void SetPrivateIpAddresses(PrivateIpAddressesT&& value) {
138 m_privateIpAddressesHasBeenSet = true;
139 m_privateIpAddresses = std::forward<PrivateIpAddressesT>(value);
140 }
141 template <typename PrivateIpAddressesT = Aws::Vector<PrivateIp>>
142 NetworkInterface& WithPrivateIpAddresses(PrivateIpAddressesT&& value) {
143 SetPrivateIpAddresses(std::forward<PrivateIpAddressesT>(value));
144 return *this;
145 }
146 template <typename PrivateIpAddressesT = PrivateIp>
147 NetworkInterface& AddPrivateIpAddresses(PrivateIpAddressesT&& value) {
148 m_privateIpAddressesHasBeenSet = true;
149 m_privateIpAddresses.emplace_back(std::forward<PrivateIpAddressesT>(value));
150 return *this;
151 }
153
155
158 inline const Aws::String& GetPublicDnsName() const { return m_publicDnsName; }
159 inline bool PublicDnsNameHasBeenSet() const { return m_publicDnsNameHasBeenSet; }
160 template <typename PublicDnsNameT = Aws::String>
161 void SetPublicDnsName(PublicDnsNameT&& value) {
162 m_publicDnsNameHasBeenSet = true;
163 m_publicDnsName = std::forward<PublicDnsNameT>(value);
164 }
165 template <typename PublicDnsNameT = Aws::String>
166 NetworkInterface& WithPublicDnsName(PublicDnsNameT&& value) {
167 SetPublicDnsName(std::forward<PublicDnsNameT>(value));
168 return *this;
169 }
171
173
176 inline const Aws::String& GetPublicIp() const { return m_publicIp; }
177 inline bool PublicIpHasBeenSet() const { return m_publicIpHasBeenSet; }
178 template <typename PublicIpT = Aws::String>
179 void SetPublicIp(PublicIpT&& value) {
180 m_publicIpHasBeenSet = true;
181 m_publicIp = std::forward<PublicIpT>(value);
182 }
183 template <typename PublicIpT = Aws::String>
184 NetworkInterface& WithPublicIp(PublicIpT&& value) {
185 SetPublicIp(std::forward<PublicIpT>(value));
186 return *this;
187 }
189
191
194 inline const Aws::Vector<Aws::String>& GetIpv6Addresses() const { return m_ipv6Addresses; }
195 inline bool Ipv6AddressesHasBeenSet() const { return m_ipv6AddressesHasBeenSet; }
196 template <typename Ipv6AddressesT = Aws::Vector<Aws::String>>
197 void SetIpv6Addresses(Ipv6AddressesT&& value) {
198 m_ipv6AddressesHasBeenSet = true;
199 m_ipv6Addresses = std::forward<Ipv6AddressesT>(value);
200 }
201 template <typename Ipv6AddressesT = Aws::Vector<Aws::String>>
202 NetworkInterface& WithIpv6Addresses(Ipv6AddressesT&& value) {
203 SetIpv6Addresses(std::forward<Ipv6AddressesT>(value));
204 return *this;
205 }
206 template <typename Ipv6AddressesT = Aws::String>
207 NetworkInterface& AddIpv6Addresses(Ipv6AddressesT&& value) {
208 m_ipv6AddressesHasBeenSet = true;
209 m_ipv6Addresses.emplace_back(std::forward<Ipv6AddressesT>(value));
210 return *this;
211 }
213
215
219 inline const Aws::Vector<SecurityGroup>& GetSecurityGroups() const { return m_securityGroups; }
220 inline bool SecurityGroupsHasBeenSet() const { return m_securityGroupsHasBeenSet; }
221 template <typename SecurityGroupsT = Aws::Vector<SecurityGroup>>
222 void SetSecurityGroups(SecurityGroupsT&& value) {
223 m_securityGroupsHasBeenSet = true;
224 m_securityGroups = std::forward<SecurityGroupsT>(value);
225 }
226 template <typename SecurityGroupsT = Aws::Vector<SecurityGroup>>
227 NetworkInterface& WithSecurityGroups(SecurityGroupsT&& value) {
228 SetSecurityGroups(std::forward<SecurityGroupsT>(value));
229 return *this;
230 }
231 template <typename SecurityGroupsT = SecurityGroup>
232 NetworkInterface& AddSecurityGroups(SecurityGroupsT&& value) {
233 m_securityGroupsHasBeenSet = true;
234 m_securityGroups.emplace_back(std::forward<SecurityGroupsT>(value));
235 return *this;
236 }
238 private:
239 Aws::String m_networkInterfaceId;
240
241 Aws::String m_subnetId;
242
243 Aws::String m_vpcId;
244
245 Aws::String m_privateDnsName;
246
247 Aws::String m_privateIpAddress;
248
249 Aws::Vector<PrivateIp> m_privateIpAddresses;
250
251 Aws::String m_publicDnsName;
252
253 Aws::String m_publicIp;
254
255 Aws::Vector<Aws::String> m_ipv6Addresses;
256
257 Aws::Vector<SecurityGroup> m_securityGroups;
258 bool m_networkInterfaceIdHasBeenSet = false;
259 bool m_subnetIdHasBeenSet = false;
260 bool m_vpcIdHasBeenSet = false;
261 bool m_privateDnsNameHasBeenSet = false;
262 bool m_privateIpAddressHasBeenSet = false;
263 bool m_privateIpAddressesHasBeenSet = false;
264 bool m_publicDnsNameHasBeenSet = false;
265 bool m_publicIpHasBeenSet = false;
266 bool m_ipv6AddressesHasBeenSet = false;
267 bool m_securityGroupsHasBeenSet = false;
268};
269
270} // namespace Model
271} // namespace Inspector
272} // namespace Aws
void SetPrivateIpAddress(PrivateIpAddressT &&value)
NetworkInterface & WithPrivateDnsName(PrivateDnsNameT &&value)
void SetSecurityGroups(SecurityGroupsT &&value)
NetworkInterface & WithSubnetId(SubnetIdT &&value)
const Aws::Vector< SecurityGroup > & GetSecurityGroups() const
const Aws::Vector< Aws::String > & GetIpv6Addresses() const
AWS_INSPECTOR_API NetworkInterface & operator=(Aws::Utils::Json::JsonView jsonValue)
NetworkInterface & WithPrivateIpAddress(PrivateIpAddressT &&value)
AWS_INSPECTOR_API NetworkInterface(Aws::Utils::Json::JsonView jsonValue)
void SetNetworkInterfaceId(NetworkInterfaceIdT &&value)
NetworkInterface & AddIpv6Addresses(Ipv6AddressesT &&value)
const Aws::String & GetSubnetId() const
NetworkInterface & AddSecurityGroups(SecurityGroupsT &&value)
NetworkInterface & WithPublicIp(PublicIpT &&value)
const Aws::String & GetPrivateIpAddress() const
AWS_INSPECTOR_API NetworkInterface()=default
void SetPrivateDnsName(PrivateDnsNameT &&value)
NetworkInterface & WithIpv6Addresses(Ipv6AddressesT &&value)
const Aws::Vector< PrivateIp > & GetPrivateIpAddresses() const
NetworkInterface & WithNetworkInterfaceId(NetworkInterfaceIdT &&value)
const Aws::String & GetPublicIp() const
const Aws::String & GetPublicDnsName() const
NetworkInterface & WithVpcId(VpcIdT &&value)
AWS_INSPECTOR_API Aws::Utils::Json::JsonValue Jsonize() const
void SetPrivateIpAddresses(PrivateIpAddressesT &&value)
const Aws::String & GetPrivateDnsName() const
NetworkInterface & WithPublicDnsName(PublicDnsNameT &&value)
const Aws::String & GetVpcId() const
NetworkInterface & WithPrivateIpAddresses(PrivateIpAddressesT &&value)
NetworkInterface & WithSecurityGroups(SecurityGroupsT &&value)
const Aws::String & GetNetworkInterfaceId() const
void SetPublicDnsName(PublicDnsNameT &&value)
void SetIpv6Addresses(Ipv6AddressesT &&value)
NetworkInterface & AddPrivateIpAddresses(PrivateIpAddressesT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue