Class KbTemplateConfiguration

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

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

The template configuration for a knowledge base. This object contains connector-specific configuration that defines how data is crawled and indexed.

See Also:
  • Method Details

    • template

      public final Document template()

      The connector configuration for the knowledge base data source. The structure depends on the connector type of the data source referenced by DataSourceArn.

      The template must be a JSON object. The required fields vary by connector type:

      • Amazon S3 (S3V2) – Requires connectionConfiguration with bucketName . Supports filterConfiguration for inclusion and exclusion prefixes and patterns. Supports accessControlConfiguration and deletionProtectionConfiguration.

      • Google Drive (GOOGLEDRIVEV3) – Requires connectionConfiguration with authType set to SERVICE_ACCOUNT. Supports dataEntityConfiguration with crawlMyDrive, crawlSharedWithMe, and crawlSharedDrives.

      • OneDrive (ONEDRIVEV3) – Requires authType at the template root level set to TWO_LEGGED_OAUTH. Requires connectionConfiguration with tenantId in UUID format. Supports dataEntityConfiguration with crawlPersonalDrives and crawlSharedWithMe.

      • SharePoint (SHAREPOINTV3) – Requires connectionConfiguration with tenantId in UUID format. Supports dataEntityConfiguration with siteUrls, crawlFiles, and crawlPages.

      • Web Crawler (WEBCRAWLERV3) – Requires connectionConfiguration with seedUrls or siteMapUrls (mutually exclusive) and authType. Supports crawlConfiguration for crawl depth, rate limits, and scope. Supports filterConfiguration for file size limits and URL patterns. Valid values for authType: NO_AUTH, BASIC_AUTH, FORM, SAML.

      The optional deletionProtectionConfiguration object is supported by all connector types. It contains enableDeletionProtection and deletionProtectionThreshold.

      Returns:
      The connector configuration for the knowledge base data source. The structure depends on the connector type of the data source referenced by DataSourceArn.

      The template must be a JSON object. The required fields vary by connector type:

      • Amazon S3 (S3V2) – Requires connectionConfiguration with bucketName. Supports filterConfiguration for inclusion and exclusion prefixes and patterns. Supports accessControlConfiguration and deletionProtectionConfiguration.

      • Google Drive (GOOGLEDRIVEV3) – Requires connectionConfiguration with authType set to SERVICE_ACCOUNT. Supports dataEntityConfiguration with crawlMyDrive, crawlSharedWithMe, and crawlSharedDrives.

      • OneDrive (ONEDRIVEV3) – Requires authType at the template root level set to TWO_LEGGED_OAUTH. Requires connectionConfiguration with tenantId in UUID format. Supports dataEntityConfiguration with crawlPersonalDrives and crawlSharedWithMe.

      • SharePoint (SHAREPOINTV3) – Requires connectionConfiguration with tenantId in UUID format. Supports dataEntityConfiguration with siteUrls, crawlFiles, and crawlPages.

      • Web Crawler (WEBCRAWLERV3) – Requires connectionConfiguration with seedUrls or siteMapUrls (mutually exclusive) and authType. Supports crawlConfiguration for crawl depth, rate limits, and scope. Supports filterConfiguration for file size limits and URL patterns. Valid values for authType: NO_AUTH, BASIC_AUTH, FORM, SAML.

      The optional deletionProtectionConfiguration object is supported by all connector types. It contains enableDeletionProtection and deletionProtectionThreshold.

    • toBuilder

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

      public static KbTemplateConfiguration.Builder builder()
    • serializableBuilderClass

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