/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes the configuration of On-Demand Instances in an EC2
* Fleet.See Also:
AWS
* API Reference
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowest-price, EC2 Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, EC2 Fleet uses the priority that you assigned to each
* launch template override, launching the highest priority first. If you do not
* specify a value, EC2 Fleet defaults to lowest-price.
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowest-price, EC2 Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, EC2 Fleet uses the priority that you assigned to each
* launch template override, launching the highest priority first. If you do not
* specify a value, EC2 Fleet defaults to lowest-price.
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowest-price, EC2 Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, EC2 Fleet uses the priority that you assigned to each
* launch template override, launching the highest priority first. If you do not
* specify a value, EC2 Fleet defaults to lowest-price.
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowest-price, EC2 Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, EC2 Fleet uses the priority that you assigned to each
* launch template override, launching the highest priority first. If you do not
* specify a value, EC2 Fleet defaults to lowest-price.
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowest-price, EC2 Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, EC2 Fleet uses the priority that you assigned to each
* launch template override, launching the highest priority first. If you do not
* specify a value, EC2 Fleet defaults to lowest-price.
The order of the launch template overrides to use in fulfilling On-Demand
* capacity. If you specify lowest-price, EC2 Fleet uses price to
* determine the order, launching the lowest price first. If you specify
* prioritized, EC2 Fleet uses the priority that you assigned to each
* launch template override, launching the highest priority first. If you do not
* specify a value, EC2 Fleet defaults to lowest-price.
The strategy for using unused Capacity Reservations for fulfilling On-Demand
* capacity. Supported only for fleets of type instant.
The strategy for using unused Capacity Reservations for fulfilling On-Demand
* capacity. Supported only for fleets of type instant.
The strategy for using unused Capacity Reservations for fulfilling On-Demand
* capacity. Supported only for fleets of type instant.
The strategy for using unused Capacity Reservations for fulfilling On-Demand
* capacity. Supported only for fleets of type instant.
The strategy for using unused Capacity Reservations for fulfilling On-Demand
* capacity. Supported only for fleets of type instant.
The strategy for using unused Capacity Reservations for fulfilling On-Demand
* capacity. Supported only for fleets of type instant.
Indicates that the fleet uses a single instance type to launch all On-Demand
* Instances in the fleet. Supported only for fleets of type
* instant.
Indicates that the fleet uses a single instance type to launch all On-Demand
* Instances in the fleet. Supported only for fleets of type
* instant.
Indicates that the fleet uses a single instance type to launch all On-Demand
* Instances in the fleet. Supported only for fleets of type
* instant.
Indicates that the fleet uses a single instance type to launch all On-Demand
* Instances in the fleet. Supported only for fleets of type
* instant.
Indicates that the fleet launches all On-Demand Instances into a single
* Availability Zone. Supported only for fleets of type instant.
Indicates that the fleet launches all On-Demand Instances into a single
* Availability Zone. Supported only for fleets of type instant.
Indicates that the fleet launches all On-Demand Instances into a single
* Availability Zone. Supported only for fleets of type instant.
Indicates that the fleet launches all On-Demand Instances into a single
* Availability Zone. Supported only for fleets of type instant.
The minimum target capacity for On-Demand Instances in the fleet. If the * minimum target capacity is not reached, the fleet launches no instances.
*/ inline int GetMinTargetCapacity() const{ return m_minTargetCapacity; } /** *The minimum target capacity for On-Demand Instances in the fleet. If the * minimum target capacity is not reached, the fleet launches no instances.
*/ inline bool MinTargetCapacityHasBeenSet() const { return m_minTargetCapacityHasBeenSet; } /** *The minimum target capacity for On-Demand Instances in the fleet. If the * minimum target capacity is not reached, the fleet launches no instances.
*/ inline void SetMinTargetCapacity(int value) { m_minTargetCapacityHasBeenSet = true; m_minTargetCapacity = value; } /** *The minimum target capacity for On-Demand Instances in the fleet. If the * minimum target capacity is not reached, the fleet launches no instances.
*/ inline OnDemandOptionsRequest& WithMinTargetCapacity(int value) { SetMinTargetCapacity(value); return *this;} /** *The maximum amount per hour for On-Demand Instances that you're willing to * pay.
*/ inline const Aws::String& GetMaxTotalPrice() const{ return m_maxTotalPrice; } /** *The maximum amount per hour for On-Demand Instances that you're willing to * pay.
*/ inline bool MaxTotalPriceHasBeenSet() const { return m_maxTotalPriceHasBeenSet; } /** *The maximum amount per hour for On-Demand Instances that you're willing to * pay.
*/ inline void SetMaxTotalPrice(const Aws::String& value) { m_maxTotalPriceHasBeenSet = true; m_maxTotalPrice = value; } /** *The maximum amount per hour for On-Demand Instances that you're willing to * pay.
*/ inline void SetMaxTotalPrice(Aws::String&& value) { m_maxTotalPriceHasBeenSet = true; m_maxTotalPrice = std::move(value); } /** *The maximum amount per hour for On-Demand Instances that you're willing to * pay.
*/ inline void SetMaxTotalPrice(const char* value) { m_maxTotalPriceHasBeenSet = true; m_maxTotalPrice.assign(value); } /** *The maximum amount per hour for On-Demand Instances that you're willing to * pay.
*/ inline OnDemandOptionsRequest& WithMaxTotalPrice(const Aws::String& value) { SetMaxTotalPrice(value); return *this;} /** *The maximum amount per hour for On-Demand Instances that you're willing to * pay.
*/ inline OnDemandOptionsRequest& WithMaxTotalPrice(Aws::String&& value) { SetMaxTotalPrice(std::move(value)); return *this;} /** *The maximum amount per hour for On-Demand Instances that you're willing to * pay.
*/ inline OnDemandOptionsRequest& WithMaxTotalPrice(const char* value) { SetMaxTotalPrice(value); return *this;} private: FleetOnDemandAllocationStrategy m_allocationStrategy; bool m_allocationStrategyHasBeenSet; CapacityReservationOptionsRequest m_capacityReservationOptions; bool m_capacityReservationOptionsHasBeenSet; bool m_singleInstanceType; bool m_singleInstanceTypeHasBeenSet; bool m_singleAvailabilityZone; bool m_singleAvailabilityZoneHasBeenSet; int m_minTargetCapacity; bool m_minTargetCapacityHasBeenSet; Aws::String m_maxTotalPrice; bool m_maxTotalPriceHasBeenSet; }; } // namespace Model } // namespace EC2 } // namespace Aws