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>
55 m_associatePublicIpAddressHasBeenSet =
true;
56 m_associatePublicIpAddress = value;
72 m_deleteOnTerminationHasBeenSet =
true;
73 m_deleteOnTermination = value;
87 template <
typename DescriptionT = Aws::String>
89 m_descriptionHasBeenSet =
true;
90 m_description = std::forward<DescriptionT>(value);
92 template <
typename DescriptionT = Aws::String>
106 m_deviceIndexHasBeenSet =
true;
107 m_deviceIndex = value;
121 template <
typename GroupsT = Aws::Vector<Aws::String>>
123 m_groupsHasBeenSet =
true;
124 m_groups = std::forward<GroupsT>(value);
126 template <
typename GroupsT = Aws::Vector<Aws::String>>
131 template <
typename GroupsT = Aws::String>
133 m_groupsHasBeenSet =
true;
134 m_groups.emplace_back(std::forward<GroupsT>(value));
147 m_ipv6AddressCountHasBeenSet =
true;
148 m_ipv6AddressCount = value;
162 template <
typename Ipv6AddressesT = Aws::Vector<ScheduledInstancesIpv6Address>>
164 m_ipv6AddressesHasBeenSet =
true;
165 m_ipv6Addresses = std::forward<Ipv6AddressesT>(value);
167 template <
typename Ipv6AddressesT = Aws::Vector<ScheduledInstancesIpv6Address>>
172 template <
typename Ipv6AddressesT = ScheduledInstancesIpv6Address>
174 m_ipv6AddressesHasBeenSet =
true;
175 m_ipv6Addresses.emplace_back(std::forward<Ipv6AddressesT>(value));
186 template <
typename NetworkInterfaceIdT = Aws::String>
188 m_networkInterfaceIdHasBeenSet =
true;
189 m_networkInterfaceId = std::forward<NetworkInterfaceIdT>(value);
191 template <
typename NetworkInterfaceIdT = Aws::String>
204 template <
typename PrivateIpAddressT = Aws::String>
206 m_privateIpAddressHasBeenSet =
true;
207 m_privateIpAddress = std::forward<PrivateIpAddressT>(value);
209 template <
typename PrivateIpAddressT = Aws::String>
221 return m_privateIpAddressConfigs;
224 template <
typename PrivateIpAddressConfigsT = Aws::Vector<ScheduledInstancesPrivateIpAddressConfig>>
226 m_privateIpAddressConfigsHasBeenSet =
true;
227 m_privateIpAddressConfigs = std::forward<PrivateIpAddressConfigsT>(value);
229 template <
typename PrivateIpAddressConfigsT = Aws::Vector<ScheduledInstancesPrivateIpAddressConfig>>
234 template <
typename PrivateIpAddressConfigsT = ScheduledInstancesPrivateIpAddressConfig>
236 m_privateIpAddressConfigsHasBeenSet =
true;
237 m_privateIpAddressConfigs.emplace_back(std::forward<PrivateIpAddressConfigsT>(value));
249 m_secondaryPrivateIpAddressCountHasBeenSet =
true;
250 m_secondaryPrivateIpAddressCount = value;
264 template <
typename SubnetIdT = Aws::String>
266 m_subnetIdHasBeenSet =
true;
267 m_subnetId = std::forward<SubnetIdT>(value);
269 template <
typename SubnetIdT = Aws::String>
276 bool m_associatePublicIpAddress{
false};
278 bool m_deleteOnTermination{
false};
282 int m_deviceIndex{0};
286 int m_ipv6AddressCount{0};
296 int m_secondaryPrivateIpAddressCount{0};
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;
void SetPrivateIpAddress(PrivateIpAddressT &&value)
bool AssociatePublicIpAddressHasBeenSet() const
void SetIpv6Addresses(Ipv6AddressesT &&value)
ScheduledInstancesNetworkInterface & WithNetworkInterfaceId(NetworkInterfaceIdT &&value)
void SetPrivateIpAddressConfigs(PrivateIpAddressConfigsT &&value)
ScheduledInstancesNetworkInterface & AddGroups(GroupsT &&value)
const Aws::Vector< Aws::String > & GetGroups() const
ScheduledInstancesNetworkInterface & WithDeleteOnTermination(bool value)
bool NetworkInterfaceIdHasBeenSet() const
ScheduledInstancesNetworkInterface & WithAssociatePublicIpAddress(bool value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool GroupsHasBeenSet() const
ScheduledInstancesNetworkInterface & WithPrivateIpAddressConfigs(PrivateIpAddressConfigsT &&value)
bool PrivateIpAddressHasBeenSet() const
AWS_EC2_API ScheduledInstancesNetworkInterface & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
ScheduledInstancesNetworkInterface & WithSubnetId(SubnetIdT &&value)
ScheduledInstancesNetworkInterface & AddIpv6Addresses(Ipv6AddressesT &&value)
ScheduledInstancesNetworkInterface & WithDescription(DescriptionT &&value)
void SetDeleteOnTermination(bool value)
ScheduledInstancesNetworkInterface & WithDeviceIndex(int value)
ScheduledInstancesNetworkInterface & WithSecondaryPrivateIpAddressCount(int value)
const Aws::Vector< ScheduledInstancesIpv6Address > & GetIpv6Addresses() const
const Aws::Vector< ScheduledInstancesPrivateIpAddressConfig > & GetPrivateIpAddressConfigs() const
void SetSecondaryPrivateIpAddressCount(int value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
bool Ipv6AddressCountHasBeenSet() const
bool Ipv6AddressesHasBeenSet() const
const Aws::String & GetDescription() const
bool SecondaryPrivateIpAddressCountHasBeenSet() const
AWS_EC2_API ScheduledInstancesNetworkInterface(const Aws::Utils::Xml::XmlNode &xmlNode)
ScheduledInstancesNetworkInterface & WithIpv6AddressCount(int value)
void SetIpv6AddressCount(int value)
int GetDeviceIndex() const
AWS_EC2_API ScheduledInstancesNetworkInterface()=default
ScheduledInstancesNetworkInterface & WithPrivateIpAddress(PrivateIpAddressT &&value)
const Aws::String & GetSubnetId() const
bool GetAssociatePublicIpAddress() const
bool DeviceIndexHasBeenSet() const
int GetSecondaryPrivateIpAddressCount() const
const Aws::String & GetNetworkInterfaceId() const
void SetNetworkInterfaceId(NetworkInterfaceIdT &&value)
void SetDeviceIndex(int value)
int GetIpv6AddressCount() const
bool DeleteOnTerminationHasBeenSet() const
bool DescriptionHasBeenSet() const
ScheduledInstancesNetworkInterface & WithIpv6Addresses(Ipv6AddressesT &&value)
bool PrivateIpAddressConfigsHasBeenSet() const
bool GetDeleteOnTermination() const
void SetGroups(GroupsT &&value)
void SetAssociatePublicIpAddress(bool value)
ScheduledInstancesNetworkInterface & AddPrivateIpAddressConfigs(PrivateIpAddressConfigsT &&value)
bool SubnetIdHasBeenSet() const
void SetDescription(DescriptionT &&value)
void SetSubnetId(SubnetIdT &&value)
const Aws::String & GetPrivateIpAddress() const
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