/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.kendra.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Provides the configuration information to connect to Box as your data source. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class BoxConfiguration implements Serializable, Cloneable, StructuredPojo { /** ** The identifier of the Box Enterprise platform. You can find the enterprise ID in the Box Developer Console * settings or when you create an app in Box and download your authentication credentials. For example, * 801234567. *
*/ private String enterpriseId; /** ** The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value pairs required to connect * to your Box platform. The secret must contain a JSON structure with the following keys: *
** clientID—The identifier of the client OAuth 2.0 authentication application created in Box. *
** clientSecret—A set of characters known only to the OAuth 2.0 authentication application created in Box. *
** publicKeyId—The identifier of the public key contained within an identity certificate. *
** privateKey—A set of characters that make up an encryption key. *
** passphrase—A set of characters that act like a password. *
** You create an application in Box to generate the keys or credentials required for the secret. For more * information, see Using a Box data * source. *
*/ private String secretArn; /** *
* TRUE
to use the Slack change log to determine which documents require updating in the index.
* Depending on the data source change log's size, it may take longer for Amazon Kendra to use the change log than
* to scan all of your documents.
*
* TRUE
to index comments.
*
* TRUE
to index the contents of tasks.
*
* TRUE
to index web links.
*
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box files to
* Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map to
* Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box tasks to
* Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map to
* Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box comments
* to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map
* to Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box web links
* to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map
* to Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
* A list of regular expression patterns to include certain files and folders in your Box platform. Files and * folders that match the patterns are included in the index. Files and folders that don't match the patterns are * excluded from the index. If a file or folder matches both an inclusion and exclusion pattern, the exclusion * pattern takes precedence and the file or folder isn't included in the index. *
*/ private java.util.List* A list of regular expression patterns to exclude certain files and folders from your Box platform. Files and * folders that match the patterns are excluded from the index.Files and folders that don't match the patterns are * included in the index. If a file or folder matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the file or folder isn't included in the index. *
*/ private java.util.List* Configuration information for an Amazon VPC to connect to your Box. For more information, see Configuring a VPC. *
*/ private DataSourceVpcConfiguration vpcConfiguration; /** ** The identifier of the Box Enterprise platform. You can find the enterprise ID in the Box Developer Console * settings or when you create an app in Box and download your authentication credentials. For example, * 801234567. *
* * @param enterpriseId * The identifier of the Box Enterprise platform. You can find the enterprise ID in the Box Developer Console * settings or when you create an app in Box and download your authentication credentials. For example, * 801234567. */ public void setEnterpriseId(String enterpriseId) { this.enterpriseId = enterpriseId; } /** ** The identifier of the Box Enterprise platform. You can find the enterprise ID in the Box Developer Console * settings or when you create an app in Box and download your authentication credentials. For example, * 801234567. *
* * @return The identifier of the Box Enterprise platform. You can find the enterprise ID in the Box Developer * Console settings or when you create an app in Box and download your authentication credentials. For * example, 801234567. */ public String getEnterpriseId() { return this.enterpriseId; } /** ** The identifier of the Box Enterprise platform. You can find the enterprise ID in the Box Developer Console * settings or when you create an app in Box and download your authentication credentials. For example, * 801234567. *
* * @param enterpriseId * The identifier of the Box Enterprise platform. You can find the enterprise ID in the Box Developer Console * settings or when you create an app in Box and download your authentication credentials. For example, * 801234567. * @return Returns a reference to this object so that method calls can be chained together. */ public BoxConfiguration withEnterpriseId(String enterpriseId) { setEnterpriseId(enterpriseId); return this; } /** ** The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value pairs required to connect * to your Box platform. The secret must contain a JSON structure with the following keys: *
** clientID—The identifier of the client OAuth 2.0 authentication application created in Box. *
** clientSecret—A set of characters known only to the OAuth 2.0 authentication application created in Box. *
** publicKeyId—The identifier of the public key contained within an identity certificate. *
** privateKey—A set of characters that make up an encryption key. *
** passphrase—A set of characters that act like a password. *
** You create an application in Box to generate the keys or credentials required for the secret. For more * information, see Using a Box data * source. *
* * @param secretArn * The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value pairs required to * connect to your Box platform. The secret must contain a JSON structure with the following keys: ** clientID—The identifier of the client OAuth 2.0 authentication application created in Box. *
** clientSecret—A set of characters known only to the OAuth 2.0 authentication application created in Box. *
** publicKeyId—The identifier of the public key contained within an identity certificate. *
** privateKey—A set of characters that make up an encryption key. *
** passphrase—A set of characters that act like a password. *
** You create an application in Box to generate the keys or credentials required for the secret. For more * information, see Using a Box * data source. */ public void setSecretArn(String secretArn) { this.secretArn = secretArn; } /** *
* The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value pairs required to connect * to your Box platform. The secret must contain a JSON structure with the following keys: *
** clientID—The identifier of the client OAuth 2.0 authentication application created in Box. *
** clientSecret—A set of characters known only to the OAuth 2.0 authentication application created in Box. *
** publicKeyId—The identifier of the public key contained within an identity certificate. *
** privateKey—A set of characters that make up an encryption key. *
** passphrase—A set of characters that act like a password. *
** You create an application in Box to generate the keys or credentials required for the secret. For more * information, see Using a Box data * source. *
* * @return The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value pairs required to * connect to your Box platform. The secret must contain a JSON structure with the following keys: ** clientID—The identifier of the client OAuth 2.0 authentication application created in Box. *
** clientSecret—A set of characters known only to the OAuth 2.0 authentication application created in Box. *
** publicKeyId—The identifier of the public key contained within an identity certificate. *
** privateKey—A set of characters that make up an encryption key. *
** passphrase—A set of characters that act like a password. *
** You create an application in Box to generate the keys or credentials required for the secret. For more * information, see Using a Box * data source. */ public String getSecretArn() { return this.secretArn; } /** *
* The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value pairs required to connect * to your Box platform. The secret must contain a JSON structure with the following keys: *
** clientID—The identifier of the client OAuth 2.0 authentication application created in Box. *
** clientSecret—A set of characters known only to the OAuth 2.0 authentication application created in Box. *
** publicKeyId—The identifier of the public key contained within an identity certificate. *
** privateKey—A set of characters that make up an encryption key. *
** passphrase—A set of characters that act like a password. *
** You create an application in Box to generate the keys or credentials required for the secret. For more * information, see Using a Box data * source. *
* * @param secretArn * The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value pairs required to * connect to your Box platform. The secret must contain a JSON structure with the following keys: ** clientID—The identifier of the client OAuth 2.0 authentication application created in Box. *
** clientSecret—A set of characters known only to the OAuth 2.0 authentication application created in Box. *
** publicKeyId—The identifier of the public key contained within an identity certificate. *
** privateKey—A set of characters that make up an encryption key. *
** passphrase—A set of characters that act like a password. *
** You create an application in Box to generate the keys or credentials required for the secret. For more * information, see Using a Box * data source. * @return Returns a reference to this object so that method calls can be chained together. */ public BoxConfiguration withSecretArn(String secretArn) { setSecretArn(secretArn); return this; } /** *
* TRUE
to use the Slack change log to determine which documents require updating in the index.
* Depending on the data source change log's size, it may take longer for Amazon Kendra to use the change log than
* to scan all of your documents.
*
TRUE
to use the Slack change log to determine which documents require updating in the index.
* Depending on the data source change log's size, it may take longer for Amazon Kendra to use the change log
* than to scan all of your documents.
*/
public void setUseChangeLog(Boolean useChangeLog) {
this.useChangeLog = useChangeLog;
}
/**
*
* TRUE
to use the Slack change log to determine which documents require updating in the index.
* Depending on the data source change log's size, it may take longer for Amazon Kendra to use the change log than
* to scan all of your documents.
*
TRUE
to use the Slack change log to determine which documents require updating in the index.
* Depending on the data source change log's size, it may take longer for Amazon Kendra to use the change
* log than to scan all of your documents.
*/
public Boolean getUseChangeLog() {
return this.useChangeLog;
}
/**
*
* TRUE
to use the Slack change log to determine which documents require updating in the index.
* Depending on the data source change log's size, it may take longer for Amazon Kendra to use the change log than
* to scan all of your documents.
*
TRUE
to use the Slack change log to determine which documents require updating in the index.
* Depending on the data source change log's size, it may take longer for Amazon Kendra to use the change log
* than to scan all of your documents.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withUseChangeLog(Boolean useChangeLog) {
setUseChangeLog(useChangeLog);
return this;
}
/**
*
* TRUE
to use the Slack change log to determine which documents require updating in the index.
* Depending on the data source change log's size, it may take longer for Amazon Kendra to use the change log than
* to scan all of your documents.
*
TRUE
to use the Slack change log to determine which documents require updating in the index.
* Depending on the data source change log's size, it may take longer for Amazon Kendra to use the change
* log than to scan all of your documents.
*/
public Boolean isUseChangeLog() {
return this.useChangeLog;
}
/**
*
* TRUE
to index comments.
*
TRUE
to index comments.
*/
public void setCrawlComments(Boolean crawlComments) {
this.crawlComments = crawlComments;
}
/**
*
* TRUE
to index comments.
*
TRUE
to index comments.
*/
public Boolean getCrawlComments() {
return this.crawlComments;
}
/**
*
* TRUE
to index comments.
*
TRUE
to index comments.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withCrawlComments(Boolean crawlComments) {
setCrawlComments(crawlComments);
return this;
}
/**
*
* TRUE
to index comments.
*
TRUE
to index comments.
*/
public Boolean isCrawlComments() {
return this.crawlComments;
}
/**
*
* TRUE
to index the contents of tasks.
*
TRUE
to index the contents of tasks.
*/
public void setCrawlTasks(Boolean crawlTasks) {
this.crawlTasks = crawlTasks;
}
/**
*
* TRUE
to index the contents of tasks.
*
TRUE
to index the contents of tasks.
*/
public Boolean getCrawlTasks() {
return this.crawlTasks;
}
/**
*
* TRUE
to index the contents of tasks.
*
TRUE
to index the contents of tasks.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withCrawlTasks(Boolean crawlTasks) {
setCrawlTasks(crawlTasks);
return this;
}
/**
*
* TRUE
to index the contents of tasks.
*
TRUE
to index the contents of tasks.
*/
public Boolean isCrawlTasks() {
return this.crawlTasks;
}
/**
*
* TRUE
to index web links.
*
TRUE
to index web links.
*/
public void setCrawlWebLinks(Boolean crawlWebLinks) {
this.crawlWebLinks = crawlWebLinks;
}
/**
*
* TRUE
to index web links.
*
TRUE
to index web links.
*/
public Boolean getCrawlWebLinks() {
return this.crawlWebLinks;
}
/**
*
* TRUE
to index web links.
*
TRUE
to index web links.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withCrawlWebLinks(Boolean crawlWebLinks) {
setCrawlWebLinks(crawlWebLinks);
return this;
}
/**
*
* TRUE
to index web links.
*
TRUE
to index web links.
*/
public Boolean isCrawlWebLinks() {
return this.crawlWebLinks;
}
/**
*
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box files to
* Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map to
* Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* files to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields.
* The Box field names must exist in your Box custom metadata.
*/
public java.util.List
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box files to
* Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map to
* Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* files to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
*/
public void setFileFieldMappings(java.util.Collection
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box files to
* Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map to
* Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
* NOTE: This method appends the values to the existing list (if any). Use * {@link #setFileFieldMappings(java.util.Collection)} or {@link #withFileFieldMappings(java.util.Collection)} if * you want to override the existing values. *
* * @param fileFieldMappings * A list ofDataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* files to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withFileFieldMappings(DataSourceToIndexFieldMapping... fileFieldMappings) {
if (this.fileFieldMappings == null) {
setFileFieldMappings(new java.util.ArrayList
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box files to
* Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map to
* Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* files to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withFileFieldMappings(java.util.Collection
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box tasks to
* Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map to
* Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* tasks to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields.
* The Box field names must exist in your Box custom metadata.
*/
public java.util.List
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box tasks to
* Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map to
* Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* tasks to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
*/
public void setTaskFieldMappings(java.util.Collection
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box tasks to
* Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map to
* Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
* NOTE: This method appends the values to the existing list (if any). Use * {@link #setTaskFieldMappings(java.util.Collection)} or {@link #withTaskFieldMappings(java.util.Collection)} if * you want to override the existing values. *
* * @param taskFieldMappings * A list ofDataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* tasks to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withTaskFieldMappings(DataSourceToIndexFieldMapping... taskFieldMappings) {
if (this.taskFieldMappings == null) {
setTaskFieldMappings(new java.util.ArrayList
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box tasks to
* Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map to
* Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* tasks to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withTaskFieldMappings(java.util.Collection
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box comments
* to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map
* to Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* comments to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
* API before you map to Box fields. For more information, see Mapping data source fields.
* The Box field names must exist in your Box custom metadata.
*/
public java.util.List
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box comments
* to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map
* to Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* comments to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
*/
public void setCommentFieldMappings(java.util.Collection
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box comments
* to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map
* to Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
* NOTE: This method appends the values to the existing list (if any). Use * {@link #setCommentFieldMappings(java.util.Collection)} or {@link #withCommentFieldMappings(java.util.Collection)} * if you want to override the existing values. *
* * @param commentFieldMappings * A list ofDataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* comments to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withCommentFieldMappings(DataSourceToIndexFieldMapping... commentFieldMappings) {
if (this.commentFieldMappings == null) {
setCommentFieldMappings(new java.util.ArrayList
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box comments
* to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map
* to Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* comments to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withCommentFieldMappings(java.util.Collection
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box web links
* to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map
* to Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box
* web links to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
* API before you map to Box fields. For more information, see Mapping data source fields.
* The Box field names must exist in your Box custom metadata.
*/
public java.util.List
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box web links
* to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map
* to Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box web
* links to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
*/
public void setWebLinkFieldMappings(java.util.Collection
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box web links
* to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map
* to Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
* NOTE: This method appends the values to the existing list (if any). Use * {@link #setWebLinkFieldMappings(java.util.Collection)} or {@link #withWebLinkFieldMappings(java.util.Collection)} * if you want to override the existing values. *
* * @param webLinkFieldMappings * A list ofDataSourceToIndexFieldMapping
objects that map attributes or field names of Box web
* links to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withWebLinkFieldMappings(DataSourceToIndexFieldMapping... webLinkFieldMappings) {
if (this.webLinkFieldMappings == null) {
setWebLinkFieldMappings(new java.util.ArrayList
* A list of DataSourceToIndexFieldMapping
objects that map attributes or field names of Box web links
* to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API before you map
* to Box fields. For more information, see Mapping data source fields. The Box
* field names must exist in your Box custom metadata.
*
DataSourceToIndexFieldMapping
objects that map attributes or field names of Box web
* links to Amazon Kendra index field names. To create custom fields, use the UpdateIndex
API
* before you map to Box fields. For more information, see Mapping data source fields. The
* Box field names must exist in your Box custom metadata.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BoxConfiguration withWebLinkFieldMappings(java.util.Collection* A list of regular expression patterns to include certain files and folders in your Box platform. Files and * folders that match the patterns are included in the index. Files and folders that don't match the patterns are * excluded from the index. If a file or folder matches both an inclusion and exclusion pattern, the exclusion * pattern takes precedence and the file or folder isn't included in the index. *
* * @return A list of regular expression patterns to include certain files and folders in your Box platform. Files * and folders that match the patterns are included in the index. Files and folders that don't match the * patterns are excluded from the index. If a file or folder matches both an inclusion and exclusion * pattern, the exclusion pattern takes precedence and the file or folder isn't included in the index. */ public java.util.List* A list of regular expression patterns to include certain files and folders in your Box platform. Files and * folders that match the patterns are included in the index. Files and folders that don't match the patterns are * excluded from the index. If a file or folder matches both an inclusion and exclusion pattern, the exclusion * pattern takes precedence and the file or folder isn't included in the index. *
* * @param inclusionPatterns * A list of regular expression patterns to include certain files and folders in your Box platform. Files and * folders that match the patterns are included in the index. Files and folders that don't match the patterns * are excluded from the index. If a file or folder matches both an inclusion and exclusion pattern, the * exclusion pattern takes precedence and the file or folder isn't included in the index. */ public void setInclusionPatterns(java.util.Collection* A list of regular expression patterns to include certain files and folders in your Box platform. Files and * folders that match the patterns are included in the index. Files and folders that don't match the patterns are * excluded from the index. If a file or folder matches both an inclusion and exclusion pattern, the exclusion * pattern takes precedence and the file or folder isn't included in the index. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setInclusionPatterns(java.util.Collection)} or {@link #withInclusionPatterns(java.util.Collection)} if * you want to override the existing values. *
* * @param inclusionPatterns * A list of regular expression patterns to include certain files and folders in your Box platform. Files and * folders that match the patterns are included in the index. Files and folders that don't match the patterns * are excluded from the index. If a file or folder matches both an inclusion and exclusion pattern, the * exclusion pattern takes precedence and the file or folder isn't included in the index. * @return Returns a reference to this object so that method calls can be chained together. */ public BoxConfiguration withInclusionPatterns(String... inclusionPatterns) { if (this.inclusionPatterns == null) { setInclusionPatterns(new java.util.ArrayList* A list of regular expression patterns to include certain files and folders in your Box platform. Files and * folders that match the patterns are included in the index. Files and folders that don't match the patterns are * excluded from the index. If a file or folder matches both an inclusion and exclusion pattern, the exclusion * pattern takes precedence and the file or folder isn't included in the index. *
* * @param inclusionPatterns * A list of regular expression patterns to include certain files and folders in your Box platform. Files and * folders that match the patterns are included in the index. Files and folders that don't match the patterns * are excluded from the index. If a file or folder matches both an inclusion and exclusion pattern, the * exclusion pattern takes precedence and the file or folder isn't included in the index. * @return Returns a reference to this object so that method calls can be chained together. */ public BoxConfiguration withInclusionPatterns(java.util.Collection* A list of regular expression patterns to exclude certain files and folders from your Box platform. Files and * folders that match the patterns are excluded from the index.Files and folders that don't match the patterns are * included in the index. If a file or folder matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the file or folder isn't included in the index. *
* * @return A list of regular expression patterns to exclude certain files and folders from your Box platform. Files * and folders that match the patterns are excluded from the index.Files and folders that don't match the * patterns are included in the index. If a file or folder matches both an inclusion and exclusion pattern, * the exclusion pattern takes precedence and the file or folder isn't included in the index. */ public java.util.List* A list of regular expression patterns to exclude certain files and folders from your Box platform. Files and * folders that match the patterns are excluded from the index.Files and folders that don't match the patterns are * included in the index. If a file or folder matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the file or folder isn't included in the index. *
* * @param exclusionPatterns * A list of regular expression patterns to exclude certain files and folders from your Box platform. Files * and folders that match the patterns are excluded from the index.Files and folders that don't match the * patterns are included in the index. If a file or folder matches both an inclusion and exclusion pattern, * the exclusion pattern takes precedence and the file or folder isn't included in the index. */ public void setExclusionPatterns(java.util.Collection* A list of regular expression patterns to exclude certain files and folders from your Box platform. Files and * folders that match the patterns are excluded from the index.Files and folders that don't match the patterns are * included in the index. If a file or folder matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the file or folder isn't included in the index. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setExclusionPatterns(java.util.Collection)} or {@link #withExclusionPatterns(java.util.Collection)} if * you want to override the existing values. *
* * @param exclusionPatterns * A list of regular expression patterns to exclude certain files and folders from your Box platform. Files * and folders that match the patterns are excluded from the index.Files and folders that don't match the * patterns are included in the index. If a file or folder matches both an inclusion and exclusion pattern, * the exclusion pattern takes precedence and the file or folder isn't included in the index. * @return Returns a reference to this object so that method calls can be chained together. */ public BoxConfiguration withExclusionPatterns(String... exclusionPatterns) { if (this.exclusionPatterns == null) { setExclusionPatterns(new java.util.ArrayList* A list of regular expression patterns to exclude certain files and folders from your Box platform. Files and * folders that match the patterns are excluded from the index.Files and folders that don't match the patterns are * included in the index. If a file or folder matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the file or folder isn't included in the index. *
* * @param exclusionPatterns * A list of regular expression patterns to exclude certain files and folders from your Box platform. Files * and folders that match the patterns are excluded from the index.Files and folders that don't match the * patterns are included in the index. If a file or folder matches both an inclusion and exclusion pattern, * the exclusion pattern takes precedence and the file or folder isn't included in the index. * @return Returns a reference to this object so that method calls can be chained together. */ public BoxConfiguration withExclusionPatterns(java.util.Collection* Configuration information for an Amazon VPC to connect to your Box. For more information, see Configuring a VPC. *
* * @param vpcConfiguration * Configuration information for an Amazon VPC to connect to your Box. For more information, see Configuring a VPC. */ public void setVpcConfiguration(DataSourceVpcConfiguration vpcConfiguration) { this.vpcConfiguration = vpcConfiguration; } /** ** Configuration information for an Amazon VPC to connect to your Box. For more information, see Configuring a VPC. *
* * @return Configuration information for an Amazon VPC to connect to your Box. For more information, see Configuring a VPC. */ public DataSourceVpcConfiguration getVpcConfiguration() { return this.vpcConfiguration; } /** ** Configuration information for an Amazon VPC to connect to your Box. For more information, see Configuring a VPC. *
* * @param vpcConfiguration * Configuration information for an Amazon VPC to connect to your Box. For more information, see Configuring a VPC. * @return Returns a reference to this object so that method calls can be chained together. */ public BoxConfiguration withVpcConfiguration(DataSourceVpcConfiguration vpcConfiguration) { setVpcConfiguration(vpcConfiguration); return this; } /** * 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. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getEnterpriseId() != null) sb.append("EnterpriseId: ").append(getEnterpriseId()).append(","); if (getSecretArn() != null) sb.append("SecretArn: ").append(getSecretArn()).append(","); if (getUseChangeLog() != null) sb.append("UseChangeLog: ").append(getUseChangeLog()).append(","); if (getCrawlComments() != null) sb.append("CrawlComments: ").append(getCrawlComments()).append(","); if (getCrawlTasks() != null) sb.append("CrawlTasks: ").append(getCrawlTasks()).append(","); if (getCrawlWebLinks() != null) sb.append("CrawlWebLinks: ").append(getCrawlWebLinks()).append(","); if (getFileFieldMappings() != null) sb.append("FileFieldMappings: ").append(getFileFieldMappings()).append(","); if (getTaskFieldMappings() != null) sb.append("TaskFieldMappings: ").append(getTaskFieldMappings()).append(","); if (getCommentFieldMappings() != null) sb.append("CommentFieldMappings: ").append(getCommentFieldMappings()).append(","); if (getWebLinkFieldMappings() != null) sb.append("WebLinkFieldMappings: ").append(getWebLinkFieldMappings()).append(","); if (getInclusionPatterns() != null) sb.append("InclusionPatterns: ").append(getInclusionPatterns()).append(","); if (getExclusionPatterns() != null) sb.append("ExclusionPatterns: ").append(getExclusionPatterns()).append(","); if (getVpcConfiguration() != null) sb.append("VpcConfiguration: ").append(getVpcConfiguration()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof BoxConfiguration == false) return false; BoxConfiguration other = (BoxConfiguration) obj; if (other.getEnterpriseId() == null ^ this.getEnterpriseId() == null) return false; if (other.getEnterpriseId() != null && other.getEnterpriseId().equals(this.getEnterpriseId()) == false) return false; if (other.getSecretArn() == null ^ this.getSecretArn() == null) return false; if (other.getSecretArn() != null && other.getSecretArn().equals(this.getSecretArn()) == false) return false; if (other.getUseChangeLog() == null ^ this.getUseChangeLog() == null) return false; if (other.getUseChangeLog() != null && other.getUseChangeLog().equals(this.getUseChangeLog()) == false) return false; if (other.getCrawlComments() == null ^ this.getCrawlComments() == null) return false; if (other.getCrawlComments() != null && other.getCrawlComments().equals(this.getCrawlComments()) == false) return false; if (other.getCrawlTasks() == null ^ this.getCrawlTasks() == null) return false; if (other.getCrawlTasks() != null && other.getCrawlTasks().equals(this.getCrawlTasks()) == false) return false; if (other.getCrawlWebLinks() == null ^ this.getCrawlWebLinks() == null) return false; if (other.getCrawlWebLinks() != null && other.getCrawlWebLinks().equals(this.getCrawlWebLinks()) == false) return false; if (other.getFileFieldMappings() == null ^ this.getFileFieldMappings() == null) return false; if (other.getFileFieldMappings() != null && other.getFileFieldMappings().equals(this.getFileFieldMappings()) == false) return false; if (other.getTaskFieldMappings() == null ^ this.getTaskFieldMappings() == null) return false; if (other.getTaskFieldMappings() != null && other.getTaskFieldMappings().equals(this.getTaskFieldMappings()) == false) return false; if (other.getCommentFieldMappings() == null ^ this.getCommentFieldMappings() == null) return false; if (other.getCommentFieldMappings() != null && other.getCommentFieldMappings().equals(this.getCommentFieldMappings()) == false) return false; if (other.getWebLinkFieldMappings() == null ^ this.getWebLinkFieldMappings() == null) return false; if (other.getWebLinkFieldMappings() != null && other.getWebLinkFieldMappings().equals(this.getWebLinkFieldMappings()) == false) return false; if (other.getInclusionPatterns() == null ^ this.getInclusionPatterns() == null) return false; if (other.getInclusionPatterns() != null && other.getInclusionPatterns().equals(this.getInclusionPatterns()) == false) return false; if (other.getExclusionPatterns() == null ^ this.getExclusionPatterns() == null) return false; if (other.getExclusionPatterns() != null && other.getExclusionPatterns().equals(this.getExclusionPatterns()) == false) return false; if (other.getVpcConfiguration() == null ^ this.getVpcConfiguration() == null) return false; if (other.getVpcConfiguration() != null && other.getVpcConfiguration().equals(this.getVpcConfiguration()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getEnterpriseId() == null) ? 0 : getEnterpriseId().hashCode()); hashCode = prime * hashCode + ((getSecretArn() == null) ? 0 : getSecretArn().hashCode()); hashCode = prime * hashCode + ((getUseChangeLog() == null) ? 0 : getUseChangeLog().hashCode()); hashCode = prime * hashCode + ((getCrawlComments() == null) ? 0 : getCrawlComments().hashCode()); hashCode = prime * hashCode + ((getCrawlTasks() == null) ? 0 : getCrawlTasks().hashCode()); hashCode = prime * hashCode + ((getCrawlWebLinks() == null) ? 0 : getCrawlWebLinks().hashCode()); hashCode = prime * hashCode + ((getFileFieldMappings() == null) ? 0 : getFileFieldMappings().hashCode()); hashCode = prime * hashCode + ((getTaskFieldMappings() == null) ? 0 : getTaskFieldMappings().hashCode()); hashCode = prime * hashCode + ((getCommentFieldMappings() == null) ? 0 : getCommentFieldMappings().hashCode()); hashCode = prime * hashCode + ((getWebLinkFieldMappings() == null) ? 0 : getWebLinkFieldMappings().hashCode()); hashCode = prime * hashCode + ((getInclusionPatterns() == null) ? 0 : getInclusionPatterns().hashCode()); hashCode = prime * hashCode + ((getExclusionPatterns() == null) ? 0 : getExclusionPatterns().hashCode()); hashCode = prime * hashCode + ((getVpcConfiguration() == null) ? 0 : getVpcConfiguration().hashCode()); return hashCode; } @Override public BoxConfiguration clone() { try { return (BoxConfiguration) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.kendra.model.transform.BoxConfigurationMarshaller.getInstance().marshall(this, protocolMarshaller); } }