/* * 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 Salesforce as your data source. /// public partial class SalesforceConfiguration { private SalesforceChatterFeedConfiguration _chatterFeedConfiguration; private bool? _crawlAttachments; private List _excludeAttachmentFilePatterns = new List(); private List _includeAttachmentFilePatterns = new List(); private SalesforceKnowledgeArticleConfiguration _knowledgeArticleConfiguration; private string _secretArn; private string _serverUrl; private SalesforceStandardObjectAttachmentConfiguration _standardObjectAttachmentConfiguration; private List _standardObjectConfigurations = new List(); /// /// Gets and sets the property ChatterFeedConfiguration. /// /// Configuration information for Salesforce chatter feeds. /// /// public SalesforceChatterFeedConfiguration ChatterFeedConfiguration { get { return this._chatterFeedConfiguration; } set { this._chatterFeedConfiguration = value; } } // Check to see if ChatterFeedConfiguration property is set internal bool IsSetChatterFeedConfiguration() { return this._chatterFeedConfiguration != null; } /// /// Gets and sets the property CrawlAttachments. /// /// Indicates whether Amazon Kendra should index attachments to Salesforce objects. /// /// 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 ExcludeAttachmentFilePatterns. /// /// A list of regular expression patterns to exclude certain documents in your Salesforce. /// Documents that match the patterns are excluded from the index. Documents that don't /// match the patterns are included in the index. If a document matches both an inclusion /// and exclusion pattern, the exclusion pattern takes precedence and the document isn't /// included in the index. /// /// /// /// The pattern is applied to the name of the attached file. /// /// [AWSProperty(Min=0, Max=250)] public List ExcludeAttachmentFilePatterns { get { return this._excludeAttachmentFilePatterns; } set { this._excludeAttachmentFilePatterns = value; } } // Check to see if ExcludeAttachmentFilePatterns property is set internal bool IsSetExcludeAttachmentFilePatterns() { return this._excludeAttachmentFilePatterns != null && this._excludeAttachmentFilePatterns.Count > 0; } /// /// Gets and sets the property IncludeAttachmentFilePatterns. /// /// A list of regular expression patterns to include certain documents in your Salesforce. /// Documents that match the patterns are included in the index. Documents that don't /// match the patterns are excluded from the index. If a document matches both an inclusion /// and exclusion pattern, the exclusion pattern takes precedence and the document isn't /// included in the index. /// /// /// /// The pattern is applied to the name of the attached file. /// /// [AWSProperty(Min=0, Max=250)] public List IncludeAttachmentFilePatterns { get { return this._includeAttachmentFilePatterns; } set { this._includeAttachmentFilePatterns = value; } } // Check to see if IncludeAttachmentFilePatterns property is set internal bool IsSetIncludeAttachmentFilePatterns() { return this._includeAttachmentFilePatterns != null && this._includeAttachmentFilePatterns.Count > 0; } /// /// Gets and sets the property KnowledgeArticleConfiguration. /// /// Configuration information for the knowledge article types that Amazon Kendra indexes. /// Amazon Kendra indexes standard knowledge articles and the standard fields of knowledge /// articles, or the custom fields of custom knowledge articles, but not both. /// /// public SalesforceKnowledgeArticleConfiguration KnowledgeArticleConfiguration { get { return this._knowledgeArticleConfiguration; } set { this._knowledgeArticleConfiguration = value; } } // Check to see if KnowledgeArticleConfiguration property is set internal bool IsSetKnowledgeArticleConfiguration() { return this._knowledgeArticleConfiguration != null; } /// /// Gets and sets the property SecretArn. /// /// The Amazon Resource Name (ARN) of an Secrets Managersecret that contains the key/value /// pairs required to connect to your Salesforce instance. The secret must contain a JSON /// structure with the following keys: /// ///
  • /// /// authenticationUrl - The OAUTH endpoint that Amazon Kendra connects to get an OAUTH /// token. /// ///
  • /// /// consumerKey - The application public key generated when you created your Salesforce /// application. /// ///
  • /// /// consumerSecret - The application private key generated when you created your Salesforce /// application. /// ///
  • /// /// password - The password associated with the user logging in to the Salesforce instance. /// ///
  • /// /// securityToken - The token associated with the user logging in to the Salesforce instance. /// ///
  • /// /// username - The user name of the user logging in to the Salesforce instance. /// ///
///
[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 ServerUrl. /// /// The instance URL for the Salesforce site that you want to index. /// /// [AWSProperty(Required=true, Min=1, Max=2048)] public string ServerUrl { get { return this._serverUrl; } set { this._serverUrl = value; } } // Check to see if ServerUrl property is set internal bool IsSetServerUrl() { return this._serverUrl != null; } /// /// Gets and sets the property StandardObjectAttachmentConfiguration. /// /// Configuration information for processing attachments to Salesforce standard objects. /// /// /// public SalesforceStandardObjectAttachmentConfiguration StandardObjectAttachmentConfiguration { get { return this._standardObjectAttachmentConfiguration; } set { this._standardObjectAttachmentConfiguration = value; } } // Check to see if StandardObjectAttachmentConfiguration property is set internal bool IsSetStandardObjectAttachmentConfiguration() { return this._standardObjectAttachmentConfiguration != null; } /// /// Gets and sets the property StandardObjectConfigurations. /// /// Configuration of the Salesforce standard objects that Amazon Kendra indexes. /// /// [AWSProperty(Min=1, Max=17)] public List StandardObjectConfigurations { get { return this._standardObjectConfigurations; } set { this._standardObjectConfigurations = value; } } // Check to see if StandardObjectConfigurations property is set internal bool IsSetStandardObjectConfigurations() { return this._standardObjectConfigurations != null && this._standardObjectConfigurations.Count > 0; } } }