Class GetUnfilteredTableMetadataRequest

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<GetUnfilteredTableMetadataRequest.Builder,GetUnfilteredTableMetadataRequest>

@Generated("software.amazon.awssdk:codegen") public final class GetUnfilteredTableMetadataRequest extends GlueRequest implements ToCopyableBuilder<GetUnfilteredTableMetadataRequest.Builder,GetUnfilteredTableMetadataRequest>
  • Method Details

    • region

      public final String region()

      Specified only if the base tables belong to a different Amazon Web Services Region.

      Returns:
      Specified only if the base tables belong to a different Amazon Web Services Region.
    • catalogId

      public final String catalogId()

      The catalog ID where the table resides.

      Returns:
      The catalog ID where the table resides.
    • databaseName

      public final String databaseName()

      (Required) Specifies the name of a database that contains the table.

      Returns:
      (Required) Specifies the name of a database that contains the table.
    • name

      public final String name()

      (Required) Specifies the name of a table for which you are requesting metadata.

      Returns:
      (Required) Specifies the name of a table for which you are requesting metadata.
    • auditContext

      public final AuditContext auditContext()

      A structure containing Lake Formation audit context information.

      Returns:
      A structure containing Lake Formation audit context information.
    • supportedPermissionTypes

      public final List<PermissionType> supportedPermissionTypes()

      Indicates the level of filtering a third-party analytical engine is capable of enforcing when calling the GetUnfilteredTableMetadata API operation. Accepted values are:

      • COLUMN_PERMISSION - Column permissions ensure that users can access only specific columns in the table. If there are particular columns contain sensitive data, data lake administrators can define column filters that exclude access to specific columns.

      • CELL_FILTER_PERMISSION - Cell-level filtering combines column filtering (include or exclude columns) and row filter expressions to restrict access to individual elements in the table.

      • NESTED_PERMISSION - Nested permissions combines cell-level filtering and nested column filtering to restrict access to columns and/or nested columns in specific rows based on row filter expressions.

      • NESTED_CELL_PERMISSION - Nested cell permissions combines nested permission with nested cell-level filtering. This allows different subsets of nested columns to be restricted based on an array of row filter expressions.

      Note: Each of these permission types follows a hierarchical order where each subsequent permission type includes all permission of the previous type.

      Important: If you provide a supported permission type that doesn't match the user's level of permissions on the table, then Lake Formation raises an exception. For example, if the third-party engine calling the GetUnfilteredTableMetadata operation can enforce only column-level filtering, and the user has nested cell filtering applied on the table, Lake Formation throws an exception, and will not return unfiltered table metadata and data access credentials.

      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 hasSupportedPermissionTypes() method.

      Returns:
      Indicates the level of filtering a third-party analytical engine is capable of enforcing when calling the GetUnfilteredTableMetadata API operation. Accepted values are:

      • COLUMN_PERMISSION - Column permissions ensure that users can access only specific columns in the table. If there are particular columns contain sensitive data, data lake administrators can define column filters that exclude access to specific columns.

      • CELL_FILTER_PERMISSION - Cell-level filtering combines column filtering (include or exclude columns) and row filter expressions to restrict access to individual elements in the table.

      • NESTED_PERMISSION - Nested permissions combines cell-level filtering and nested column filtering to restrict access to columns and/or nested columns in specific rows based on row filter expressions.

      • NESTED_CELL_PERMISSION - Nested cell permissions combines nested permission with nested cell-level filtering. This allows different subsets of nested columns to be restricted based on an array of row filter expressions.

      Note: Each of these permission types follows a hierarchical order where each subsequent permission type includes all permission of the previous type.

      Important: If you provide a supported permission type that doesn't match the user's level of permissions on the table, then Lake Formation raises an exception. For example, if the third-party engine calling the GetUnfilteredTableMetadata operation can enforce only column-level filtering, and the user has nested cell filtering applied on the table, Lake Formation throws an exception, and will not return unfiltered table metadata and data access credentials.

    • hasSupportedPermissionTypes

      public final boolean hasSupportedPermissionTypes()
      For responses, this returns true if the service returned a value for the SupportedPermissionTypes 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.
    • supportedPermissionTypesAsStrings

      public final List<String> supportedPermissionTypesAsStrings()

      Indicates the level of filtering a third-party analytical engine is capable of enforcing when calling the GetUnfilteredTableMetadata API operation. Accepted values are:

      • COLUMN_PERMISSION - Column permissions ensure that users can access only specific columns in the table. If there are particular columns contain sensitive data, data lake administrators can define column filters that exclude access to specific columns.

      • CELL_FILTER_PERMISSION - Cell-level filtering combines column filtering (include or exclude columns) and row filter expressions to restrict access to individual elements in the table.

      • NESTED_PERMISSION - Nested permissions combines cell-level filtering and nested column filtering to restrict access to columns and/or nested columns in specific rows based on row filter expressions.

      • NESTED_CELL_PERMISSION - Nested cell permissions combines nested permission with nested cell-level filtering. This allows different subsets of nested columns to be restricted based on an array of row filter expressions.

      Note: Each of these permission types follows a hierarchical order where each subsequent permission type includes all permission of the previous type.

      Important: If you provide a supported permission type that doesn't match the user's level of permissions on the table, then Lake Formation raises an exception. For example, if the third-party engine calling the GetUnfilteredTableMetadata operation can enforce only column-level filtering, and the user has nested cell filtering applied on the table, Lake Formation throws an exception, and will not return unfiltered table metadata and data access credentials.

      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 hasSupportedPermissionTypes() method.

      Returns:
      Indicates the level of filtering a third-party analytical engine is capable of enforcing when calling the GetUnfilteredTableMetadata API operation. Accepted values are:

      • COLUMN_PERMISSION - Column permissions ensure that users can access only specific columns in the table. If there are particular columns contain sensitive data, data lake administrators can define column filters that exclude access to specific columns.

      • CELL_FILTER_PERMISSION - Cell-level filtering combines column filtering (include or exclude columns) and row filter expressions to restrict access to individual elements in the table.

      • NESTED_PERMISSION - Nested permissions combines cell-level filtering and nested column filtering to restrict access to columns and/or nested columns in specific rows based on row filter expressions.

      • NESTED_CELL_PERMISSION - Nested cell permissions combines nested permission with nested cell-level filtering. This allows different subsets of nested columns to be restricted based on an array of row filter expressions.

      Note: Each of these permission types follows a hierarchical order where each subsequent permission type includes all permission of the previous type.

      Important: If you provide a supported permission type that doesn't match the user's level of permissions on the table, then Lake Formation raises an exception. For example, if the third-party engine calling the GetUnfilteredTableMetadata operation can enforce only column-level filtering, and the user has nested cell filtering applied on the table, Lake Formation throws an exception, and will not return unfiltered table metadata and data access credentials.

    • parentResourceArn

      public final String parentResourceArn()

      The resource ARN of the view.

      Returns:
      The resource ARN of the view.
    • rootResourceArn

      public final String rootResourceArn()

      The resource ARN of the root view in a chain of nested views.

      Returns:
      The resource ARN of the root view in a chain of nested views.
    • supportedDialect

      public final SupportedDialect supportedDialect()

      A structure specifying the dialect and dialect version used by the query engine.

      Returns:
      A structure specifying the dialect and dialect version used by the query engine.
    • permissions

      public final List<Permission> permissions()

      The Lake Formation data permissions of the caller on the table. Used to authorize the call when no view context is found.

      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 hasPermissions() method.

      Returns:
      The Lake Formation data permissions of the caller on the table. Used to authorize the call when no view context is found.
    • hasPermissions

      public final boolean hasPermissions()
      For responses, this returns true if the service returned a value for the Permissions 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.
    • permissionsAsStrings

      public final List<String> permissionsAsStrings()

      The Lake Formation data permissions of the caller on the table. Used to authorize the call when no view context is found.

      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 hasPermissions() method.

      Returns:
      The Lake Formation data permissions of the caller on the table. Used to authorize the call when no view context is found.
    • querySessionContext

      public final QuerySessionContext querySessionContext()

      A structure used as a protocol between query engines and Lake Formation or Glue. Contains both a Lake Formation generated authorization identifier and information from the request's authorization context.

      Returns:
      A structure used as a protocol between query engines and Lake Formation or Glue. Contains both a Lake Formation generated authorization identifier and information from the request's authorization context.
    • 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<GetUnfilteredTableMetadataRequest.Builder,GetUnfilteredTableMetadataRequest>
      Specified by:
      toBuilder in class GlueRequest
      Returns:
      a builder for type T
    • builder

    • serializableBuilderClass

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

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

      public final boolean equals(Object obj)
      Overrides:
      equals in class AwsRequest
    • 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)
      Description copied from class: SdkRequest
      Used to retrieve the value of a field from any class that extends SdkRequest. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkRequest
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • 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.