Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.kendra.kotlin.inputs
import com.pulumi.awsnative.kendra.inputs.DataSourceWebCrawlerConfigurationArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Double
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
*
* @property authenticationConfiguration Configuration information required to connect to websites using authentication.
* You can connect to websites using basic authentication of user name and password. You use a secret in [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) to store your authentication credentials.
* You must provide the website host name and port number. For example, the host name of https://a.example.com/page1.html is "a.example.com" and the port is 443, the standard port for HTTPS.
* @property crawlDepth The 'depth' or number of levels from the seed level to crawl. For example, the seed URL page is depth 1 and any hyperlinks on this page that are also crawled are depth 2.
* @property maxContentSizePerPageInMegaBytes The maximum size (in MB) of a web page or attachment to crawl.
* Files larger than this size (in MB) are skipped/not crawled.
* The default maximum size of a web page or attachment is set to 50 MB.
* @property maxLinksPerPage The maximum number of URLs on a web page to include when crawling a website. This number is per web page.
* As a website’s web pages are crawled, any URLs the web pages link to are also crawled. URLs on a web page are crawled in order of appearance.
* The default maximum links per page is 100.
* @property maxUrlsPerMinuteCrawlRate The maximum number of URLs crawled per website host per minute.
* A minimum of one URL is required.
* The default maximum number of URLs crawled per website host per minute is 300.
* @property proxyConfiguration Configuration information required to connect to your internal websites via a web proxy.
* You must provide the website host name and port number. For example, the host name of https://a.example.com/page1.html is "a.example.com" and the port is 443, the standard port for HTTPS.
* Web proxy credentials are optional and you can use them to connect to a web proxy server that requires basic authentication. To store web proxy credentials, you use a secret in [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) .
* @property urlExclusionPatterns A list of regular expression patterns to exclude certain URLs to crawl. URLs that match the patterns are excluded from the index. URLs that don't match the patterns are included in the index. If a URL matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the URL file isn't included in the index.
* @property urlInclusionPatterns A list of regular expression patterns to include certain URLs to crawl. URLs that match the patterns are included in the index. URLs that don't match the patterns are excluded from the index. If a URL matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the URL file isn't included in the index.
* @property urls Specifies the seed or starting point URLs of the websites or the sitemap URLs of the websites you want to crawl.
* You can include website subdomains. You can list up to 100 seed URLs and up to three sitemap URLs.
* You can only crawl websites that use the secure communication protocol, Hypertext Transfer Protocol Secure (HTTPS). If you receive an error when crawling a website, it could be that the website is blocked from crawling.
* *When selecting websites to index, you must adhere to the [Amazon Acceptable Use Policy](https://docs.aws.amazon.com/aup/) and all other Amazon terms. Remember that you must only use Amazon Kendra Web Crawler to index your own webpages, or webpages that you have authorization to index.*
*/
public data class DataSourceWebCrawlerConfigurationArgs(
public val authenticationConfiguration: Output? = null,
public val crawlDepth: Output? = null,
public val maxContentSizePerPageInMegaBytes: Output? = null,
public val maxLinksPerPage: Output? = null,
public val maxUrlsPerMinuteCrawlRate: Output? = null,
public val proxyConfiguration: Output? = null,
public val urlExclusionPatterns: Output>? = null,
public val urlInclusionPatterns: Output>? = null,
public val urls: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.kendra.inputs.DataSourceWebCrawlerConfigurationArgs =
com.pulumi.awsnative.kendra.inputs.DataSourceWebCrawlerConfigurationArgs.builder()
.authenticationConfiguration(
authenticationConfiguration?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.crawlDepth(crawlDepth?.applyValue({ args0 -> args0 }))
.maxContentSizePerPageInMegaBytes(maxContentSizePerPageInMegaBytes?.applyValue({ args0 -> args0 }))
.maxLinksPerPage(maxLinksPerPage?.applyValue({ args0 -> args0 }))
.maxUrlsPerMinuteCrawlRate(maxUrlsPerMinuteCrawlRate?.applyValue({ args0 -> args0 }))
.proxyConfiguration(
proxyConfiguration?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.urlExclusionPatterns(urlExclusionPatterns?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.urlInclusionPatterns(urlInclusionPatterns?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.urls(urls.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [DataSourceWebCrawlerConfigurationArgs].
*/
@PulumiTagMarker
public class DataSourceWebCrawlerConfigurationArgsBuilder internal constructor() {
private var authenticationConfiguration:
Output? = null
private var crawlDepth: Output? = null
private var maxContentSizePerPageInMegaBytes: Output? = null
private var maxLinksPerPage: Output? = null
private var maxUrlsPerMinuteCrawlRate: Output? = null
private var proxyConfiguration: Output? = null
private var urlExclusionPatterns: Output>? = null
private var urlInclusionPatterns: Output>? = null
private var urls: Output? = null
/**
* @param value Configuration information required to connect to websites using authentication.
* You can connect to websites using basic authentication of user name and password. You use a secret in [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) to store your authentication credentials.
* You must provide the website host name and port number. For example, the host name of https://a.example.com/page1.html is "a.example.com" and the port is 443, the standard port for HTTPS.
*/
@JvmName("rxtfrvbxmvbedibg")
public suspend fun authenticationConfiguration(`value`: Output) {
this.authenticationConfiguration = value
}
/**
* @param value The 'depth' or number of levels from the seed level to crawl. For example, the seed URL page is depth 1 and any hyperlinks on this page that are also crawled are depth 2.
*/
@JvmName("nhhwwwrrsxlotijs")
public suspend fun crawlDepth(`value`: Output) {
this.crawlDepth = value
}
/**
* @param value The maximum size (in MB) of a web page or attachment to crawl.
* Files larger than this size (in MB) are skipped/not crawled.
* The default maximum size of a web page or attachment is set to 50 MB.
*/
@JvmName("ywdoinqyqasrgrfb")
public suspend fun maxContentSizePerPageInMegaBytes(`value`: Output) {
this.maxContentSizePerPageInMegaBytes = value
}
/**
* @param value The maximum number of URLs on a web page to include when crawling a website. This number is per web page.
* As a website’s web pages are crawled, any URLs the web pages link to are also crawled. URLs on a web page are crawled in order of appearance.
* The default maximum links per page is 100.
*/
@JvmName("jbwyajwpxwrkvdbh")
public suspend fun maxLinksPerPage(`value`: Output) {
this.maxLinksPerPage = value
}
/**
* @param value The maximum number of URLs crawled per website host per minute.
* A minimum of one URL is required.
* The default maximum number of URLs crawled per website host per minute is 300.
*/
@JvmName("viymjtaibffinjwe")
public suspend fun maxUrlsPerMinuteCrawlRate(`value`: Output) {
this.maxUrlsPerMinuteCrawlRate = value
}
/**
* @param value Configuration information required to connect to your internal websites via a web proxy.
* You must provide the website host name and port number. For example, the host name of https://a.example.com/page1.html is "a.example.com" and the port is 443, the standard port for HTTPS.
* Web proxy credentials are optional and you can use them to connect to a web proxy server that requires basic authentication. To store web proxy credentials, you use a secret in [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) .
*/
@JvmName("rvqoxiruosufqaru")
public suspend fun proxyConfiguration(`value`: Output) {
this.proxyConfiguration = value
}
/**
* @param value A list of regular expression patterns to exclude certain URLs to crawl. URLs that match the patterns are excluded from the index. URLs that don't match the patterns are included in the index. If a URL matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the URL file isn't included in the index.
*/
@JvmName("qxdbhxdwtjqjdpsh")
public suspend fun urlExclusionPatterns(`value`: Output>) {
this.urlExclusionPatterns = value
}
@JvmName("jqflesxkyybquiiv")
public suspend fun urlExclusionPatterns(vararg values: Output) {
this.urlExclusionPatterns = Output.all(values.asList())
}
/**
* @param values A list of regular expression patterns to exclude certain URLs to crawl. URLs that match the patterns are excluded from the index. URLs that don't match the patterns are included in the index. If a URL matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the URL file isn't included in the index.
*/
@JvmName("hvpxkqnbvonbpdga")
public suspend fun urlExclusionPatterns(values: List