Class CfnDataCatalogProps.Builder

java.lang.Object
software.amazon.awscdk.services.athena.CfnDataCatalogProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnDataCatalogProps>
Enclosing interface:
CfnDataCatalogProps

@Stability(Stable) public static final class CfnDataCatalogProps.Builder extends Object implements software.amazon.jsii.Builder<CfnDataCatalogProps>
A builder for CfnDataCatalogProps
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • name

      @Stability(Stable) public CfnDataCatalogProps.Builder name(String name)
      Parameters:
      name - The name of the data catalog. This parameter is required. The catalog name must be unique for the AWS account and can use a maximum of 128 alphanumeric, underscore, at sign, or hyphen characters.
      Returns:
      this
    • type

      @Stability(Stable) public CfnDataCatalogProps.Builder type(String type)
      Parameters:
      type - The type of data catalog: LAMBDA for a federated catalog, GLUE for AWS Glue Catalog, or HIVE for an external hive metastore. This parameter is required.
      Returns:
      this
    • description

      @Stability(Stable) public CfnDataCatalogProps.Builder description(String description)
      Parameters:
      description - A description of the data catalog.
      Returns:
      this
    • parameters

      @Stability(Stable) public CfnDataCatalogProps.Builder parameters(IResolvable parameters)
      Parameters:
      parameters - Specifies the Lambda function or functions to use for the data catalog. The mapping used depends on the catalog type.

      • The HIVE data catalog type uses the following syntax. The metadata-function parameter is required. The sdk-version parameter is optional and defaults to the currently supported version.

      metadata-function= *lambda_arn* , sdk-version= *version_number*

      • The LAMBDA data catalog type uses one of the following sets of required parameters, but not both.
      • When one Lambda function processes metadata and another Lambda function reads data, the following syntax is used. Both parameters are required.

      metadata-function= *lambda_arn* , record-function= *lambda_arn*

      • A composite Lambda function that processes both metadata and data uses the following syntax.

      function= *lambda_arn*

      • The GLUE type takes a catalog ID parameter and is required. The *catalog_id* is the account ID of the AWS account to which the Glue catalog belongs.

      catalog-id= *catalog_id*

      • The GLUE data catalog type also applies to the default AwsDataCatalog that already exists in your account, of which you can have only one and cannot modify.
      Returns:
      this
    • parameters

      @Stability(Stable) public CfnDataCatalogProps.Builder parameters(Map<String,String> parameters)
      Parameters:
      parameters - Specifies the Lambda function or functions to use for the data catalog. The mapping used depends on the catalog type.

      • The HIVE data catalog type uses the following syntax. The metadata-function parameter is required. The sdk-version parameter is optional and defaults to the currently supported version.

      metadata-function= *lambda_arn* , sdk-version= *version_number*

      • The LAMBDA data catalog type uses one of the following sets of required parameters, but not both.
      • When one Lambda function processes metadata and another Lambda function reads data, the following syntax is used. Both parameters are required.

      metadata-function= *lambda_arn* , record-function= *lambda_arn*

      • A composite Lambda function that processes both metadata and data uses the following syntax.

      function= *lambda_arn*

      • The GLUE type takes a catalog ID parameter and is required. The *catalog_id* is the account ID of the AWS account to which the Glue catalog belongs.

      catalog-id= *catalog_id*

      • The GLUE data catalog type also applies to the default AwsDataCatalog that already exists in your account, of which you can have only one and cannot modify.
      Returns:
      this
    • tags

      @Stability(Stable) public CfnDataCatalogProps.Builder tags(List<? extends CfnTag> tags)
      Parameters:
      tags - The tags (key-value pairs) to associate with this resource.
      Returns:
      this
    • build

      @Stability(Stable) public CfnDataCatalogProps build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnDataCatalogProps>
      Returns:
      a new instance of CfnDataCatalogProps
      Throws:
      NullPointerException - if any required attribute was not provided