/* * 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 Jira as your data source. /// public partial class JiraConfiguration { private List _attachmentFieldMappings = new List(); private List _commentFieldMappings = new List(); private List _exclusionPatterns = new List(); private List _inclusionPatterns = new List(); private List _issueFieldMappings = new List(); private List _issueSubEntityFilter = new List(); private List _issueType = new List(); private string _jiraAccountUrl; private List _project = new List(); private List _projectFieldMappings = new List(); private string _secretArn; private List _status = new List(); private bool? _useChangeLog; private DataSourceVpcConfiguration _vpcConfiguration; private List _workLogFieldMappings = new List(); /// /// Gets and sets the property AttachmentFieldMappings. /// /// A list of DataSourceToIndexFieldMapping objects that map attributes or /// field names of Jira attachments to Amazon Kendra index field names. To create custom /// fields, use the UpdateIndex API before you map to Jira fields. For more /// information, see /// Mapping data source fields. The Jira data source field names must exist in your /// Jira 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 CommentFieldMappings. /// /// A list of DataSourceToIndexFieldMapping objects that map attributes or /// field names of Jira comments to Amazon Kendra index field names. To create custom /// fields, use the UpdateIndex API before you map to Jira fields. For more /// information, see /// Mapping data source fields. The Jira data source field names must exist in your /// Jira custom metadata. /// /// [AWSProperty(Min=1, Max=100)] public List CommentFieldMappings { get { return this._commentFieldMappings; } set { this._commentFieldMappings = value; } } // Check to see if CommentFieldMappings property is set internal bool IsSetCommentFieldMappings() { return this._commentFieldMappings != null && this._commentFieldMappings.Count > 0; } /// /// Gets and sets the property ExclusionPatterns. /// /// A list of regular expression patterns to exclude certain file paths, file names, and /// file types in your Jira 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 file paths, file names, and /// file types in your Jira 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 IssueFieldMappings. /// /// A list of DataSourceToIndexFieldMapping objects that map attributes or /// field names of Jira issues to Amazon Kendra index field names. To create custom fields, /// use the UpdateIndex API before you map to Jira fields. For more information, /// see Mapping /// data source fields. The Jira data source field names must exist in your Jira custom /// metadata. /// /// [AWSProperty(Min=1, Max=100)] public List IssueFieldMappings { get { return this._issueFieldMappings; } set { this._issueFieldMappings = value; } } // Check to see if IssueFieldMappings property is set internal bool IsSetIssueFieldMappings() { return this._issueFieldMappings != null && this._issueFieldMappings.Count > 0; } /// /// Gets and sets the property IssueSubEntityFilter. /// /// Specify whether to crawl comments, attachments, and work logs. You can specify one /// or more of these options. /// /// [AWSProperty(Min=0, Max=3)] public List IssueSubEntityFilter { get { return this._issueSubEntityFilter; } set { this._issueSubEntityFilter = value; } } // Check to see if IssueSubEntityFilter property is set internal bool IsSetIssueSubEntityFilter() { return this._issueSubEntityFilter != null && this._issueSubEntityFilter.Count > 0; } /// /// Gets and sets the property IssueType. /// /// Specify which issue types to crawl in your Jira data source. You can specify one or /// more of these options to crawl. /// /// public List IssueType { get { return this._issueType; } set { this._issueType = value; } } // Check to see if IssueType property is set internal bool IsSetIssueType() { return this._issueType != null && this._issueType.Count > 0; } /// /// Gets and sets the property JiraAccountUrl. /// /// The URL of the Jira account. For example, company.atlassian.net. /// /// [AWSProperty(Required=true, Min=1, Max=2048)] public string JiraAccountUrl { get { return this._jiraAccountUrl; } set { this._jiraAccountUrl = value; } } // Check to see if JiraAccountUrl property is set internal bool IsSetJiraAccountUrl() { return this._jiraAccountUrl != null; } /// /// Gets and sets the property Project. /// /// Specify which projects to crawl in your Jira data source. You can specify one or more /// Jira project IDs. /// /// public List Project { get { return this._project; } set { this._project = value; } } // Check to see if Project property is set internal bool IsSetProject() { return this._project != null && this._project.Count > 0; } /// /// Gets and sets the property ProjectFieldMappings. /// /// A list of DataSourceToIndexFieldMapping objects that map attributes or /// field names of Jira projects to Amazon Kendra index field names. To create custom /// fields, use the UpdateIndex API before you map to Jira fields. For more /// information, see /// Mapping data source fields. The Jira data source field names must exist in your /// Jira custom metadata. /// /// [AWSProperty(Min=1, Max=100)] public List ProjectFieldMappings { get { return this._projectFieldMappings; } set { this._projectFieldMappings = value; } } // Check to see if ProjectFieldMappings property is set internal bool IsSetProjectFieldMappings() { return this._projectFieldMappings != null && this._projectFieldMappings.Count > 0; } /// /// Gets and sets the property SecretArn. /// /// The Amazon Resource Name (ARN) of a secret in Secrets Manager contains the key-value /// pairs required to connect to your Jira data source. The secret must contain a JSON /// structure with the following keys: /// ///
  • /// /// jiraId—The Jira user name or email. /// ///
  • /// /// jiraCredentials—The Jira API token. For more information, see Using /// a Jira data source. /// ///
///
[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 Status. /// /// Specify which statuses to crawl in your Jira data source. You can specify one or more /// of these options to crawl. /// /// public List Status { get { return this._status; } set { this._status = value; } } // Check to see if Status property is set internal bool IsSetStatus() { return this._status != null && this._status.Count > 0; } /// /// Gets and sets the property UseChangeLog. /// /// TRUE to use the Jira change log to determine which documents require /// updating in the index. Depending on the change log's size, it may take longer for /// Amazon Kendra to use the change log than to scan all of your documents in Jira. /// /// public bool UseChangeLog { get { return this._useChangeLog.GetValueOrDefault(); } set { this._useChangeLog = value; } } // Check to see if UseChangeLog property is set internal bool IsSetUseChangeLog() { return this._useChangeLog.HasValue; } /// /// Gets and sets the property VpcConfiguration. /// /// Configuration information for an Amazon Virtual Private Cloud to connect to your Jira. /// 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 WorkLogFieldMappings. /// /// A list of DataSourceToIndexFieldMapping objects that map attributes or /// field names of Jira work logs to Amazon Kendra index field names. To create custom /// fields, use the UpdateIndex API before you map to Jira fields. For more /// information, see /// Mapping data source fields. The Jira data source field names must exist in your /// Jira custom metadata. /// /// [AWSProperty(Min=1, Max=100)] public List WorkLogFieldMappings { get { return this._workLogFieldMappings; } set { this._workLogFieldMappings = value; } } // Check to see if WorkLogFieldMappings property is set internal bool IsSetWorkLogFieldMappings() { return this._workLogFieldMappings != null && this._workLogFieldMappings.Count > 0; } } }