Class TableInput

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

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

A structure used to define a table.

See Also:
  • Method Details

    • name

      public final String name()

      The table name. For Hive compatibility, this is folded to lowercase when it is stored.

      Returns:
      The table name. For Hive compatibility, this is folded to lowercase when it is stored.
    • description

      public final String description()

      A description of the table.

      Returns:
      A description of the table.
    • owner

      public final String owner()

      The table owner. Included for Apache Hive compatibility. Not used in the normal course of Glue operations.

      Returns:
      The table owner. Included for Apache Hive compatibility. Not used in the normal course of Glue operations.
    • lastAccessTime

      public final Instant lastAccessTime()

      The last time that the table was accessed.

      Returns:
      The last time that the table was accessed.
    • lastAnalyzedTime

      public final Instant lastAnalyzedTime()

      The last time that column statistics were computed for this table.

      Returns:
      The last time that column statistics were computed for this table.
    • retention

      public final Integer retention()

      The retention time for this table.

      Returns:
      The retention time for this table.
    • storageDescriptor

      public final StorageDescriptor storageDescriptor()

      A storage descriptor containing information about the physical storage of this table.

      Returns:
      A storage descriptor containing information about the physical storage of this table.
    • hasPartitionKeys

      public final boolean hasPartitionKeys()
      For responses, this returns true if the service returned a value for the PartitionKeys property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • partitionKeys

      public final List<Column> partitionKeys()

      A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.

      When you create a table used by Amazon Athena, and you do not specify any partitionKeys, you must at least set the value of partitionKeys to an empty list. For example:

      "PartitionKeys": []

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasPartitionKeys() method.

      Returns:
      A list of columns by which the table is partitioned. Only primitive types are supported as partition keys.

      When you create a table used by Amazon Athena, and you do not specify any partitionKeys, you must at least set the value of partitionKeys to an empty list. For example:

      "PartitionKeys": []

    • viewOriginalText

      public final String viewOriginalText()

      Included for Apache Hive compatibility. Not used in the normal course of Glue operations. If the table is a VIRTUAL_VIEW, certain Athena configuration encoded in base64.

      Returns:
      Included for Apache Hive compatibility. Not used in the normal course of Glue operations. If the table is a VIRTUAL_VIEW, certain Athena configuration encoded in base64.
    • viewExpandedText

      public final String viewExpandedText()

      Included for Apache Hive compatibility. Not used in the normal course of Glue operations.

      Returns:
      Included for Apache Hive compatibility. Not used in the normal course of Glue operations.
    • tableType

      public final String tableType()

      The type of this table. Glue will create tables with the EXTERNAL_TABLE type. Other services, such as Athena, may create tables with additional table types.

      Glue related table types:

      EXTERNAL_TABLE

      Hive compatible attribute - indicates a non-Hive managed table.

      GOVERNED

      Used by Lake Formation. The Glue Data Catalog understands GOVERNED.

      Returns:
      The type of this table. Glue will create tables with the EXTERNAL_TABLE type. Other services, such as Athena, may create tables with additional table types.

      Glue related table types:

      EXTERNAL_TABLE

      Hive compatible attribute - indicates a non-Hive managed table.

      GOVERNED

      Used by Lake Formation. The Glue Data Catalog understands GOVERNED.

    • hasParameters

      public final boolean hasParameters()
      For responses, this returns true if the service returned a value for the Parameters property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • parameters

      public final Map<String,String> parameters()

      These key-value pairs define properties associated with the table.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasParameters() method.

      Returns:
      These key-value pairs define properties associated with the table.
    • targetTable

      public final TableIdentifier targetTable()

      A TableIdentifier structure that describes a target table for resource linking.

      Returns:
      A TableIdentifier structure that describes a target table for resource linking.
    • toBuilder

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

      public static TableInput.Builder builder()
    • serializableBuilderClass

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