/*
* Copyright 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.
*/
/*
* Do not modify this file. This file is generated from the kendra-2019-02-03.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Kendra.Model
{
///
/// Provides information about how Amazon Kendra should use the columns of a database
/// in an index.
///
public partial class ColumnConfiguration
{
private List _changeDetectingColumns = new List();
private string _documentDataColumnName;
private string _documentIdColumnName;
private string _documentTitleColumnName;
private List _fieldMappings = new List();
///
/// Gets and sets the property ChangeDetectingColumns.
///
/// One to five columns that indicate when a document in the database has changed.
///
///
[AWSProperty(Required=true, Min=1, Max=5)]
public List ChangeDetectingColumns
{
get { return this._changeDetectingColumns; }
set { this._changeDetectingColumns = value; }
}
// Check to see if ChangeDetectingColumns property is set
internal bool IsSetChangeDetectingColumns()
{
return this._changeDetectingColumns != null && this._changeDetectingColumns.Count > 0;
}
///
/// Gets and sets the property DocumentDataColumnName.
///
/// The column that contains the contents of the document.
///
///
[AWSProperty(Required=true, Min=1, Max=100)]
public string DocumentDataColumnName
{
get { return this._documentDataColumnName; }
set { this._documentDataColumnName = value; }
}
// Check to see if DocumentDataColumnName property is set
internal bool IsSetDocumentDataColumnName()
{
return this._documentDataColumnName != null;
}
///
/// Gets and sets the property DocumentIdColumnName.
///
/// The column that provides the document's identifier.
///
///
[AWSProperty(Required=true, Min=1, Max=100)]
public string DocumentIdColumnName
{
get { return this._documentIdColumnName; }
set { this._documentIdColumnName = value; }
}
// Check to see if DocumentIdColumnName property is set
internal bool IsSetDocumentIdColumnName()
{
return this._documentIdColumnName != null;
}
///
/// Gets and sets the property DocumentTitleColumnName.
///
/// The column that contains the title of the document.
///
///
[AWSProperty(Min=1, Max=100)]
public string DocumentTitleColumnName
{
get { return this._documentTitleColumnName; }
set { this._documentTitleColumnName = value; }
}
// Check to see if DocumentTitleColumnName property is set
internal bool IsSetDocumentTitleColumnName()
{
return this._documentTitleColumnName != null;
}
///
/// Gets and sets the property 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 the UpdateIndex
/// API.
///
///
[AWSProperty(Min=1, Max=100)]
public List FieldMappings
{
get { return this._fieldMappings; }
set { this._fieldMappings = value; }
}
// Check to see if FieldMappings property is set
internal bool IsSetFieldMappings()
{
return this._fieldMappings != null && this._fieldMappings.Count > 0;
}
}
}