7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/ec2/model/AllocationStrategy.h>
10#include <aws/ec2/model/OnDemandAllocationStrategy.h>
11#include <aws/ec2/model/SpotMaintenanceStrategies.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/ec2/model/ExcessCapacityTerminationPolicy.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15#include <aws/ec2/model/FleetType.h>
16#include <aws/core/utils/DateTime.h>
17#include <aws/ec2/model/InstanceInterruptionBehavior.h>
18#include <aws/ec2/model/LoadBalancersConfig.h>
19#include <aws/ec2/model/TargetCapacityUnitType.h>
20#include <aws/ec2/model/SpotFleetLaunchSpecification.h>
21#include <aws/ec2/model/LaunchTemplateConfig.h>
22#include <aws/ec2/model/TagSpecification.h>
146 inline void SetClientToken(
const char* value) { m_clientTokenHasBeenSet =
true; m_clientToken.assign(value); }
173 inline void SetFulfilledCapacity(
double value) { m_fulfilledCapacityHasBeenSet =
true; m_fulfilledCapacity = value; }
205 inline void SetIamFleetRole(
const char* value) { m_iamFleetRoleHasBeenSet =
true; m_iamFleetRole.assign(value); }
261 inline void SetSpotPrice(
const char* value) { m_spotPriceHasBeenSet =
true; m_spotPrice.assign(value); }
277 inline void SetTargetCapacity(
int value) { m_targetCapacityHasBeenSet =
true; m_targetCapacity = value; }
318 inline void SetOnDemandMaxTotalPrice(
const char* value) { m_onDemandMaxTotalPriceHasBeenSet =
true; m_onDemandMaxTotalPrice.assign(value); }
347 inline void SetSpotMaxTotalPrice(
const char* value) { m_spotMaxTotalPriceHasBeenSet =
true; m_spotMaxTotalPrice.assign(value); }
380 inline void SetType(
FleetType&& value) { m_typeHasBeenSet =
true; m_type = std::move(value); }
484 inline void SetContext(
const char* value) { m_contextHasBeenSet =
true; m_context.assign(value); }
531 bool m_allocationStrategyHasBeenSet =
false;
534 bool m_onDemandAllocationStrategyHasBeenSet =
false;
537 bool m_spotMaintenanceStrategiesHasBeenSet =
false;
540 bool m_clientTokenHasBeenSet =
false;
543 bool m_excessCapacityTerminationPolicyHasBeenSet =
false;
545 double m_fulfilledCapacity;
546 bool m_fulfilledCapacityHasBeenSet =
false;
548 double m_onDemandFulfilledCapacity;
549 bool m_onDemandFulfilledCapacityHasBeenSet =
false;
552 bool m_iamFleetRoleHasBeenSet =
false;
555 bool m_launchSpecificationsHasBeenSet =
false;
558 bool m_launchTemplateConfigsHasBeenSet =
false;
561 bool m_spotPriceHasBeenSet =
false;
563 int m_targetCapacity;
564 bool m_targetCapacityHasBeenSet =
false;
566 int m_onDemandTargetCapacity;
567 bool m_onDemandTargetCapacityHasBeenSet =
false;
570 bool m_onDemandMaxTotalPriceHasBeenSet =
false;
573 bool m_spotMaxTotalPriceHasBeenSet =
false;
575 bool m_terminateInstancesWithExpiration;
576 bool m_terminateInstancesWithExpirationHasBeenSet =
false;
579 bool m_typeHasBeenSet =
false;
582 bool m_validFromHasBeenSet =
false;
585 bool m_validUntilHasBeenSet =
false;
587 bool m_replaceUnhealthyInstances;
588 bool m_replaceUnhealthyInstancesHasBeenSet =
false;
591 bool m_instanceInterruptionBehaviorHasBeenSet =
false;
594 bool m_loadBalancersConfigHasBeenSet =
false;
596 int m_instancePoolsToUseCount;
597 bool m_instancePoolsToUseCountHasBeenSet =
false;
600 bool m_contextHasBeenSet =
false;
603 bool m_targetCapacityUnitTypeHasBeenSet =
false;
606 bool m_tagSpecificationsHasBeenSet =
false;
SpotFleetRequestConfigData & AddLaunchSpecifications(SpotFleetLaunchSpecification &&value)
SpotFleetRequestConfigData & WithOnDemandMaxTotalPrice(const Aws::String &value)
void SetExcessCapacityTerminationPolicy(const ExcessCapacityTerminationPolicy &value)
void SetSpotMaxTotalPrice(const Aws::String &value)
SpotFleetRequestConfigData & WithValidUntil(const Aws::Utils::DateTime &value)
const Aws::String & GetSpotMaxTotalPrice() const
bool TypeHasBeenSet() const
void SetTerminateInstancesWithExpiration(bool value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool LoadBalancersConfigHasBeenSet() const
void SetInstanceInterruptionBehavior(InstanceInterruptionBehavior &&value)
SpotFleetRequestConfigData & WithValidUntil(Aws::Utils::DateTime &&value)
SpotFleetRequestConfigData & AddLaunchSpecifications(const SpotFleetLaunchSpecification &value)
int GetTargetCapacity() const
bool GetReplaceUnhealthyInstances() const
void SetIamFleetRole(const char *value)
void SetLaunchSpecifications(const Aws::Vector< SpotFleetLaunchSpecification > &value)
const Aws::Utils::DateTime & GetValidFrom() const
AWS_EC2_API SpotFleetRequestConfigData()
bool FulfilledCapacityHasBeenSet() const
bool OnDemandMaxTotalPriceHasBeenSet() const
SpotFleetRequestConfigData & WithIamFleetRole(const char *value)
SpotFleetRequestConfigData & WithInstanceInterruptionBehavior(InstanceInterruptionBehavior &&value)
bool SpotPriceHasBeenSet() const
void SetOnDemandMaxTotalPrice(Aws::String &&value)
SpotFleetRequestConfigData & WithSpotMaxTotalPrice(Aws::String &&value)
void SetTagSpecifications(const Aws::Vector< TagSpecification > &value)
SpotFleetRequestConfigData & WithLaunchSpecifications(const Aws::Vector< SpotFleetLaunchSpecification > &value)
void SetContext(const Aws::String &value)
void SetContext(const char *value)
SpotFleetRequestConfigData & WithSpotMaintenanceStrategies(SpotMaintenanceStrategies &&value)
const Aws::String & GetContext() const
bool ValidUntilHasBeenSet() const
SpotFleetRequestConfigData & WithOnDemandMaxTotalPrice(const char *value)
double GetOnDemandFulfilledCapacity() const
bool ReplaceUnhealthyInstancesHasBeenSet() const
const Aws::String & GetSpotPrice() const
void SetValidFrom(Aws::Utils::DateTime &&value)
void SetInstancePoolsToUseCount(int value)
const Aws::Utils::DateTime & GetValidUntil() const
const InstanceInterruptionBehavior & GetInstanceInterruptionBehavior() const
SpotFleetRequestConfigData & AddTagSpecifications(TagSpecification &&value)
bool AllocationStrategyHasBeenSet() const
void SetSpotMaintenanceStrategies(const SpotMaintenanceStrategies &value)
void SetLaunchTemplateConfigs(const Aws::Vector< LaunchTemplateConfig > &value)
SpotFleetRequestConfigData & WithOnDemandAllocationStrategy(const OnDemandAllocationStrategy &value)
const AllocationStrategy & GetAllocationStrategy() const
SpotFleetRequestConfigData & WithClientToken(const char *value)
SpotFleetRequestConfigData & WithLoadBalancersConfig(const LoadBalancersConfig &value)
SpotFleetRequestConfigData & WithReplaceUnhealthyInstances(bool value)
SpotFleetRequestConfigData & AddLaunchTemplateConfigs(LaunchTemplateConfig &&value)
const Aws::String & GetClientToken() const
SpotFleetRequestConfigData & WithLoadBalancersConfig(LoadBalancersConfig &&value)
void SetValidFrom(const Aws::Utils::DateTime &value)
const SpotMaintenanceStrategies & GetSpotMaintenanceStrategies() const
SpotFleetRequestConfigData & WithSpotMaxTotalPrice(const Aws::String &value)
SpotFleetRequestConfigData & WithSpotPrice(const Aws::String &value)
bool TargetCapacityUnitTypeHasBeenSet() const
void SetOnDemandMaxTotalPrice(const char *value)
SpotFleetRequestConfigData & WithFulfilledCapacity(double value)
void SetLoadBalancersConfig(const LoadBalancersConfig &value)
void SetSpotPrice(const Aws::String &value)
SpotFleetRequestConfigData & WithIamFleetRole(const Aws::String &value)
int GetOnDemandTargetCapacity() const
bool OnDemandAllocationStrategyHasBeenSet() const
void SetOnDemandTargetCapacity(int value)
bool InstancePoolsToUseCountHasBeenSet() const
void SetExcessCapacityTerminationPolicy(ExcessCapacityTerminationPolicy &&value)
bool TargetCapacityHasBeenSet() const
void SetLaunchSpecifications(Aws::Vector< SpotFleetLaunchSpecification > &&value)
SpotFleetRequestConfigData & WithLaunchTemplateConfigs(Aws::Vector< LaunchTemplateConfig > &&value)
SpotFleetRequestConfigData & WithAllocationStrategy(const AllocationStrategy &value)
SpotFleetRequestConfigData & WithOnDemandTargetCapacity(int value)
void SetSpotMaintenanceStrategies(SpotMaintenanceStrategies &&value)
SpotFleetRequestConfigData & WithContext(const char *value)
void SetInstanceInterruptionBehavior(const InstanceInterruptionBehavior &value)
void SetValidUntil(Aws::Utils::DateTime &&value)
void SetOnDemandFulfilledCapacity(double value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
SpotFleetRequestConfigData & WithTagSpecifications(const Aws::Vector< TagSpecification > &value)
bool SpotMaxTotalPriceHasBeenSet() const
bool TagSpecificationsHasBeenSet() const
SpotFleetRequestConfigData & WithIamFleetRole(Aws::String &&value)
SpotFleetRequestConfigData & WithOnDemandFulfilledCapacity(double value)
SpotFleetRequestConfigData & WithTargetCapacityUnitType(const TargetCapacityUnitType &value)
void SetValidUntil(const Aws::Utils::DateTime &value)
void SetTargetCapacityUnitType(TargetCapacityUnitType &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetReplaceUnhealthyInstances(bool value)
SpotFleetRequestConfigData & WithTargetCapacityUnitType(TargetCapacityUnitType &&value)
SpotFleetRequestConfigData & WithOnDemandMaxTotalPrice(Aws::String &&value)
double GetFulfilledCapacity() const
AWS_EC2_API SpotFleetRequestConfigData & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetType(FleetType &&value)
SpotFleetRequestConfigData & WithClientToken(Aws::String &&value)
bool OnDemandFulfilledCapacityHasBeenSet() const
bool ClientTokenHasBeenSet() const
SpotFleetRequestConfigData & WithAllocationStrategy(AllocationStrategy &&value)
void SetClientToken(Aws::String &&value)
SpotFleetRequestConfigData & WithContext(const Aws::String &value)
bool ExcessCapacityTerminationPolicyHasBeenSet() const
void SetSpotPrice(const char *value)
SpotFleetRequestConfigData & WithType(const FleetType &value)
void SetTagSpecifications(Aws::Vector< TagSpecification > &&value)
void SetOnDemandAllocationStrategy(OnDemandAllocationStrategy &&value)
SpotFleetRequestConfigData & WithInstanceInterruptionBehavior(const InstanceInterruptionBehavior &value)
SpotFleetRequestConfigData & WithClientToken(const Aws::String &value)
void SetType(const FleetType &value)
bool ContextHasBeenSet() const
void SetSpotMaxTotalPrice(Aws::String &&value)
SpotFleetRequestConfigData & WithTerminateInstancesWithExpiration(bool value)
void SetAllocationStrategy(AllocationStrategy &&value)
const TargetCapacityUnitType & GetTargetCapacityUnitType() const
bool GetTerminateInstancesWithExpiration() const
void SetFulfilledCapacity(double value)
void SetContext(Aws::String &&value)
void SetTargetCapacityUnitType(const TargetCapacityUnitType &value)
bool SpotMaintenanceStrategiesHasBeenSet() const
const Aws::Vector< LaunchTemplateConfig > & GetLaunchTemplateConfigs() const
bool LaunchSpecificationsHasBeenSet() const
const FleetType & GetType() const
void SetIamFleetRole(const Aws::String &value)
const ExcessCapacityTerminationPolicy & GetExcessCapacityTerminationPolicy() const
bool TerminateInstancesWithExpirationHasBeenSet() const
SpotFleetRequestConfigData & AddLaunchTemplateConfigs(const LaunchTemplateConfig &value)
void SetSpotMaxTotalPrice(const char *value)
void SetLoadBalancersConfig(LoadBalancersConfig &&value)
const OnDemandAllocationStrategy & GetOnDemandAllocationStrategy() const
void SetClientToken(const Aws::String &value)
void SetAllocationStrategy(const AllocationStrategy &value)
SpotFleetRequestConfigData & WithType(FleetType &&value)
SpotFleetRequestConfigData & WithValidFrom(const Aws::Utils::DateTime &value)
AWS_EC2_API SpotFleetRequestConfigData(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetTargetCapacity(int value)
SpotFleetRequestConfigData & WithSpotMaxTotalPrice(const char *value)
SpotFleetRequestConfigData & WithSpotPrice(const char *value)
SpotFleetRequestConfigData & WithExcessCapacityTerminationPolicy(const ExcessCapacityTerminationPolicy &value)
int GetInstancePoolsToUseCount() const
SpotFleetRequestConfigData & WithInstancePoolsToUseCount(int value)
SpotFleetRequestConfigData & WithTargetCapacity(int value)
bool InstanceInterruptionBehaviorHasBeenSet() const
SpotFleetRequestConfigData & WithValidFrom(Aws::Utils::DateTime &&value)
SpotFleetRequestConfigData & WithLaunchTemplateConfigs(const Aws::Vector< LaunchTemplateConfig > &value)
const Aws::Vector< SpotFleetLaunchSpecification > & GetLaunchSpecifications() const
bool OnDemandTargetCapacityHasBeenSet() const
void SetLaunchTemplateConfigs(Aws::Vector< LaunchTemplateConfig > &&value)
void SetClientToken(const char *value)
const LoadBalancersConfig & GetLoadBalancersConfig() const
void SetIamFleetRole(Aws::String &&value)
const Aws::String & GetIamFleetRole() const
void SetSpotPrice(Aws::String &&value)
void SetOnDemandMaxTotalPrice(const Aws::String &value)
SpotFleetRequestConfigData & AddTagSpecifications(const TagSpecification &value)
bool IamFleetRoleHasBeenSet() const
SpotFleetRequestConfigData & WithOnDemandAllocationStrategy(OnDemandAllocationStrategy &&value)
SpotFleetRequestConfigData & WithExcessCapacityTerminationPolicy(ExcessCapacityTerminationPolicy &&value)
SpotFleetRequestConfigData & WithContext(Aws::String &&value)
SpotFleetRequestConfigData & WithTagSpecifications(Aws::Vector< TagSpecification > &&value)
SpotFleetRequestConfigData & WithSpotPrice(Aws::String &&value)
bool LaunchTemplateConfigsHasBeenSet() const
SpotFleetRequestConfigData & WithLaunchSpecifications(Aws::Vector< SpotFleetLaunchSpecification > &&value)
const Aws::String & GetOnDemandMaxTotalPrice() const
void SetOnDemandAllocationStrategy(const OnDemandAllocationStrategy &value)
bool ValidFromHasBeenSet() const
SpotFleetRequestConfigData & WithSpotMaintenanceStrategies(const SpotMaintenanceStrategies &value)
ExcessCapacityTerminationPolicy
InstanceInterruptionBehavior
OnDemandAllocationStrategy
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