/* * 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 information about how Amazon Kendra should use the columns of a database in an index. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class ColumnConfiguration implements Serializable, Cloneable, StructuredPojo { /** ** The column that provides the document's identifier. *
*/ private String documentIdColumnName; /** ** The column that contains the contents of the document. *
*/ private String documentDataColumnName; /** ** The column that contains the title of the document. *
*/ private String documentTitleColumnName; /** *
* An array of objects that map database column names to the corresponding fields in an index. You must first create
* the fields in the index using the UpdateIndex
API.
*
* One to five columns that indicate when a document in the database has changed. *
*/ private java.util.List* The column that provides the document's identifier. *
* * @param documentIdColumnName * The column that provides the document's identifier. */ public void setDocumentIdColumnName(String documentIdColumnName) { this.documentIdColumnName = documentIdColumnName; } /** ** The column that provides the document's identifier. *
* * @return The column that provides the document's identifier. */ public String getDocumentIdColumnName() { return this.documentIdColumnName; } /** ** The column that provides the document's identifier. *
* * @param documentIdColumnName * The column that provides the document's identifier. * @return Returns a reference to this object so that method calls can be chained together. */ public ColumnConfiguration withDocumentIdColumnName(String documentIdColumnName) { setDocumentIdColumnName(documentIdColumnName); return this; } /** ** The column that contains the contents of the document. *
* * @param documentDataColumnName * The column that contains the contents of the document. */ public void setDocumentDataColumnName(String documentDataColumnName) { this.documentDataColumnName = documentDataColumnName; } /** ** The column that contains the contents of the document. *
* * @return The column that contains the contents of the document. */ public String getDocumentDataColumnName() { return this.documentDataColumnName; } /** ** The column that contains the contents of the document. *
* * @param documentDataColumnName * The column that contains the contents of the document. * @return Returns a reference to this object so that method calls can be chained together. */ public ColumnConfiguration withDocumentDataColumnName(String documentDataColumnName) { setDocumentDataColumnName(documentDataColumnName); return this; } /** ** The column that contains the title of the document. *
* * @param documentTitleColumnName * The column that contains the title of the document. */ public void setDocumentTitleColumnName(String documentTitleColumnName) { this.documentTitleColumnName = documentTitleColumnName; } /** ** The column that contains the title of the document. *
* * @return The column that contains the title of the document. */ public String getDocumentTitleColumnName() { return this.documentTitleColumnName; } /** ** The column that contains the title of the document. *
* * @param documentTitleColumnName * The column that contains the title of the document. * @return Returns a reference to this object so that method calls can be chained together. */ public ColumnConfiguration withDocumentTitleColumnName(String documentTitleColumnName) { setDocumentTitleColumnName(documentTitleColumnName); return this; } /** *
* An array of objects that map database column names to the corresponding fields in an index. You must first create
* the fields in the index using the UpdateIndex
API.
*
UpdateIndex
API.
*/
public java.util.List
* An array of objects that map database column names to the corresponding fields in an index. You must first create
* the fields in the index using the UpdateIndex
API.
*
UpdateIndex
API.
*/
public void setFieldMappings(java.util.Collection
* An array of objects that map database column names to the corresponding fields in an index. You must first create
* the fields in the index using the UpdateIndex
API.
*
* NOTE: This method appends the values to the existing list (if any). Use * {@link #setFieldMappings(java.util.Collection)} or {@link #withFieldMappings(java.util.Collection)} if you want * to override the existing values. *
* * @param fieldMappings * An array of objects that map database column names to the corresponding fields in an index. You must first * create the fields in the index using theUpdateIndex
API.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ColumnConfiguration withFieldMappings(DataSourceToIndexFieldMapping... fieldMappings) {
if (this.fieldMappings == null) {
setFieldMappings(new java.util.ArrayList
* An array of objects that map database column names to the corresponding fields in an index. You must first create
* the fields in the index using the UpdateIndex
API.
*
UpdateIndex
API.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public ColumnConfiguration withFieldMappings(java.util.Collection* One to five columns that indicate when a document in the database has changed. *
* * @return One to five columns that indicate when a document in the database has changed. */ public java.util.List* One to five columns that indicate when a document in the database has changed. *
* * @param changeDetectingColumns * One to five columns that indicate when a document in the database has changed. */ public void setChangeDetectingColumns(java.util.Collection* One to five columns that indicate when a document in the database has changed. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setChangeDetectingColumns(java.util.Collection)} or * {@link #withChangeDetectingColumns(java.util.Collection)} if you want to override the existing values. *
* * @param changeDetectingColumns * One to five columns that indicate when a document in the database has changed. * @return Returns a reference to this object so that method calls can be chained together. */ public ColumnConfiguration withChangeDetectingColumns(String... changeDetectingColumns) { if (this.changeDetectingColumns == null) { setChangeDetectingColumns(new java.util.ArrayList* One to five columns that indicate when a document in the database has changed. *
* * @param changeDetectingColumns * One to five columns that indicate when a document in the database has changed. * @return Returns a reference to this object so that method calls can be chained together. */ public ColumnConfiguration withChangeDetectingColumns(java.util.Collection