Class TargetCapacitySpecificationRequest

java.lang.Object
software.amazon.awssdk.services.ec2.model.TargetCapacitySpecificationRequest
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<TargetCapacitySpecificationRequest.Builder,TargetCapacitySpecificationRequest>

@Generated("software.amazon.awssdk:codegen") public final class TargetCapacitySpecificationRequest extends Object implements SdkPojo, Serializable, ToCopyableBuilder<TargetCapacitySpecificationRequest.Builder,TargetCapacitySpecificationRequest>

The number of units to request. You can choose to set the target capacity as the number of instances. Or you can set the target capacity to a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain, you can specify a target capacity of 0 and add capacity later.

You can use the On-Demand Instance MaxTotalPrice parameter, the Spot Instance MaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, EC2 Fleet will launch instances until it reaches the maximum amount that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn't met the target capacity. The MaxTotalPrice parameters are located in OnDemandOptionsRequest and SpotOptionsRequest.

See Also:
  • Method Details

    • totalTargetCapacity

      public final Integer totalTargetCapacity()

      The number of units to request, filled using the default target capacity type.

      Returns:
      The number of units to request, filled using the default target capacity type.
    • onDemandTargetCapacity

      public final Integer onDemandTargetCapacity()

      The number of On-Demand units to request.

      Returns:
      The number of On-Demand units to request.
    • spotTargetCapacity

      public final Integer spotTargetCapacity()

      The number of Spot units to request.

      Returns:
      The number of Spot units to request.
    • defaultTargetCapacityType

      public final DefaultTargetCapacityType defaultTargetCapacityType()

      The default target capacity type.

      If the service returns an enum value that is not available in the current SDK version, defaultTargetCapacityType will return DefaultTargetCapacityType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from defaultTargetCapacityTypeAsString().

      Returns:
      The default target capacity type.
      See Also:
    • defaultTargetCapacityTypeAsString

      public final String defaultTargetCapacityTypeAsString()

      The default target capacity type.

      If the service returns an enum value that is not available in the current SDK version, defaultTargetCapacityType will return DefaultTargetCapacityType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from defaultTargetCapacityTypeAsString().

      Returns:
      The default target capacity type.
      See Also:
    • targetCapacityUnitType

      public final TargetCapacityUnitType targetCapacityUnitType()

      The unit for the target capacity. You can specify this parameter only when using attributed-based instance type selection.

      Default: units (the number of instances)

      If the service returns an enum value that is not available in the current SDK version, targetCapacityUnitType will return TargetCapacityUnitType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from targetCapacityUnitTypeAsString().

      Returns:
      The unit for the target capacity. You can specify this parameter only when using attributed-based instance type selection.

      Default: units (the number of instances)

      See Also:
    • targetCapacityUnitTypeAsString

      public final String targetCapacityUnitTypeAsString()

      The unit for the target capacity. You can specify this parameter only when using attributed-based instance type selection.

      Default: units (the number of instances)

      If the service returns an enum value that is not available in the current SDK version, targetCapacityUnitType will return TargetCapacityUnitType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from targetCapacityUnitTypeAsString().

      Returns:
      The unit for the target capacity. You can specify this parameter only when using attributed-based instance type selection.

      Default: units (the number of instances)

      See Also:
    • toBuilder

      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<TargetCapacitySpecificationRequest.Builder,TargetCapacitySpecificationRequest>
      Returns:
      a builder for type T
    • builder

    • serializableBuilderClass

      public static Class<? extends TargetCapacitySpecificationRequest.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.