/* * 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 the configuration information to connect to an Amazon S3 bucket. /// public partial class S3DataSourceConfiguration { private AccessControlListConfiguration _accessControlListConfiguration; private string _bucketName; private DocumentsMetadataConfiguration _documentsMetadataConfiguration; private List _exclusionPatterns = new List(); private List _inclusionPatterns = new List(); private List _inclusionPrefixes = new List(); /// /// Gets and sets the property AccessControlListConfiguration. /// /// Provides the path to the S3 bucket that contains the user context filtering files /// for the data source. For the format of the file, see Access /// control for S3 data sources. /// /// public AccessControlListConfiguration AccessControlListConfiguration { get { return this._accessControlListConfiguration; } set { this._accessControlListConfiguration = value; } } // Check to see if AccessControlListConfiguration property is set internal bool IsSetAccessControlListConfiguration() { return this._accessControlListConfiguration != null; } /// /// Gets and sets the property BucketName. /// /// The name of the bucket that contains the documents. /// /// [AWSProperty(Required=true, Min=3, Max=63)] public string BucketName { get { return this._bucketName; } set { this._bucketName = value; } } // Check to see if BucketName property is set internal bool IsSetBucketName() { return this._bucketName != null; } /// /// Gets and sets the property DocumentsMetadataConfiguration. /// public DocumentsMetadataConfiguration DocumentsMetadataConfiguration { get { return this._documentsMetadataConfiguration; } set { this._documentsMetadataConfiguration = value; } } // Check to see if DocumentsMetadataConfiguration property is set internal bool IsSetDocumentsMetadataConfiguration() { return this._documentsMetadataConfiguration != null; } /// /// Gets and sets the property ExclusionPatterns. /// /// A list of glob patterns for documents that should not be indexed. If a document that /// matches an inclusion prefix or inclusion pattern also matches an exclusion pattern, /// the document is not indexed. /// /// /// /// Some examples /// are: /// ///
  • /// /// *.png , *.jpg will exclude all PNG and JPEG image files in a directory (files /// with the extensions .png and .jpg). /// ///
  • /// /// *internal* will exclude all files in a directory that contain 'internal' in /// the file name, such as 'internal', 'internal_only', 'company_internal'. /// ///
  • /// /// **/*internal* will exclude all internal-related files in a directory and its /// subdirectories. /// ///
///
[AWSProperty(Min=0, Max=250)] public List ExclusionPatterns { get { return this._exclusionPatterns; } set { this._exclusionPatterns = value; } } // Check to see if ExclusionPatterns property is set internal bool IsSetExclusionPatterns() { return this._exclusionPatterns != null && this._exclusionPatterns.Count > 0; } /// /// Gets and sets the property InclusionPatterns. /// /// A list of glob patterns for documents that should be indexed. If a document that matches /// an inclusion pattern also matches an exclusion pattern, the document is not indexed. /// /// /// /// Some examples /// are: /// ///
  • /// /// *.txt will include all text files in a directory (files with the extension /// .txt). /// ///
  • /// /// **/*.txt will include all text files in a directory and its subdirectories. /// ///
  • /// /// *tax* will include all files in a directory that contain 'tax' in the file /// name, such as 'tax', 'taxes', 'income_tax'. /// ///
///
[AWSProperty(Min=0, Max=250)] public List InclusionPatterns { get { return this._inclusionPatterns; } set { this._inclusionPatterns = value; } } // Check to see if InclusionPatterns property is set internal bool IsSetInclusionPatterns() { return this._inclusionPatterns != null && this._inclusionPatterns.Count > 0; } /// /// Gets and sets the property InclusionPrefixes. /// /// A list of S3 prefixes for the documents that should be included in the index. /// /// [AWSProperty(Min=0, Max=250)] public List InclusionPrefixes { get { return this._inclusionPrefixes; } set { this._inclusionPrefixes = value; } } // Check to see if InclusionPrefixes property is set internal bool IsSetInclusionPrefixes() { return this._inclusionPrefixes != null && this._inclusionPrefixes.Count > 0; } } }