7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/ec2/model/ScheduledInstancesIpv6Address.h>
12#include <aws/ec2/model/ScheduledInstancesPrivateIpAddressConfig.h>
71 inline void SetDeleteOnTermination(
bool value) { m_deleteOnTerminationHasBeenSet =
true; m_deleteOnTermination = value; }
81 template<
typename DescriptionT = Aws::String>
82 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
83 template<
typename DescriptionT = Aws::String>
93 inline void SetDeviceIndex(
int value) { m_deviceIndexHasBeenSet =
true; m_deviceIndex = value; }
103 template<
typename GroupsT = Aws::Vector<Aws::String>>
104 void SetGroups(GroupsT&& value) { m_groupsHasBeenSet =
true; m_groups = std::forward<GroupsT>(value); }
105 template<
typename GroupsT = Aws::Vector<Aws::String>>
107 template<
typename GroupsT = Aws::String>
118 inline void SetIpv6AddressCount(
int value) { m_ipv6AddressCountHasBeenSet =
true; m_ipv6AddressCount = value; }
128 template<
typename Ipv6AddressesT = Aws::Vector<ScheduledInstancesIpv6Address>>
129 void SetIpv6Addresses(Ipv6AddressesT&& value) { m_ipv6AddressesHasBeenSet =
true; m_ipv6Addresses = std::forward<Ipv6AddressesT>(value); }
130 template<
typename Ipv6AddressesT = Aws::Vector<ScheduledInstancesIpv6Address>>
132 template<
typename Ipv6AddressesT = ScheduledInstancesIpv6Address>
142 template<
typename NetworkInterfaceIdT = Aws::String>
143 void SetNetworkInterfaceId(NetworkInterfaceIdT&& value) { m_networkInterfaceIdHasBeenSet =
true; m_networkInterfaceId = std::forward<NetworkInterfaceIdT>(value); }
144 template<
typename NetworkInterfaceIdT = Aws::String>
154 template<
typename PrivateIpAddressT = Aws::String>
155 void SetPrivateIpAddress(PrivateIpAddressT&& value) { m_privateIpAddressHasBeenSet =
true; m_privateIpAddress = std::forward<PrivateIpAddressT>(value); }
156 template<
typename PrivateIpAddressT = Aws::String>
166 template<
typename PrivateIpAddressConfigsT = Aws::Vector<ScheduledInstancesPrivateIpAddressConfig>>
167 void SetPrivateIpAddressConfigs(PrivateIpAddressConfigsT&& value) { m_privateIpAddressConfigsHasBeenSet =
true; m_privateIpAddressConfigs = std::forward<PrivateIpAddressConfigsT>(value); }
168 template<
typename PrivateIpAddressConfigsT = Aws::Vector<ScheduledInstancesPrivateIpAddressConfig>>
170 template<
typename PrivateIpAddressConfigsT = ScheduledInstancesPrivateIpAddressConfig>
190 template<
typename SubnetIdT = Aws::String>
191 void SetSubnetId(SubnetIdT&& value) { m_subnetIdHasBeenSet =
true; m_subnetId = std::forward<SubnetIdT>(value); }
192 template<
typename SubnetIdT = Aws::String>
197 bool m_associatePublicIpAddress{
false};
198 bool m_associatePublicIpAddressHasBeenSet =
false;
200 bool m_deleteOnTermination{
false};
201 bool m_deleteOnTerminationHasBeenSet =
false;
204 bool m_descriptionHasBeenSet =
false;
206 int m_deviceIndex{0};
207 bool m_deviceIndexHasBeenSet =
false;
210 bool m_groupsHasBeenSet =
false;
212 int m_ipv6AddressCount{0};
213 bool m_ipv6AddressCountHasBeenSet =
false;
216 bool m_ipv6AddressesHasBeenSet =
false;
219 bool m_networkInterfaceIdHasBeenSet =
false;
222 bool m_privateIpAddressHasBeenSet =
false;
225 bool m_privateIpAddressConfigsHasBeenSet =
false;
227 int m_secondaryPrivateIpAddressCount{0};
228 bool m_secondaryPrivateIpAddressCountHasBeenSet =
false;
231 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