7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/model/ScheduledInstancesIamInstanceProfile.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/ec2/model/ScheduledInstancesMonitoring.h>
13#include <aws/ec2/model/ScheduledInstancesPlacement.h>
14#include <aws/ec2/model/ScheduledInstancesBlockDeviceMapping.h>
15#include <aws/ec2/model/ScheduledInstancesNetworkInterface.h>
57 template<
typename BlockDeviceMappingsT = Aws::Vector<ScheduledInstancesBlockDeviceMapping>>
58 void SetBlockDeviceMappings(BlockDeviceMappingsT&& value) { m_blockDeviceMappingsHasBeenSet =
true; m_blockDeviceMappings = std::forward<BlockDeviceMappingsT>(value); }
59 template<
typename BlockDeviceMappingsT = Aws::Vector<ScheduledInstancesBlockDeviceMapping>>
61 template<
typename BlockDeviceMappingsT = ScheduledInstancesBlockDeviceMapping>
75 inline void SetEbsOptimized(
bool value) { m_ebsOptimizedHasBeenSet =
true; m_ebsOptimized = value; }
85 template<
typename IamInstanceProfileT = ScheduledInstancesIamInstanceProfile>
86 void SetIamInstanceProfile(IamInstanceProfileT&& value) { m_iamInstanceProfileHasBeenSet =
true; m_iamInstanceProfile = std::forward<IamInstanceProfileT>(value); }
87 template<
typename IamInstanceProfileT = ScheduledInstancesIamInstanceProfile>
97 template<
typename ImageIdT = Aws::String>
98 void SetImageId(ImageIdT&& value) { m_imageIdHasBeenSet =
true; m_imageId = std::forward<ImageIdT>(value); }
99 template<
typename ImageIdT = Aws::String>
109 template<
typename InstanceTypeT = Aws::String>
110 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet =
true; m_instanceType = std::forward<InstanceTypeT>(value); }
111 template<
typename InstanceTypeT = Aws::String>
121 template<
typename KernelIdT = Aws::String>
122 void SetKernelId(KernelIdT&& value) { m_kernelIdHasBeenSet =
true; m_kernelId = std::forward<KernelIdT>(value); }
123 template<
typename KernelIdT = Aws::String>
133 template<
typename KeyNameT = Aws::String>
134 void SetKeyName(KeyNameT&& value) { m_keyNameHasBeenSet =
true; m_keyName = std::forward<KeyNameT>(value); }
135 template<
typename KeyNameT = Aws::String>
145 template<
typename MonitoringT = ScheduledInstancesMonitoring>
146 void SetMonitoring(MonitoringT&& value) { m_monitoringHasBeenSet =
true; m_monitoring = std::forward<MonitoringT>(value); }
147 template<
typename MonitoringT = ScheduledInstancesMonitoring>
157 template<
typename NetworkInterfacesT = Aws::Vector<ScheduledInstancesNetworkInterface>>
158 void SetNetworkInterfaces(NetworkInterfacesT&& value) { m_networkInterfacesHasBeenSet =
true; m_networkInterfaces = std::forward<NetworkInterfacesT>(value); }
159 template<
typename NetworkInterfacesT = Aws::Vector<ScheduledInstancesNetworkInterface>>
161 template<
typename NetworkInterfacesT = ScheduledInstancesNetworkInterface>
171 template<
typename PlacementT = ScheduledInstancesPlacement>
172 void SetPlacement(PlacementT&& value) { m_placementHasBeenSet =
true; m_placement = std::forward<PlacementT>(value); }
173 template<
typename PlacementT = ScheduledInstancesPlacement>
183 template<
typename RamdiskIdT = Aws::String>
184 void SetRamdiskId(RamdiskIdT&& value) { m_ramdiskIdHasBeenSet =
true; m_ramdiskId = std::forward<RamdiskIdT>(value); }
185 template<
typename RamdiskIdT = Aws::String>
195 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
196 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet =
true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
197 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
199 template<
typename SecurityGroupIdsT = Aws::String>
209 template<
typename SubnetIdT = Aws::String>
210 void SetSubnetId(SubnetIdT&& value) { m_subnetIdHasBeenSet =
true; m_subnetId = std::forward<SubnetIdT>(value); }
211 template<
typename SubnetIdT = Aws::String>
221 template<
typename UserDataT = Aws::String>
222 void SetUserData(UserDataT&& value) { m_userDataHasBeenSet =
true; m_userData = std::forward<UserDataT>(value); }
223 template<
typename UserDataT = Aws::String>
229 bool m_blockDeviceMappingsHasBeenSet =
false;
231 bool m_ebsOptimized{
false};
232 bool m_ebsOptimizedHasBeenSet =
false;
234 ScheduledInstancesIamInstanceProfile m_iamInstanceProfile;
235 bool m_iamInstanceProfileHasBeenSet =
false;
238 bool m_imageIdHasBeenSet =
false;
241 bool m_instanceTypeHasBeenSet =
false;
244 bool m_kernelIdHasBeenSet =
false;
247 bool m_keyNameHasBeenSet =
false;
249 ScheduledInstancesMonitoring m_monitoring;
250 bool m_monitoringHasBeenSet =
false;
253 bool m_networkInterfacesHasBeenSet =
false;
255 ScheduledInstancesPlacement m_placement;
256 bool m_placementHasBeenSet =
false;
259 bool m_ramdiskIdHasBeenSet =
false;
262 bool m_securityGroupIdsHasBeenSet =
false;
265 bool m_subnetIdHasBeenSet =
false;
268 bool m_userDataHasBeenSet =
false;
void SetBlockDeviceMappings(BlockDeviceMappingsT &&value)
bool RamdiskIdHasBeenSet() const
const Aws::Vector< ScheduledInstancesNetworkInterface > & GetNetworkInterfaces() const
ScheduledInstancesLaunchSpecification & AddNetworkInterfaces(NetworkInterfacesT &&value)
bool NetworkInterfacesHasBeenSet() const
ScheduledInstancesLaunchSpecification & WithNetworkInterfaces(NetworkInterfacesT &&value)
const ScheduledInstancesPlacement & GetPlacement() const
const Aws::String & GetRamdiskId() const
ScheduledInstancesLaunchSpecification & AddBlockDeviceMappings(BlockDeviceMappingsT &&value)
const Aws::String & GetInstanceType() const
ScheduledInstancesLaunchSpecification & WithBlockDeviceMappings(BlockDeviceMappingsT &&value)
bool KernelIdHasBeenSet() const
const ScheduledInstancesMonitoring & GetMonitoring() const
bool EbsOptimizedHasBeenSet() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetIamInstanceProfile(IamInstanceProfileT &&value)
bool UserDataHasBeenSet() const
void SetInstanceType(InstanceTypeT &&value)
void SetRamdiskId(RamdiskIdT &&value)
ScheduledInstancesLaunchSpecification & WithRamdiskId(RamdiskIdT &&value)
bool SubnetIdHasBeenSet() const
bool PlacementHasBeenSet() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
ScheduledInstancesLaunchSpecification & WithImageId(ImageIdT &&value)
bool MonitoringHasBeenSet() const
void SetImageId(ImageIdT &&value)
void SetPlacement(PlacementT &&value)
void SetKeyName(KeyNameT &&value)
void SetSubnetId(SubnetIdT &&value)
bool InstanceTypeHasBeenSet() const
ScheduledInstancesLaunchSpecification & AddSecurityGroupIds(SecurityGroupIdsT &&value)
AWS_EC2_API ScheduledInstancesLaunchSpecification()=default
ScheduledInstancesLaunchSpecification & WithPlacement(PlacementT &&value)
ScheduledInstancesLaunchSpecification & WithInstanceType(InstanceTypeT &&value)
ScheduledInstancesLaunchSpecification & WithSecurityGroupIds(SecurityGroupIdsT &&value)
AWS_EC2_API ScheduledInstancesLaunchSpecification & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const ScheduledInstancesIamInstanceProfile & GetIamInstanceProfile() const
void SetNetworkInterfaces(NetworkInterfacesT &&value)
ScheduledInstancesLaunchSpecification & WithMonitoring(MonitoringT &&value)
bool BlockDeviceMappingsHasBeenSet() const
ScheduledInstancesLaunchSpecification & WithUserData(UserDataT &&value)
bool SecurityGroupIdsHasBeenSet() const
void SetUserData(UserDataT &&value)
bool KeyNameHasBeenSet() const
bool IamInstanceProfileHasBeenSet() const
const Aws::String & GetKeyName() const
const Aws::Vector< ScheduledInstancesBlockDeviceMapping > & GetBlockDeviceMappings() const
const Aws::String & GetUserData() const
void SetMonitoring(MonitoringT &&value)
ScheduledInstancesLaunchSpecification & WithEbsOptimized(bool value)
const Aws::String & GetKernelId() const
bool GetEbsOptimized() const
const Aws::String & GetImageId() const
ScheduledInstancesLaunchSpecification & WithKeyName(KeyNameT &&value)
void SetEbsOptimized(bool value)
ScheduledInstancesLaunchSpecification & WithIamInstanceProfile(IamInstanceProfileT &&value)
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
AWS_EC2_API ScheduledInstancesLaunchSpecification(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
const Aws::String & GetSubnetId() const
void SetKernelId(KernelIdT &&value)
ScheduledInstancesLaunchSpecification & WithSubnetId(SubnetIdT &&value)
bool ImageIdHasBeenSet() const
ScheduledInstancesLaunchSpecification & WithKernelId(KernelIdT &&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