7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/ec2/model/SpotAllocationStrategy.h>
10#include <aws/ec2/model/FleetSpotMaintenanceStrategies.h>
11#include <aws/ec2/model/SpotInstanceInterruptionBehavior.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
100 template<
typename Ma
intenanceStrategiesT = FleetSpotMa
intenanceStrategies>
101 void SetMaintenanceStrategies(MaintenanceStrategiesT&& value) { m_maintenanceStrategiesHasBeenSet =
true; m_maintenanceStrategies = std::forward<MaintenanceStrategiesT>(value); }
102 template<
typename Ma
intenanceStrategiesT = FleetSpotMa
intenanceStrategies>
146 inline void SetSingleInstanceType(
bool value) { m_singleInstanceTypeHasBeenSet =
true; m_singleInstanceType = value; }
172 inline void SetMinTargetCapacity(
int value) { m_minTargetCapacityHasBeenSet =
true; m_minTargetCapacity = value; }
194 template<
typename MaxTotalPriceT = Aws::String>
195 void SetMaxTotalPrice(MaxTotalPriceT&& value) { m_maxTotalPriceHasBeenSet =
true; m_maxTotalPrice = std::forward<MaxTotalPriceT>(value); }
196 template<
typename MaxTotalPriceT = Aws::String>
202 bool m_allocationStrategyHasBeenSet =
false;
204 FleetSpotMaintenanceStrategies m_maintenanceStrategies;
205 bool m_maintenanceStrategiesHasBeenSet =
false;
208 bool m_instanceInterruptionBehaviorHasBeenSet =
false;
210 int m_instancePoolsToUseCount{0};
211 bool m_instancePoolsToUseCountHasBeenSet =
false;
213 bool m_singleInstanceType{
false};
214 bool m_singleInstanceTypeHasBeenSet =
false;
216 bool m_singleAvailabilityZone{
false};
217 bool m_singleAvailabilityZoneHasBeenSet =
false;
219 int m_minTargetCapacity{0};
220 bool m_minTargetCapacityHasBeenSet =
false;
223 bool m_maxTotalPriceHasBeenSet =
false;
bool MaintenanceStrategiesHasBeenSet() const
SpotOptions & WithInstanceInterruptionBehavior(SpotInstanceInterruptionBehavior value)
void SetSingleInstanceType(bool value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetMaxTotalPrice(MaxTotalPriceT &&value)
void SetMaintenanceStrategies(MaintenanceStrategiesT &&value)
void SetInstanceInterruptionBehavior(SpotInstanceInterruptionBehavior value)
SpotAllocationStrategy GetAllocationStrategy() const
AWS_EC2_API SpotOptions()=default
AWS_EC2_API SpotOptions & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
SpotOptions & WithAllocationStrategy(SpotAllocationStrategy value)
bool MinTargetCapacityHasBeenSet() const
void SetAllocationStrategy(SpotAllocationStrategy value)
const FleetSpotMaintenanceStrategies & GetMaintenanceStrategies() const
bool SingleAvailabilityZoneHasBeenSet() const
bool AllocationStrategyHasBeenSet() const
bool InstanceInterruptionBehaviorHasBeenSet() const
bool GetSingleAvailabilityZone() const
AWS_EC2_API SpotOptions(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetMinTargetCapacity(int value)
bool MaxTotalPriceHasBeenSet() const
SpotOptions & WithInstancePoolsToUseCount(int value)
void SetInstancePoolsToUseCount(int value)
void SetSingleAvailabilityZone(bool value)
SpotOptions & WithSingleAvailabilityZone(bool value)
SpotInstanceInterruptionBehavior GetInstanceInterruptionBehavior() const
bool GetSingleInstanceType() const
const Aws::String & GetMaxTotalPrice() const
int GetMinTargetCapacity() const
SpotOptions & WithSingleInstanceType(bool value)
SpotOptions & WithMaintenanceStrategies(MaintenanceStrategiesT &&value)
int GetInstancePoolsToUseCount() const
bool InstancePoolsToUseCountHasBeenSet() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool SingleInstanceTypeHasBeenSet() const
SpotOptions & WithMinTargetCapacity(int value)
SpotOptions & WithMaxTotalPrice(MaxTotalPriceT &&value)
SpotInstanceInterruptionBehavior
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream