All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.awsnative.kendra.kotlin.outputs.DataSourceSharePointConfiguration.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 0.122.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.kendra.kotlin.outputs

import com.pulumi.awsnative.kendra.kotlin.enums.DataSourceSharePointConfigurationSharePointVersion
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 * SharePoint configuration
 * @property crawlAttachments `TRUE` to index document attachments.
 * @property disableLocalGroups `TRUE` to disable local groups information.
 * @property documentTitleFieldName The Microsoft SharePoint attribute field that contains the title of the document.
 * @property exclusionPatterns A list of regular expression patterns. Documents that match the patterns are excluded from the index. Documents that don't match the patterns are included in the index. If a document matches both an exclusion pattern and an inclusion pattern, the document is not included in the index.
 * The regex is applied to the display URL of the SharePoint document.
 * @property fieldMappings A list of `DataSourceToIndexFieldMapping` objects that map Microsoft SharePoint attributes or fields to Amazon Kendra index fields. You must first create the index fields using the [UpdateIndex](https://docs.aws.amazon.com/kendra/latest/dg/API_UpdateIndex.html) operation before you map SharePoint attributes. For more information, see [Mapping Data Source Fields](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html) .
 * @property inclusionPatterns A list of regular expression patterns to include certain documents in your SharePoint. Documents that match the patterns are included in the index. Documents that don't match the patterns are excluded from the index. If a document matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the document isn't included in the index.
 * The regex applies to the display URL of the SharePoint document.
 * @property secretArn The Amazon Resource Name (ARN) of an AWS Secrets Manager secret that contains the user name and password required to connect to the SharePoint instance. For more information, see [Microsoft SharePoint](https://docs.aws.amazon.com/kendra/latest/dg/data-source-sharepoint.html) .
 * @property sharePointVersion The version of Microsoft SharePoint that you use.
 * @property sslCertificateS3Path Information required to find a specific file in an Amazon S3 bucket.
 * @property urls The Microsoft SharePoint site URLs for the documents you want to index.
 * @property useChangeLog `TRUE` to use the SharePoint change log to determine which documents require updating in the index. Depending on the change log's size, it may take longer for Amazon Kendra to use the change log than to scan all of your documents in SharePoint.
 * @property vpcConfiguration Provides information for connecting to an Amazon VPC.
 */
public data class DataSourceSharePointConfiguration(
    public val crawlAttachments: Boolean? = null,
    public val disableLocalGroups: Boolean? = null,
    public val documentTitleFieldName: String? = null,
    public val exclusionPatterns: List? = null,
    public val fieldMappings: List? = null,
    public val inclusionPatterns: List? = null,
    public val secretArn: String,
    public val sharePointVersion: DataSourceSharePointConfigurationSharePointVersion,
    public val sslCertificateS3Path: DataSourceS3Path? = null,
    public val urls: List,
    public val useChangeLog: Boolean? = null,
    public val vpcConfiguration: DataSourceVpcConfiguration? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.kendra.outputs.DataSourceSharePointConfiguration): DataSourceSharePointConfiguration = DataSourceSharePointConfiguration(
            crawlAttachments = javaType.crawlAttachments().map({ args0 -> args0 }).orElse(null),
            disableLocalGroups = javaType.disableLocalGroups().map({ args0 -> args0 }).orElse(null),
            documentTitleFieldName = javaType.documentTitleFieldName().map({ args0 -> args0 }).orElse(null),
            exclusionPatterns = javaType.exclusionPatterns().map({ args0 -> args0 }),
            fieldMappings = javaType.fieldMappings().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.kendra.kotlin.outputs.DataSourceToIndexFieldMapping.Companion.toKotlin(args0)
                })
            }),
            inclusionPatterns = javaType.inclusionPatterns().map({ args0 -> args0 }),
            secretArn = javaType.secretArn(),
            sharePointVersion = javaType.sharePointVersion().let({ args0 ->
                com.pulumi.awsnative.kendra.kotlin.enums.DataSourceSharePointConfigurationSharePointVersion.Companion.toKotlin(args0)
            }),
            sslCertificateS3Path = javaType.sslCertificateS3Path().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.kendra.kotlin.outputs.DataSourceS3Path.Companion.toKotlin(args0)
                })
            }).orElse(null),
            urls = javaType.urls().map({ args0 -> args0 }),
            useChangeLog = javaType.useChangeLog().map({ args0 -> args0 }).orElse(null),
            vpcConfiguration = javaType.vpcConfiguration().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.kendra.kotlin.outputs.DataSourceVpcConfiguration.Companion.toKotlin(args0)
                })
            }).orElse(null),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy