Class IcebergSortField

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

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

Defines a single field within an Iceberg sort order specification, including the source field, transformation, sort direction, and null value ordering.

See Also:
  • Method Details

    • sourceId

      public final Integer sourceId()

      The identifier of the source field from the table schema that this sort field is based on.

      Returns:
      The identifier of the source field from the table schema that this sort field is based on.
    • transform

      public final String transform()

      The transformation function applied to the source field before sorting, such as identity, bucket, or truncate.

      Returns:
      The transformation function applied to the source field before sorting, such as identity, bucket, or truncate.
    • direction

      public final IcebergSortDirection direction()

      The sort direction for this field, either ascending or descending.

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

      Returns:
      The sort direction for this field, either ascending or descending.
      See Also:
    • directionAsString

      public final String directionAsString()

      The sort direction for this field, either ascending or descending.

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

      Returns:
      The sort direction for this field, either ascending or descending.
      See Also:
    • nullOrder

      public final IcebergNullOrder nullOrder()

      The ordering behavior for null values in this field, specifying whether nulls should appear first or last in the sort order.

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

      Returns:
      The ordering behavior for null values in this field, specifying whether nulls should appear first or last in the sort order.
      See Also:
    • nullOrderAsString

      public final String nullOrderAsString()

      The ordering behavior for null values in this field, specifying whether nulls should appear first or last in the sort order.

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

      Returns:
      The ordering behavior for null values in this field, specifying whether nulls should appear first or last in the sort order.
      See Also:
    • toBuilder

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

      public static IcebergSortField.Builder builder()
    • serializableBuilderClass

      public static Class<? extends IcebergSortField.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.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.