Class CfnIndex.Builder

java.lang.Object
software.amazon.awscdk.services.kendra.CfnIndex.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnIndex>
Enclosing class:
CfnIndex

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

    • create

      @Stability(Stable) public static CfnIndex.Builder create(Construct scope, String id)
      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      Returns:
      a new instance of CfnIndex.Builder.
    • edition

      @Stability(Stable) public CfnIndex.Builder edition(String edition)
      Indicates whether the index is a Enterprise Edition index or a Developer Edition index.

      Valid values are DEVELOPER_EDITION and ENTERPRISE_EDITION .

      Parameters:
      edition - Indicates whether the index is a Enterprise Edition index or a Developer Edition index. This parameter is required.
      Returns:
      this
    • name

      @Stability(Stable) public CfnIndex.Builder name(String name)
      The name of the index.

      Parameters:
      name - The name of the index. This parameter is required.
      Returns:
      this
    • roleArn

      @Stability(Stable) public CfnIndex.Builder roleArn(String roleArn)
      An IAM role that gives Amazon Kendra permissions to access your Amazon CloudWatch logs and metrics.

      This is also the role used when you use the BatchPutDocument operation to index documents from an Amazon S3 bucket.

      Parameters:
      roleArn - An IAM role that gives Amazon Kendra permissions to access your Amazon CloudWatch logs and metrics. This parameter is required.
      Returns:
      this
    • capacityUnits

      @Stability(Stable) public CfnIndex.Builder capacityUnits(IResolvable capacityUnits)
      AWS::Kendra::Index.CapacityUnits.

      Parameters:
      capacityUnits - AWS::Kendra::Index.CapacityUnits. This parameter is required.
      Returns:
      this
    • capacityUnits

      @Stability(Stable) public CfnIndex.Builder capacityUnits(CfnIndex.CapacityUnitsConfigurationProperty capacityUnits)
      AWS::Kendra::Index.CapacityUnits.

      Parameters:
      capacityUnits - AWS::Kendra::Index.CapacityUnits. This parameter is required.
      Returns:
      this
    • description

      @Stability(Stable) public CfnIndex.Builder description(String description)
      A description for the index.

      Parameters:
      description - A description for the index. This parameter is required.
      Returns:
      this
    • documentMetadataConfigurations

      @Stability(Stable) public CfnIndex.Builder documentMetadataConfigurations(IResolvable documentMetadataConfigurations)
      Specifies the properties of an index field.

      You can add either a custom or a built-in field. You can add and remove built-in fields at any time. When a built-in field is removed it's configuration reverts to the default for the field. Custom fields can't be removed from an index after they are added.

      Parameters:
      documentMetadataConfigurations - Specifies the properties of an index field. This parameter is required.
      Returns:
      this
    • documentMetadataConfigurations

      @Stability(Stable) public CfnIndex.Builder documentMetadataConfigurations(List<? extends Object> documentMetadataConfigurations)
      Specifies the properties of an index field.

      You can add either a custom or a built-in field. You can add and remove built-in fields at any time. When a built-in field is removed it's configuration reverts to the default for the field. Custom fields can't be removed from an index after they are added.

      Parameters:
      documentMetadataConfigurations - Specifies the properties of an index field. This parameter is required.
      Returns:
      this
    • serverSideEncryptionConfiguration

      @Stability(Stable) public CfnIndex.Builder serverSideEncryptionConfiguration(IResolvable serverSideEncryptionConfiguration)
      The identifier of the AWS KMS customer managed key (CMK) to use to encrypt data indexed by Amazon Kendra.

      Amazon Kendra doesn't support asymmetric CMKs.

      Parameters:
      serverSideEncryptionConfiguration - The identifier of the AWS KMS customer managed key (CMK) to use to encrypt data indexed by Amazon Kendra. This parameter is required.
      Returns:
      this
    • serverSideEncryptionConfiguration

      @Stability(Stable) public CfnIndex.Builder serverSideEncryptionConfiguration(CfnIndex.ServerSideEncryptionConfigurationProperty serverSideEncryptionConfiguration)
      The identifier of the AWS KMS customer managed key (CMK) to use to encrypt data indexed by Amazon Kendra.

      Amazon Kendra doesn't support asymmetric CMKs.

      Parameters:
      serverSideEncryptionConfiguration - The identifier of the AWS KMS customer managed key (CMK) to use to encrypt data indexed by Amazon Kendra. This parameter is required.
      Returns:
      this
    • tags

      @Stability(Stable) public CfnIndex.Builder tags(List<? extends CfnTag> tags)
      An array of key-value pairs to apply to this resource.

      For more information, see Tag .

      Parameters:
      tags - An array of key-value pairs to apply to this resource. This parameter is required.
      Returns:
      this
    • userContextPolicy

      @Stability(Stable) public CfnIndex.Builder userContextPolicy(String userContextPolicy)
      The user context policy.

      ATTRIBUTE_FILTER

      • All indexed content is searchable and displayable for all users. If you want to filter search results on user context, you can use the attribute filters of _user_id and _group_ids or you can provide user and group information in UserContext .

      USER_TOKEN

      • Enables token-based user access control to filter search results on user context. All documents with no access control and all documents accessible to the user will be searchable and displayable.

      Parameters:
      userContextPolicy - The user context policy. This parameter is required.
      Returns:
      this
    • userTokenConfigurations

      @Stability(Stable) public CfnIndex.Builder userTokenConfigurations(IResolvable userTokenConfigurations)
      Defines the type of user token used for the index.

      Parameters:
      userTokenConfigurations - Defines the type of user token used for the index. This parameter is required.
      Returns:
      this
    • userTokenConfigurations

      @Stability(Stable) public CfnIndex.Builder userTokenConfigurations(List<? extends Object> userTokenConfigurations)
      Defines the type of user token used for the index.

      Parameters:
      userTokenConfigurations - Defines the type of user token used for the index. This parameter is required.
      Returns:
      this
    • build

      @Stability(Stable) public CfnIndex build()
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnIndex>
      Returns:
      a newly built instance of CfnIndex.