Class SpotMarketOptions

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

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

The options for Spot Instances.

See Also:
  • Method Details

    • maxPrice

      public final String maxPrice()

      The maximum hourly price that you're willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

      If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

      Returns:
      The maximum hourly price that you're willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

      If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

    • spotInstanceType

      public final SpotInstanceType spotInstanceType()

      The Spot Instance request type. For RunInstances, persistent Spot Instance requests are only supported when the instance interruption behavior is either hibernate or stop.

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

      Returns:
      The Spot Instance request type. For RunInstances, persistent Spot Instance requests are only supported when the instance interruption behavior is either hibernate or stop.
      See Also:
    • spotInstanceTypeAsString

      public final String spotInstanceTypeAsString()

      The Spot Instance request type. For RunInstances, persistent Spot Instance requests are only supported when the instance interruption behavior is either hibernate or stop.

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

      Returns:
      The Spot Instance request type. For RunInstances, persistent Spot Instance requests are only supported when the instance interruption behavior is either hibernate or stop.
      See Also:
    • blockDurationMinutes

      public final Integer blockDurationMinutes()

      Deprecated.

      Returns:
      Deprecated.
    • validUntil

      public final Instant validUntil()

      The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent requests.

      • For a persistent request, the request remains active until the ValidUntil date and time is reached. Otherwise, the request remains active until you cancel it.

      • For a one-time request, ValidUntil is not supported. The request remains active until all instances launch or you cancel the request.

      Returns:
      The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent requests.

      • For a persistent request, the request remains active until the ValidUntil date and time is reached. Otherwise, the request remains active until you cancel it.

      • For a one-time request, ValidUntil is not supported. The request remains active until all instances launch or you cancel the request.

    • instanceInterruptionBehavior

      public final InstanceInterruptionBehavior instanceInterruptionBehavior()

      The behavior when a Spot Instance is interrupted.

      If Configured (for HibernationOptions ) is set to true, the InstanceInterruptionBehavior parameter is automatically set to hibernate. If you set it to stop or terminate, you'll get an error.

      If Configured (for HibernationOptions ) is set to false or null, the InstanceInterruptionBehavior parameter is automatically set to terminate. You can also set it to stop or hibernate.

      For more information, see Interruption behavior in the Amazon EC2 User Guide.

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

      Returns:
      The behavior when a Spot Instance is interrupted.

      If Configured (for HibernationOptions ) is set to true, the InstanceInterruptionBehavior parameter is automatically set to hibernate. If you set it to stop or terminate, you'll get an error.

      If Configured (for HibernationOptions ) is set to false or null, the InstanceInterruptionBehavior parameter is automatically set to terminate. You can also set it to stop or hibernate.

      For more information, see Interruption behavior in the Amazon EC2 User Guide.

      See Also:
    • instanceInterruptionBehaviorAsString

      public final String instanceInterruptionBehaviorAsString()

      The behavior when a Spot Instance is interrupted.

      If Configured (for HibernationOptions ) is set to true, the InstanceInterruptionBehavior parameter is automatically set to hibernate. If you set it to stop or terminate, you'll get an error.

      If Configured (for HibernationOptions ) is set to false or null, the InstanceInterruptionBehavior parameter is automatically set to terminate. You can also set it to stop or hibernate.

      For more information, see Interruption behavior in the Amazon EC2 User Guide.

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

      Returns:
      The behavior when a Spot Instance is interrupted.

      If Configured (for HibernationOptions ) is set to true, the InstanceInterruptionBehavior parameter is automatically set to hibernate. If you set it to stop or terminate, you'll get an error.

      If Configured (for HibernationOptions ) is set to false or null, the InstanceInterruptionBehavior parameter is automatically set to terminate. You can also set it to stop or hibernate.

      For more information, see Interruption behavior in the Amazon EC2 User Guide.

      See Also:
    • toBuilder

      public SpotMarketOptions.Builder 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<SpotMarketOptions.Builder,SpotMarketOptions>
      Returns:
      a builder for type T
    • builder

      public static SpotMarketOptions.Builder builder()
    • serializableBuilderClass

      public static Class<? extends SpotMarketOptions.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.