/* * 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 Alfresco as your data source. /// /// /// /// Support for AlfrescoConfiguration ended May 2023. We recommend migrating /// to or using the Alfresco data source template schema / TemplateConfiguration /// API. /// /// /// public partial class AlfrescoConfiguration { private List _blogFieldMappings = new List(); private bool? _crawlComments; private bool? _crawlSystemFolders; private List _documentLibraryFieldMappings = new List(); private List _entityFilter = new List(); private List _exclusionPatterns = new List(); private List _inclusionPatterns = new List(); private string _secretArn; private string _siteId; private string _siteUrl; private S3Path _sslCertificateS3Path; private DataSourceVpcConfiguration _vpcConfiguration; private List _wikiFieldMappings = new List(); /// /// Gets and sets the property BlogFieldMappings. /// /// A list of DataSourceToIndexFieldMapping objects that map attributes or /// field names of Alfresco blogs to Amazon Kendra index field names. To create custom /// fields, use the UpdateIndex API before you map to Alfresco fields. For /// more information, see /// Mapping data source fields. The Alfresco data source field names must exist in /// your Alfresco custom metadata. /// /// [AWSProperty(Min=1, Max=100)] public List BlogFieldMappings { get { return this._blogFieldMappings; } set { this._blogFieldMappings = value; } } // Check to see if BlogFieldMappings property is set internal bool IsSetBlogFieldMappings() { return this._blogFieldMappings != null && this._blogFieldMappings.Count > 0; } /// /// Gets and sets the property CrawlComments. /// /// TRUE to index comments of blogs and other content. /// /// public bool CrawlComments { get { return this._crawlComments.GetValueOrDefault(); } set { this._crawlComments = value; } } // Check to see if CrawlComments property is set internal bool IsSetCrawlComments() { return this._crawlComments.HasValue; } /// /// Gets and sets the property CrawlSystemFolders. /// /// TRUE to index shared files. /// /// public bool CrawlSystemFolders { get { return this._crawlSystemFolders.GetValueOrDefault(); } set { this._crawlSystemFolders = value; } } // Check to see if CrawlSystemFolders property is set internal bool IsSetCrawlSystemFolders() { return this._crawlSystemFolders.HasValue; } /// /// Gets and sets the property DocumentLibraryFieldMappings. /// /// A list of DataSourceToIndexFieldMapping objects that map attributes or /// field names of Alfresco document libraries to Amazon Kendra index field names. To /// create custom fields, use the UpdateIndex API before you map to Alfresco /// fields. For more information, see /// Mapping data source fields. The Alfresco data source field names must exist in /// your Alfresco custom metadata. /// /// [AWSProperty(Min=1, Max=100)] public List DocumentLibraryFieldMappings { get { return this._documentLibraryFieldMappings; } set { this._documentLibraryFieldMappings = value; } } // Check to see if DocumentLibraryFieldMappings property is set internal bool IsSetDocumentLibraryFieldMappings() { return this._documentLibraryFieldMappings != null && this._documentLibraryFieldMappings.Count > 0; } /// /// Gets and sets the property EntityFilter. /// /// Specify whether to index document libraries, wikis, or blogs. You can specify one /// or more of these options. /// /// [AWSProperty(Min=1, Max=3)] public List EntityFilter { get { return this._entityFilter; } set { this._entityFilter = value; } } // Check to see if EntityFilter property is set internal bool IsSetEntityFilter() { return this._entityFilter != null && this._entityFilter.Count > 0; } /// /// Gets and sets the property ExclusionPatterns. /// /// A list of regular expression patterns to exclude certain files in your Alfresco data /// source. 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 InclusionPatterns. /// /// A list of regular expression patterns to include certain files in your Alfresco data /// source. 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 SecretArn. /// /// The Amazon Resource Name (ARN) of an Secrets Manager secret that contains the key-value /// pairs required to connect to your Alfresco data source. The secret must contain a /// JSON structure with the following keys: /// ///
  • /// /// username—The user name of the Alfresco account. /// ///
  • /// /// password—The password of the Alfresco account. /// ///
///
[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 SiteId. /// /// The identifier of the Alfresco site. For example, my-site. /// /// [AWSProperty(Required=true, Min=1, Max=128)] public string SiteId { get { return this._siteId; } set { this._siteId = value; } } // Check to see if SiteId property is set internal bool IsSetSiteId() { return this._siteId != null; } /// /// Gets and sets the property SiteUrl. /// /// The URL of the Alfresco site. For example, https://hostname:8080. /// /// [AWSProperty(Required=true, Min=1, Max=2048)] public string SiteUrl { get { return this._siteUrl; } set { this._siteUrl = value; } } // Check to see if SiteUrl property is set internal bool IsSetSiteUrl() { return this._siteUrl != null; } /// /// Gets and sets the property SslCertificateS3Path. /// /// The path to the SSL certificate stored in an Amazon S3 bucket. You use this to connect /// to Alfresco if you require a secure SSL connection. /// /// /// /// You can simply generate a self-signed X509 certificate on any computer using OpenSSL. /// For an example of using OpenSSL to create an X509 certificate, see Create /// and sign an X509 certificate. /// /// [AWSProperty(Required=true)] public S3Path SslCertificateS3Path { get { return this._sslCertificateS3Path; } set { this._sslCertificateS3Path = value; } } // Check to see if SslCertificateS3Path property is set internal bool IsSetSslCertificateS3Path() { return this._sslCertificateS3Path != null; } /// /// Gets and sets the property VpcConfiguration. /// /// Configuration information for an Amazon Virtual Private Cloud to connect to your Alfresco. /// 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; } /// /// Gets and sets the property WikiFieldMappings. /// /// A list of DataSourceToIndexFieldMapping objects that map attributes or /// field names of Alfresco wikis to Amazon Kendra index field names. To create custom /// fields, use the UpdateIndex API before you map to Alfresco fields. For /// more information, see /// Mapping data source fields. The Alfresco data source field names must exist in /// your Alfresco custom metadata. /// /// [AWSProperty(Min=1, Max=100)] public List WikiFieldMappings { get { return this._wikiFieldMappings; } set { this._wikiFieldMappings = value; } } // Check to see if WikiFieldMappings property is set internal bool IsSetWikiFieldMappings() { return this._wikiFieldMappings != null && this._wikiFieldMappings.Count > 0; } } }