Class AwsEcsServicePlacementStrategiesDetails

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

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

A placement strategy that determines how to place the tasks for the service.

See Also:
  • Method Details

    • field

      public final String field()

      The field to apply the placement strategy against.

      For the spread placement strategy, valid values are instanceId (or host, which has the same effect), or any platform or custom attribute that is applied to a container instance, such as attribute:ecs.availability-zone.

      For the binpack placement strategy, valid values are cpu and memory.

      For the random placement strategy, this attribute is not used.

      Returns:
      The field to apply the placement strategy against.

      For the spread placement strategy, valid values are instanceId (or host, which has the same effect), or any platform or custom attribute that is applied to a container instance, such as attribute:ecs.availability-zone.

      For the binpack placement strategy, valid values are cpu and memory.

      For the random placement strategy, this attribute is not used.

    • type

      public final String type()

      The type of placement strategy.

      The random placement strategy randomly places tasks on available candidates.

      The spread placement strategy spreads placement across available candidates evenly based on the value of Field.

      The binpack strategy places tasks on available candidates that have the least available amount of the resource that is specified in Field.

      Valid values: random | spread | binpack

      Returns:
      The type of placement strategy.

      The random placement strategy randomly places tasks on available candidates.

      The spread placement strategy spreads placement across available candidates evenly based on the value of Field.

      The binpack strategy places tasks on available candidates that have the least available amount of the resource that is specified in Field.

      Valid values: random | spread | binpack

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

    • serializableBuilderClass

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