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/guardduty/GuardDuty_EXPORTS.h>
10#include <aws/guardduty/model/PrivateIpAddressDetails.h>
11#include <aws/guardduty/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 GuardDuty {
23namespace Model {
24
32 public:
33 AWS_GUARDDUTY_API NetworkInterface() = default;
34 AWS_GUARDDUTY_API NetworkInterface(Aws::Utils::Json::JsonView jsonValue);
36 AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::Vector<Aws::String>& GetIpv6Addresses() const { return m_ipv6Addresses; }
43 inline bool Ipv6AddressesHasBeenSet() const { return m_ipv6AddressesHasBeenSet; }
44 template <typename Ipv6AddressesT = Aws::Vector<Aws::String>>
45 void SetIpv6Addresses(Ipv6AddressesT&& value) {
46 m_ipv6AddressesHasBeenSet = true;
47 m_ipv6Addresses = std::forward<Ipv6AddressesT>(value);
48 }
49 template <typename Ipv6AddressesT = Aws::Vector<Aws::String>>
50 NetworkInterface& WithIpv6Addresses(Ipv6AddressesT&& value) {
51 SetIpv6Addresses(std::forward<Ipv6AddressesT>(value));
52 return *this;
53 }
54 template <typename Ipv6AddressesT = Aws::String>
55 NetworkInterface& AddIpv6Addresses(Ipv6AddressesT&& value) {
56 m_ipv6AddressesHasBeenSet = true;
57 m_ipv6Addresses.emplace_back(std::forward<Ipv6AddressesT>(value));
58 return *this;
59 }
61
63
66 inline const Aws::String& GetNetworkInterfaceId() const { return m_networkInterfaceId; }
67 inline bool NetworkInterfaceIdHasBeenSet() const { return m_networkInterfaceIdHasBeenSet; }
68 template <typename NetworkInterfaceIdT = Aws::String>
69 void SetNetworkInterfaceId(NetworkInterfaceIdT&& value) {
70 m_networkInterfaceIdHasBeenSet = true;
71 m_networkInterfaceId = std::forward<NetworkInterfaceIdT>(value);
72 }
73 template <typename NetworkInterfaceIdT = Aws::String>
74 NetworkInterface& WithNetworkInterfaceId(NetworkInterfaceIdT&& value) {
75 SetNetworkInterfaceId(std::forward<NetworkInterfaceIdT>(value));
76 return *this;
77 }
79
81
84 inline const Aws::String& GetPrivateDnsName() const { return m_privateDnsName; }
85 inline bool PrivateDnsNameHasBeenSet() const { return m_privateDnsNameHasBeenSet; }
86 template <typename PrivateDnsNameT = Aws::String>
87 void SetPrivateDnsName(PrivateDnsNameT&& value) {
88 m_privateDnsNameHasBeenSet = true;
89 m_privateDnsName = std::forward<PrivateDnsNameT>(value);
90 }
91 template <typename PrivateDnsNameT = Aws::String>
92 NetworkInterface& WithPrivateDnsName(PrivateDnsNameT&& value) {
93 SetPrivateDnsName(std::forward<PrivateDnsNameT>(value));
94 return *this;
95 }
97
99
102 inline const Aws::String& GetPrivateIpAddress() const { return m_privateIpAddress; }
103 inline bool PrivateIpAddressHasBeenSet() const { return m_privateIpAddressHasBeenSet; }
104 template <typename PrivateIpAddressT = Aws::String>
105 void SetPrivateIpAddress(PrivateIpAddressT&& value) {
106 m_privateIpAddressHasBeenSet = true;
107 m_privateIpAddress = std::forward<PrivateIpAddressT>(value);
108 }
109 template <typename PrivateIpAddressT = Aws::String>
110 NetworkInterface& WithPrivateIpAddress(PrivateIpAddressT&& value) {
111 SetPrivateIpAddress(std::forward<PrivateIpAddressT>(value));
112 return *this;
113 }
115
117
120 inline const Aws::Vector<PrivateIpAddressDetails>& GetPrivateIpAddresses() const { return m_privateIpAddresses; }
121 inline bool PrivateIpAddressesHasBeenSet() const { return m_privateIpAddressesHasBeenSet; }
122 template <typename PrivateIpAddressesT = Aws::Vector<PrivateIpAddressDetails>>
123 void SetPrivateIpAddresses(PrivateIpAddressesT&& value) {
124 m_privateIpAddressesHasBeenSet = true;
125 m_privateIpAddresses = std::forward<PrivateIpAddressesT>(value);
126 }
127 template <typename PrivateIpAddressesT = Aws::Vector<PrivateIpAddressDetails>>
128 NetworkInterface& WithPrivateIpAddresses(PrivateIpAddressesT&& value) {
129 SetPrivateIpAddresses(std::forward<PrivateIpAddressesT>(value));
130 return *this;
131 }
132 template <typename PrivateIpAddressesT = PrivateIpAddressDetails>
133 NetworkInterface& AddPrivateIpAddresses(PrivateIpAddressesT&& value) {
134 m_privateIpAddressesHasBeenSet = true;
135 m_privateIpAddresses.emplace_back(std::forward<PrivateIpAddressesT>(value));
136 return *this;
137 }
139
141
144 inline const Aws::String& GetPublicDnsName() const { return m_publicDnsName; }
145 inline bool PublicDnsNameHasBeenSet() const { return m_publicDnsNameHasBeenSet; }
146 template <typename PublicDnsNameT = Aws::String>
147 void SetPublicDnsName(PublicDnsNameT&& value) {
148 m_publicDnsNameHasBeenSet = true;
149 m_publicDnsName = std::forward<PublicDnsNameT>(value);
150 }
151 template <typename PublicDnsNameT = Aws::String>
152 NetworkInterface& WithPublicDnsName(PublicDnsNameT&& value) {
153 SetPublicDnsName(std::forward<PublicDnsNameT>(value));
154 return *this;
155 }
157
159
162 inline const Aws::String& GetPublicIp() const { return m_publicIp; }
163 inline bool PublicIpHasBeenSet() const { return m_publicIpHasBeenSet; }
164 template <typename PublicIpT = Aws::String>
165 void SetPublicIp(PublicIpT&& value) {
166 m_publicIpHasBeenSet = true;
167 m_publicIp = std::forward<PublicIpT>(value);
168 }
169 template <typename PublicIpT = Aws::String>
170 NetworkInterface& WithPublicIp(PublicIpT&& value) {
171 SetPublicIp(std::forward<PublicIpT>(value));
172 return *this;
173 }
175
177
180 inline const Aws::Vector<SecurityGroup>& GetSecurityGroups() const { return m_securityGroups; }
181 inline bool SecurityGroupsHasBeenSet() const { return m_securityGroupsHasBeenSet; }
182 template <typename SecurityGroupsT = Aws::Vector<SecurityGroup>>
183 void SetSecurityGroups(SecurityGroupsT&& value) {
184 m_securityGroupsHasBeenSet = true;
185 m_securityGroups = std::forward<SecurityGroupsT>(value);
186 }
187 template <typename SecurityGroupsT = Aws::Vector<SecurityGroup>>
188 NetworkInterface& WithSecurityGroups(SecurityGroupsT&& value) {
189 SetSecurityGroups(std::forward<SecurityGroupsT>(value));
190 return *this;
191 }
192 template <typename SecurityGroupsT = SecurityGroup>
193 NetworkInterface& AddSecurityGroups(SecurityGroupsT&& value) {
194 m_securityGroupsHasBeenSet = true;
195 m_securityGroups.emplace_back(std::forward<SecurityGroupsT>(value));
196 return *this;
197 }
199
201
204 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
205 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
206 template <typename SubnetIdT = Aws::String>
207 void SetSubnetId(SubnetIdT&& value) {
208 m_subnetIdHasBeenSet = true;
209 m_subnetId = std::forward<SubnetIdT>(value);
210 }
211 template <typename SubnetIdT = Aws::String>
212 NetworkInterface& WithSubnetId(SubnetIdT&& value) {
213 SetSubnetId(std::forward<SubnetIdT>(value));
214 return *this;
215 }
217
219
222 inline const Aws::String& GetVpcId() const { return m_vpcId; }
223 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
224 template <typename VpcIdT = Aws::String>
225 void SetVpcId(VpcIdT&& value) {
226 m_vpcIdHasBeenSet = true;
227 m_vpcId = std::forward<VpcIdT>(value);
228 }
229 template <typename VpcIdT = Aws::String>
230 NetworkInterface& WithVpcId(VpcIdT&& value) {
231 SetVpcId(std::forward<VpcIdT>(value));
232 return *this;
233 }
235 private:
236 Aws::Vector<Aws::String> m_ipv6Addresses;
237
238 Aws::String m_networkInterfaceId;
239
240 Aws::String m_privateDnsName;
241
242 Aws::String m_privateIpAddress;
243
244 Aws::Vector<PrivateIpAddressDetails> m_privateIpAddresses;
245
246 Aws::String m_publicDnsName;
247
248 Aws::String m_publicIp;
249
250 Aws::Vector<SecurityGroup> m_securityGroups;
251
252 Aws::String m_subnetId;
253
254 Aws::String m_vpcId;
255 bool m_ipv6AddressesHasBeenSet = false;
256 bool m_networkInterfaceIdHasBeenSet = false;
257 bool m_privateDnsNameHasBeenSet = false;
258 bool m_privateIpAddressHasBeenSet = false;
259 bool m_privateIpAddressesHasBeenSet = false;
260 bool m_publicDnsNameHasBeenSet = false;
261 bool m_publicIpHasBeenSet = false;
262 bool m_securityGroupsHasBeenSet = false;
263 bool m_subnetIdHasBeenSet = false;
264 bool m_vpcIdHasBeenSet = false;
265};
266
267} // namespace Model
268} // namespace GuardDuty
269} // namespace Aws
AWS_GUARDDUTY_API NetworkInterface()=default
void SetPublicDnsName(PublicDnsNameT &&value)
NetworkInterface & WithPrivateIpAddress(PrivateIpAddressT &&value)
const Aws::String & GetPrivateDnsName() const
const Aws::String & GetPublicIp() const
NetworkInterface & WithSecurityGroups(SecurityGroupsT &&value)
NetworkInterface & WithSubnetId(SubnetIdT &&value)
const Aws::Vector< SecurityGroup > & GetSecurityGroups() const
NetworkInterface & WithPrivateIpAddresses(PrivateIpAddressesT &&value)
NetworkInterface & WithPublicIp(PublicIpT &&value)
NetworkInterface & WithVpcId(VpcIdT &&value)
NetworkInterface & WithIpv6Addresses(Ipv6AddressesT &&value)
AWS_GUARDDUTY_API NetworkInterface(Aws::Utils::Json::JsonView jsonValue)
NetworkInterface & WithPrivateDnsName(PrivateDnsNameT &&value)
void SetPrivateIpAddress(PrivateIpAddressT &&value)
NetworkInterface & WithNetworkInterfaceId(NetworkInterfaceIdT &&value)
const Aws::Vector< Aws::String > & GetIpv6Addresses() const
const Aws::String & GetPrivateIpAddress() const
void SetSecurityGroups(SecurityGroupsT &&value)
AWS_GUARDDUTY_API NetworkInterface & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetPrivateIpAddresses(PrivateIpAddressesT &&value)
NetworkInterface & AddIpv6Addresses(Ipv6AddressesT &&value)
const Aws::String & GetPublicDnsName() const
void SetNetworkInterfaceId(NetworkInterfaceIdT &&value)
const Aws::String & GetSubnetId() const
NetworkInterface & WithPublicDnsName(PublicDnsNameT &&value)
const Aws::Vector< PrivateIpAddressDetails > & GetPrivateIpAddresses() const
void SetIpv6Addresses(Ipv6AddressesT &&value)
void SetPrivateDnsName(PrivateDnsNameT &&value)
AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const
NetworkInterface & AddPrivateIpAddresses(PrivateIpAddressesT &&value)
const Aws::String & GetNetworkInterfaceId() const
NetworkInterface & AddSecurityGroups(SecurityGroupsT &&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