AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
ScheduledInstancesNetworkInterface.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/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/ScheduledInstancesIpv6Address.h>
12#include <aws/ec2/model/ScheduledInstancesPrivateIpAddressConfig.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace EC2 {
23namespace Model {
24
32 public:
33 AWS_EC2_API ScheduledInstancesNetworkInterface() = 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
52 inline bool GetAssociatePublicIpAddress() const { return m_associatePublicIpAddress; }
53 inline bool AssociatePublicIpAddressHasBeenSet() const { return m_associatePublicIpAddressHasBeenSet; }
54 inline void SetAssociatePublicIpAddress(bool value) {
55 m_associatePublicIpAddressHasBeenSet = true;
56 m_associatePublicIpAddress = value;
57 }
60 return *this;
61 }
63
65
69 inline bool GetDeleteOnTermination() const { return m_deleteOnTermination; }
70 inline bool DeleteOnTerminationHasBeenSet() const { return m_deleteOnTerminationHasBeenSet; }
71 inline void SetDeleteOnTermination(bool value) {
72 m_deleteOnTerminationHasBeenSet = true;
73 m_deleteOnTermination = value;
74 }
77 return *this;
78 }
80
82
85 inline const Aws::String& GetDescription() const { return m_description; }
86 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
87 template <typename DescriptionT = Aws::String>
88 void SetDescription(DescriptionT&& value) {
89 m_descriptionHasBeenSet = true;
90 m_description = std::forward<DescriptionT>(value);
91 }
92 template <typename DescriptionT = Aws::String>
94 SetDescription(std::forward<DescriptionT>(value));
95 return *this;
96 }
98
100
103 inline int GetDeviceIndex() const { return m_deviceIndex; }
104 inline bool DeviceIndexHasBeenSet() const { return m_deviceIndexHasBeenSet; }
105 inline void SetDeviceIndex(int value) {
106 m_deviceIndexHasBeenSet = true;
107 m_deviceIndex = value;
108 }
110 SetDeviceIndex(value);
111 return *this;
112 }
114
116
119 inline const Aws::Vector<Aws::String>& GetGroups() const { return m_groups; }
120 inline bool GroupsHasBeenSet() const { return m_groupsHasBeenSet; }
121 template <typename GroupsT = Aws::Vector<Aws::String>>
122 void SetGroups(GroupsT&& value) {
123 m_groupsHasBeenSet = true;
124 m_groups = std::forward<GroupsT>(value);
125 }
126 template <typename GroupsT = Aws::Vector<Aws::String>>
128 SetGroups(std::forward<GroupsT>(value));
129 return *this;
130 }
131 template <typename GroupsT = Aws::String>
133 m_groupsHasBeenSet = true;
134 m_groups.emplace_back(std::forward<GroupsT>(value));
135 return *this;
136 }
138
140
144 inline int GetIpv6AddressCount() const { return m_ipv6AddressCount; }
145 inline bool Ipv6AddressCountHasBeenSet() const { return m_ipv6AddressCountHasBeenSet; }
146 inline void SetIpv6AddressCount(int value) {
147 m_ipv6AddressCountHasBeenSet = true;
148 m_ipv6AddressCount = value;
149 }
151 SetIpv6AddressCount(value);
152 return *this;
153 }
155
157
160 inline const Aws::Vector<ScheduledInstancesIpv6Address>& GetIpv6Addresses() const { return m_ipv6Addresses; }
161 inline bool Ipv6AddressesHasBeenSet() const { return m_ipv6AddressesHasBeenSet; }
162 template <typename Ipv6AddressesT = Aws::Vector<ScheduledInstancesIpv6Address>>
163 void SetIpv6Addresses(Ipv6AddressesT&& value) {
164 m_ipv6AddressesHasBeenSet = true;
165 m_ipv6Addresses = std::forward<Ipv6AddressesT>(value);
166 }
167 template <typename Ipv6AddressesT = Aws::Vector<ScheduledInstancesIpv6Address>>
169 SetIpv6Addresses(std::forward<Ipv6AddressesT>(value));
170 return *this;
171 }
172 template <typename Ipv6AddressesT = ScheduledInstancesIpv6Address>
174 m_ipv6AddressesHasBeenSet = true;
175 m_ipv6Addresses.emplace_back(std::forward<Ipv6AddressesT>(value));
176 return *this;
177 }
179
181
184 inline const Aws::String& GetNetworkInterfaceId() const { return m_networkInterfaceId; }
185 inline bool NetworkInterfaceIdHasBeenSet() const { return m_networkInterfaceIdHasBeenSet; }
186 template <typename NetworkInterfaceIdT = Aws::String>
187 void SetNetworkInterfaceId(NetworkInterfaceIdT&& value) {
188 m_networkInterfaceIdHasBeenSet = true;
189 m_networkInterfaceId = std::forward<NetworkInterfaceIdT>(value);
190 }
191 template <typename NetworkInterfaceIdT = Aws::String>
193 SetNetworkInterfaceId(std::forward<NetworkInterfaceIdT>(value));
194 return *this;
195 }
197
199
202 inline const Aws::String& GetPrivateIpAddress() const { return m_privateIpAddress; }
203 inline bool PrivateIpAddressHasBeenSet() const { return m_privateIpAddressHasBeenSet; }
204 template <typename PrivateIpAddressT = Aws::String>
205 void SetPrivateIpAddress(PrivateIpAddressT&& value) {
206 m_privateIpAddressHasBeenSet = true;
207 m_privateIpAddress = std::forward<PrivateIpAddressT>(value);
208 }
209 template <typename PrivateIpAddressT = Aws::String>
211 SetPrivateIpAddress(std::forward<PrivateIpAddressT>(value));
212 return *this;
213 }
215
217
221 return m_privateIpAddressConfigs;
222 }
223 inline bool PrivateIpAddressConfigsHasBeenSet() const { return m_privateIpAddressConfigsHasBeenSet; }
224 template <typename PrivateIpAddressConfigsT = Aws::Vector<ScheduledInstancesPrivateIpAddressConfig>>
225 void SetPrivateIpAddressConfigs(PrivateIpAddressConfigsT&& value) {
226 m_privateIpAddressConfigsHasBeenSet = true;
227 m_privateIpAddressConfigs = std::forward<PrivateIpAddressConfigsT>(value);
228 }
229 template <typename PrivateIpAddressConfigsT = Aws::Vector<ScheduledInstancesPrivateIpAddressConfig>>
231 SetPrivateIpAddressConfigs(std::forward<PrivateIpAddressConfigsT>(value));
232 return *this;
233 }
234 template <typename PrivateIpAddressConfigsT = ScheduledInstancesPrivateIpAddressConfig>
236 m_privateIpAddressConfigsHasBeenSet = true;
237 m_privateIpAddressConfigs.emplace_back(std::forward<PrivateIpAddressConfigsT>(value));
238 return *this;
239 }
241
243
246 inline int GetSecondaryPrivateIpAddressCount() const { return m_secondaryPrivateIpAddressCount; }
247 inline bool SecondaryPrivateIpAddressCountHasBeenSet() const { return m_secondaryPrivateIpAddressCountHasBeenSet; }
248 inline void SetSecondaryPrivateIpAddressCount(int value) {
249 m_secondaryPrivateIpAddressCountHasBeenSet = true;
250 m_secondaryPrivateIpAddressCount = value;
251 }
254 return *this;
255 }
257
259
262 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
263 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
264 template <typename SubnetIdT = Aws::String>
265 void SetSubnetId(SubnetIdT&& value) {
266 m_subnetIdHasBeenSet = true;
267 m_subnetId = std::forward<SubnetIdT>(value);
268 }
269 template <typename SubnetIdT = Aws::String>
271 SetSubnetId(std::forward<SubnetIdT>(value));
272 return *this;
273 }
275 private:
276 bool m_associatePublicIpAddress{false};
277
278 bool m_deleteOnTermination{false};
279
280 Aws::String m_description;
281
282 int m_deviceIndex{0};
283
285
286 int m_ipv6AddressCount{0};
287
289
290 Aws::String m_networkInterfaceId;
291
292 Aws::String m_privateIpAddress;
293
295
296 int m_secondaryPrivateIpAddressCount{0};
297
298 Aws::String m_subnetId;
299 bool m_associatePublicIpAddressHasBeenSet = false;
300 bool m_deleteOnTerminationHasBeenSet = false;
301 bool m_descriptionHasBeenSet = false;
302 bool m_deviceIndexHasBeenSet = false;
303 bool m_groupsHasBeenSet = false;
304 bool m_ipv6AddressCountHasBeenSet = false;
305 bool m_ipv6AddressesHasBeenSet = false;
306 bool m_networkInterfaceIdHasBeenSet = false;
307 bool m_privateIpAddressHasBeenSet = false;
308 bool m_privateIpAddressConfigsHasBeenSet = false;
309 bool m_secondaryPrivateIpAddressCountHasBeenSet = false;
310 bool m_subnetIdHasBeenSet = false;
311};
312
313} // namespace Model
314} // namespace EC2
315} // namespace Aws
ScheduledInstancesNetworkInterface & WithNetworkInterfaceId(NetworkInterfaceIdT &&value)
ScheduledInstancesNetworkInterface & AddGroups(GroupsT &&value)
ScheduledInstancesNetworkInterface & WithDeleteOnTermination(bool value)
ScheduledInstancesNetworkInterface & WithAssociatePublicIpAddress(bool value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
ScheduledInstancesNetworkInterface & WithPrivateIpAddressConfigs(PrivateIpAddressConfigsT &&value)
AWS_EC2_API ScheduledInstancesNetworkInterface & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
ScheduledInstancesNetworkInterface & WithSubnetId(SubnetIdT &&value)
ScheduledInstancesNetworkInterface & AddIpv6Addresses(Ipv6AddressesT &&value)
ScheduledInstancesNetworkInterface & WithDescription(DescriptionT &&value)
ScheduledInstancesNetworkInterface & WithDeviceIndex(int value)
ScheduledInstancesNetworkInterface & WithSecondaryPrivateIpAddressCount(int value)
const Aws::Vector< ScheduledInstancesIpv6Address > & GetIpv6Addresses() const
const Aws::Vector< ScheduledInstancesPrivateIpAddressConfig > & GetPrivateIpAddressConfigs() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API ScheduledInstancesNetworkInterface(const Aws::Utils::Xml::XmlNode &xmlNode)
ScheduledInstancesNetworkInterface & WithIpv6AddressCount(int value)
ScheduledInstancesNetworkInterface & WithPrivateIpAddress(PrivateIpAddressT &&value)
ScheduledInstancesNetworkInterface & WithIpv6Addresses(Ipv6AddressesT &&value)
ScheduledInstancesNetworkInterface & AddPrivateIpAddressConfigs(PrivateIpAddressConfigsT &&value)
ScheduledInstancesNetworkInterface & WithGroups(GroupsT &&value)
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