Class WebCrawlerConfiguration

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

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

Provides the configuration information required for Amazon Kendra Web Crawler.

See Also:
  • Method Details

    • urls

      public final Urls 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 and all other Amazon terms. Remember that you must only use Amazon Kendra Web Crawler to index your own web pages, or web pages that you have authorization to index.

      Returns:
      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 and all other Amazon terms. Remember that you must only use Amazon Kendra Web Crawler to index your own web pages, or web pages that you have authorization to index.

    • crawlDepth

      public final Integer 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.

      Returns:
      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.
    • maxLinksPerPage

      public final Integer 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.

      Returns:
      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.

    • maxContentSizePerPageInMegaBytes

      public final Float 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.

      Returns:
      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.

    • maxUrlsPerMinuteCrawlRate

      public final Integer 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.

      Returns:
      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.

    • hasUrlInclusionPatterns

      public final boolean hasUrlInclusionPatterns()
      For responses, this returns true if the service returned a value for the UrlInclusionPatterns property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • urlInclusionPatterns

      public final List<String> 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.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasUrlInclusionPatterns() method.

      Returns:
      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.
    • hasUrlExclusionPatterns

      public final boolean hasUrlExclusionPatterns()
      For responses, this returns true if the service returned a value for the UrlExclusionPatterns property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • urlExclusionPatterns

      public final List<String> 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.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasUrlExclusionPatterns() method.

      Returns:
      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.
    • proxyConfiguration

      public final ProxyConfiguration 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 Secrets Manager.

      Returns:
      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 Secrets Manager.

    • authenticationConfiguration

      public final AuthenticationConfiguration 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 Secrets Manager 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.

      Returns:
      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 Secrets Manager 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.

    • toBuilder

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

      public static WebCrawlerConfiguration.Builder builder()
    • serializableBuilderClass

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