/* * 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 Quip as your data source. /// public partial class QuipConfiguration { private List _attachmentFieldMappings = new List(); private bool? _crawlAttachments; private bool? _crawlChatRooms; private bool? _crawlFileComments; private string _domain; private List _exclusionPatterns = new List(); private List _folderIds = new List(); private List _inclusionPatterns = new List(); private List _messageFieldMappings = new List(); private string _secretArn; private List _threadFieldMappings = new List(); private DataSourceVpcConfiguration _vpcConfiguration; /// /// Gets and sets the property AttachmentFieldMappings. /// /// A list of DataSourceToIndexFieldMapping objects that map attributes or /// field names of Quip attachments to Amazon Kendra index field names. To create custom /// fields, use the UpdateIndex API before you map to Quip fields. For more /// information, see Mapping /// data source fields. The Quip field names must exist in your Quip custom metadata. /// /// [AWSProperty(Min=1, Max=100)] public List AttachmentFieldMappings { get { return this._attachmentFieldMappings; } set { this._attachmentFieldMappings = value; } } // Check to see if AttachmentFieldMappings property is set internal bool IsSetAttachmentFieldMappings() { return this._attachmentFieldMappings != null && this._attachmentFieldMappings.Count > 0; } /// /// Gets and sets the property CrawlAttachments. /// /// TRUE to index attachments. /// /// public bool CrawlAttachments { get { return this._crawlAttachments.GetValueOrDefault(); } set { this._crawlAttachments = value; } } // Check to see if CrawlAttachments property is set internal bool IsSetCrawlAttachments() { return this._crawlAttachments.HasValue; } /// /// Gets and sets the property CrawlChatRooms. /// /// TRUE to index the contents of chat rooms. /// /// public bool CrawlChatRooms { get { return this._crawlChatRooms.GetValueOrDefault(); } set { this._crawlChatRooms = value; } } // Check to see if CrawlChatRooms property is set internal bool IsSetCrawlChatRooms() { return this._crawlChatRooms.HasValue; } /// /// Gets and sets the property CrawlFileComments. /// /// TRUE to index file comments. /// /// public bool CrawlFileComments { get { return this._crawlFileComments.GetValueOrDefault(); } set { this._crawlFileComments = value; } } // Check to see if CrawlFileComments property is set internal bool IsSetCrawlFileComments() { return this._crawlFileComments.HasValue; } /// /// Gets and sets the property Domain. /// /// The Quip site domain. For example, https://quip-company.quipdomain.com/browse. /// The domain in this example is "quipdomain". /// /// [AWSProperty(Required=true, Min=1, Max=63)] public string Domain { get { return this._domain; } set { this._domain = value; } } // Check to see if Domain property is set internal bool IsSetDomain() { return this._domain != null; } /// /// Gets and sets the property ExclusionPatterns. /// /// A list of regular expression patterns to exclude certain files in your Quip file system. /// Files that match the patterns are excluded from the index. Files that don’t match /// the patterns are included in the index. If a file matches both an inclusion pattern /// and an exclusion pattern, the exclusion pattern takes precedence, and the file isn't /// included in the index. /// /// [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 FolderIds. /// /// The identifiers of the Quip folders you want to index. You can find the folder ID /// in your browser URL when you access your folder in Quip. For example, https://quip-company.quipdomain.com/zlLuOVNSarTL/folder-name. /// The folder ID in this example is "zlLuOVNSarTL". /// /// public List FolderIds { get { return this._folderIds; } set { this._folderIds = value; } } // Check to see if FolderIds property is set internal bool IsSetFolderIds() { return this._folderIds != null && this._folderIds.Count > 0; } /// /// Gets and sets the property InclusionPatterns. /// /// A list of regular expression patterns to include certain files in your Quip file system. /// Files that match the patterns are included in the index. Files that don't match the /// patterns are excluded from the index. If a file matches both an inclusion pattern /// and an exclusion pattern, the exclusion pattern takes precedence, and the file isn't /// included in the index. /// /// [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 MessageFieldMappings. /// /// A list of DataSourceToIndexFieldMapping objects that map attributes or /// field names of Quip messages to Amazon Kendra index field names. To create custom /// fields, use the UpdateIndex API before you map to Quip fields. For more /// information, see Mapping /// data source fields. The Quip field names must exist in your Quip custom metadata. /// /// [AWSProperty(Min=1, Max=100)] public List MessageFieldMappings { get { return this._messageFieldMappings; } set { this._messageFieldMappings = value; } } // Check to see if MessageFieldMappings property is set internal bool IsSetMessageFieldMappings() { return this._messageFieldMappings != null && this._messageFieldMappings.Count > 0; } /// /// Gets and sets the property SecretArn. /// /// The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value /// pairs that are required to connect to your Quip. The secret must contain a JSON structure /// with the following keys: /// /// /// [AWSProperty(Required=true, Min=1, Max=1284)] public string SecretArn { get { return this._secretArn; } set { this._secretArn = value; } } // Check to see if SecretArn property is set internal bool IsSetSecretArn() { return this._secretArn != null; } /// /// Gets and sets the property ThreadFieldMappings. /// /// A list of DataSourceToIndexFieldMapping objects that map attributes or /// field names of Quip threads to Amazon Kendra index field names. To create custom fields, /// use the UpdateIndex API before you map to Quip fields. For more information, /// see Mapping /// data source fields. The Quip field names must exist in your Quip custom metadata. /// /// [AWSProperty(Min=1, Max=100)] public List ThreadFieldMappings { get { return this._threadFieldMappings; } set { this._threadFieldMappings = value; } } // Check to see if ThreadFieldMappings property is set internal bool IsSetThreadFieldMappings() { return this._threadFieldMappings != null && this._threadFieldMappings.Count > 0; } /// /// Gets and sets the property VpcConfiguration. /// /// Configuration information for an Amazon Virtual Private Cloud (VPC) to connect to /// your Quip. For more information, see Configuring /// a VPC. /// /// public DataSourceVpcConfiguration VpcConfiguration { get { return this._vpcConfiguration; } set { this._vpcConfiguration = value; } } // Check to see if VpcConfiguration property is set internal bool IsSetVpcConfiguration() { return this._vpcConfiguration != null; } } }