7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
66 template<
typename OnDemandAllocationStrategyT = Aws::String>
67 void SetOnDemandAllocationStrategy(OnDemandAllocationStrategyT&& value) { m_onDemandAllocationStrategyHasBeenSet =
true; m_onDemandAllocationStrategy = std::forward<OnDemandAllocationStrategyT>(value); }
68 template<
typename OnDemandAllocationStrategyT = Aws::String>
85 inline void SetOnDemandBaseCapacity(
int value) { m_onDemandBaseCapacityHasBeenSet =
true; m_onDemandBaseCapacity = value; }
132 template<
typename SpotAllocationStrategyT = Aws::String>
133 void SetSpotAllocationStrategy(SpotAllocationStrategyT&& value) { m_spotAllocationStrategyHasBeenSet =
true; m_spotAllocationStrategy = std::forward<SpotAllocationStrategyT>(value); }
134 template<
typename SpotAllocationStrategyT = Aws::String>
148 inline void SetSpotInstancePools(
int value) { m_spotInstancePoolsHasBeenSet =
true; m_spotInstancePools = value; }
166 template<
typename SpotMaxPriceT = Aws::String>
167 void SetSpotMaxPrice(SpotMaxPriceT&& value) { m_spotMaxPriceHasBeenSet =
true; m_spotMaxPrice = std::forward<SpotMaxPriceT>(value); }
168 template<
typename SpotMaxPriceT = Aws::String>
174 bool m_onDemandAllocationStrategyHasBeenSet =
false;
176 int m_onDemandBaseCapacity{0};
177 bool m_onDemandBaseCapacityHasBeenSet =
false;
179 int m_onDemandPercentageAboveBaseCapacity{0};
180 bool m_onDemandPercentageAboveBaseCapacityHasBeenSet =
false;
183 bool m_spotAllocationStrategyHasBeenSet =
false;
185 int m_spotInstancePools{0};
186 bool m_spotInstancePoolsHasBeenSet =
false;
189 bool m_spotMaxPriceHasBeenSet =
false;
void SetSpotInstancePools(int value)
AWS_AUTOSCALING_API InstancesDistribution(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetOnDemandAllocationStrategy() const
InstancesDistribution & WithOnDemandBaseCapacity(int value)
void SetOnDemandPercentageAboveBaseCapacity(int value)
InstancesDistribution & WithSpotInstancePools(int value)
void SetOnDemandAllocationStrategy(OnDemandAllocationStrategyT &&value)
int GetOnDemandBaseCapacity() const
void SetSpotAllocationStrategy(SpotAllocationStrategyT &&value)
const Aws::String & GetSpotMaxPrice() const
bool OnDemandAllocationStrategyHasBeenSet() const
const Aws::String & GetSpotAllocationStrategy() const
void SetSpotMaxPrice(SpotMaxPriceT &&value)
bool SpotMaxPriceHasBeenSet() const
InstancesDistribution & WithSpotMaxPrice(SpotMaxPriceT &&value)
AWS_AUTOSCALING_API InstancesDistribution()=default
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetOnDemandBaseCapacity(int value)
bool SpotInstancePoolsHasBeenSet() const
InstancesDistribution & WithOnDemandPercentageAboveBaseCapacity(int value)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool OnDemandBaseCapacityHasBeenSet() const
int GetOnDemandPercentageAboveBaseCapacity() const
InstancesDistribution & WithSpotAllocationStrategy(SpotAllocationStrategyT &&value)
InstancesDistribution & WithOnDemandAllocationStrategy(OnDemandAllocationStrategyT &&value)
AWS_AUTOSCALING_API InstancesDistribution & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool SpotAllocationStrategyHasBeenSet() const
int GetSpotInstancePools() const
bool OnDemandPercentageAboveBaseCapacityHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream