/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace kendra { namespace Model { /** *

Provides the configuration information for crawling service catalog items in * the ServiceNow site

See Also:

AWS * API Reference

*/ class ServiceNowServiceCatalogConfiguration { public: AWS_KENDRA_API ServiceNowServiceCatalogConfiguration(); AWS_KENDRA_API ServiceNowServiceCatalogConfiguration(Aws::Utils::Json::JsonView jsonValue); AWS_KENDRA_API ServiceNowServiceCatalogConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_KENDRA_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

TRUE to index attachments to service catalog items.

*/ inline bool GetCrawlAttachments() const{ return m_crawlAttachments; } /** *

TRUE to index attachments to service catalog items.

*/ inline bool CrawlAttachmentsHasBeenSet() const { return m_crawlAttachmentsHasBeenSet; } /** *

TRUE to index attachments to service catalog items.

*/ inline void SetCrawlAttachments(bool value) { m_crawlAttachmentsHasBeenSet = true; m_crawlAttachments = value; } /** *

TRUE to index attachments to service catalog items.

*/ inline ServiceNowServiceCatalogConfiguration& WithCrawlAttachments(bool value) { SetCrawlAttachments(value); return *this;} /** *

A list of regular expression patterns to include certain attachments of * catalogs in your ServiceNow. Item that match the patterns are included in the * index. Items that don't match the patterns are excluded from the index. If an * item matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the item isn't included in the index.

The regex is * applied to the file name of the attachment.

*/ inline const Aws::Vector& GetIncludeAttachmentFilePatterns() const{ return m_includeAttachmentFilePatterns; } /** *

A list of regular expression patterns to include certain attachments of * catalogs in your ServiceNow. Item that match the patterns are included in the * index. Items that don't match the patterns are excluded from the index. If an * item matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the item isn't included in the index.

The regex is * applied to the file name of the attachment.

*/ inline bool IncludeAttachmentFilePatternsHasBeenSet() const { return m_includeAttachmentFilePatternsHasBeenSet; } /** *

A list of regular expression patterns to include certain attachments of * catalogs in your ServiceNow. Item that match the patterns are included in the * index. Items that don't match the patterns are excluded from the index. If an * item matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the item isn't included in the index.

The regex is * applied to the file name of the attachment.

*/ inline void SetIncludeAttachmentFilePatterns(const Aws::Vector& value) { m_includeAttachmentFilePatternsHasBeenSet = true; m_includeAttachmentFilePatterns = value; } /** *

A list of regular expression patterns to include certain attachments of * catalogs in your ServiceNow. Item that match the patterns are included in the * index. Items that don't match the patterns are excluded from the index. If an * item matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the item isn't included in the index.

The regex is * applied to the file name of the attachment.

*/ inline void SetIncludeAttachmentFilePatterns(Aws::Vector&& value) { m_includeAttachmentFilePatternsHasBeenSet = true; m_includeAttachmentFilePatterns = std::move(value); } /** *

A list of regular expression patterns to include certain attachments of * catalogs in your ServiceNow. Item that match the patterns are included in the * index. Items that don't match the patterns are excluded from the index. If an * item matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the item isn't included in the index.

The regex is * applied to the file name of the attachment.

*/ inline ServiceNowServiceCatalogConfiguration& WithIncludeAttachmentFilePatterns(const Aws::Vector& value) { SetIncludeAttachmentFilePatterns(value); return *this;} /** *

A list of regular expression patterns to include certain attachments of * catalogs in your ServiceNow. Item that match the patterns are included in the * index. Items that don't match the patterns are excluded from the index. If an * item matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the item isn't included in the index.

The regex is * applied to the file name of the attachment.

*/ inline ServiceNowServiceCatalogConfiguration& WithIncludeAttachmentFilePatterns(Aws::Vector&& value) { SetIncludeAttachmentFilePatterns(std::move(value)); return *this;} /** *

A list of regular expression patterns to include certain attachments of * catalogs in your ServiceNow. Item that match the patterns are included in the * index. Items that don't match the patterns are excluded from the index. If an * item matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the item isn't included in the index.

The regex is * applied to the file name of the attachment.

*/ inline ServiceNowServiceCatalogConfiguration& AddIncludeAttachmentFilePatterns(const Aws::String& value) { m_includeAttachmentFilePatternsHasBeenSet = true; m_includeAttachmentFilePatterns.push_back(value); return *this; } /** *

A list of regular expression patterns to include certain attachments of * catalogs in your ServiceNow. Item that match the patterns are included in the * index. Items that don't match the patterns are excluded from the index. If an * item matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the item isn't included in the index.

The regex is * applied to the file name of the attachment.

*/ inline ServiceNowServiceCatalogConfiguration& AddIncludeAttachmentFilePatterns(Aws::String&& value) { m_includeAttachmentFilePatternsHasBeenSet = true; m_includeAttachmentFilePatterns.push_back(std::move(value)); return *this; } /** *

A list of regular expression patterns to include certain attachments of * catalogs in your ServiceNow. Item that match the patterns are included in the * index. Items that don't match the patterns are excluded from the index. If an * item matches both an inclusion and exclusion pattern, the exclusion pattern * takes precedence and the item isn't included in the index.

The regex is * applied to the file name of the attachment.

*/ inline ServiceNowServiceCatalogConfiguration& AddIncludeAttachmentFilePatterns(const char* value) { m_includeAttachmentFilePatternsHasBeenSet = true; m_includeAttachmentFilePatterns.push_back(value); return *this; } /** *

A list of regular expression patterns to exclude certain attachments of * catalogs in your ServiceNow. Item that match the patterns are excluded from the * index. Items that don't match the patterns are included in the index. If an item * matches both an inclusion and exclusion pattern, the exclusion pattern takes * precedence and the item isn't included in the index.

The regex is applied * to the file name of the attachment.

*/ inline const Aws::Vector& GetExcludeAttachmentFilePatterns() const{ return m_excludeAttachmentFilePatterns; } /** *

A list of regular expression patterns to exclude certain attachments of * catalogs in your ServiceNow. Item that match the patterns are excluded from the * index. Items that don't match the patterns are included in the index. If an item * matches both an inclusion and exclusion pattern, the exclusion pattern takes * precedence and the item isn't included in the index.

The regex is applied * to the file name of the attachment.

*/ inline bool ExcludeAttachmentFilePatternsHasBeenSet() const { return m_excludeAttachmentFilePatternsHasBeenSet; } /** *

A list of regular expression patterns to exclude certain attachments of * catalogs in your ServiceNow. Item that match the patterns are excluded from the * index. Items that don't match the patterns are included in the index. If an item * matches both an inclusion and exclusion pattern, the exclusion pattern takes * precedence and the item isn't included in the index.

The regex is applied * to the file name of the attachment.

*/ inline void SetExcludeAttachmentFilePatterns(const Aws::Vector& value) { m_excludeAttachmentFilePatternsHasBeenSet = true; m_excludeAttachmentFilePatterns = value; } /** *

A list of regular expression patterns to exclude certain attachments of * catalogs in your ServiceNow. Item that match the patterns are excluded from the * index. Items that don't match the patterns are included in the index. If an item * matches both an inclusion and exclusion pattern, the exclusion pattern takes * precedence and the item isn't included in the index.

The regex is applied * to the file name of the attachment.

*/ inline void SetExcludeAttachmentFilePatterns(Aws::Vector&& value) { m_excludeAttachmentFilePatternsHasBeenSet = true; m_excludeAttachmentFilePatterns = std::move(value); } /** *

A list of regular expression patterns to exclude certain attachments of * catalogs in your ServiceNow. Item that match the patterns are excluded from the * index. Items that don't match the patterns are included in the index. If an item * matches both an inclusion and exclusion pattern, the exclusion pattern takes * precedence and the item isn't included in the index.

The regex is applied * to the file name of the attachment.

*/ inline ServiceNowServiceCatalogConfiguration& WithExcludeAttachmentFilePatterns(const Aws::Vector& value) { SetExcludeAttachmentFilePatterns(value); return *this;} /** *

A list of regular expression patterns to exclude certain attachments of * catalogs in your ServiceNow. Item that match the patterns are excluded from the * index. Items that don't match the patterns are included in the index. If an item * matches both an inclusion and exclusion pattern, the exclusion pattern takes * precedence and the item isn't included in the index.

The regex is applied * to the file name of the attachment.

*/ inline ServiceNowServiceCatalogConfiguration& WithExcludeAttachmentFilePatterns(Aws::Vector&& value) { SetExcludeAttachmentFilePatterns(std::move(value)); return *this;} /** *

A list of regular expression patterns to exclude certain attachments of * catalogs in your ServiceNow. Item that match the patterns are excluded from the * index. Items that don't match the patterns are included in the index. If an item * matches both an inclusion and exclusion pattern, the exclusion pattern takes * precedence and the item isn't included in the index.

The regex is applied * to the file name of the attachment.

*/ inline ServiceNowServiceCatalogConfiguration& AddExcludeAttachmentFilePatterns(const Aws::String& value) { m_excludeAttachmentFilePatternsHasBeenSet = true; m_excludeAttachmentFilePatterns.push_back(value); return *this; } /** *

A list of regular expression patterns to exclude certain attachments of * catalogs in your ServiceNow. Item that match the patterns are excluded from the * index. Items that don't match the patterns are included in the index. If an item * matches both an inclusion and exclusion pattern, the exclusion pattern takes * precedence and the item isn't included in the index.

The regex is applied * to the file name of the attachment.

*/ inline ServiceNowServiceCatalogConfiguration& AddExcludeAttachmentFilePatterns(Aws::String&& value) { m_excludeAttachmentFilePatternsHasBeenSet = true; m_excludeAttachmentFilePatterns.push_back(std::move(value)); return *this; } /** *

A list of regular expression patterns to exclude certain attachments of * catalogs in your ServiceNow. Item that match the patterns are excluded from the * index. Items that don't match the patterns are included in the index. If an item * matches both an inclusion and exclusion pattern, the exclusion pattern takes * precedence and the item isn't included in the index.

The regex is applied * to the file name of the attachment.

*/ inline ServiceNowServiceCatalogConfiguration& AddExcludeAttachmentFilePatterns(const char* value) { m_excludeAttachmentFilePatternsHasBeenSet = true; m_excludeAttachmentFilePatterns.push_back(value); return *this; } /** *

The name of the ServiceNow field that is mapped to the index document * contents field in the Amazon Kendra index.

*/ inline const Aws::String& GetDocumentDataFieldName() const{ return m_documentDataFieldName; } /** *

The name of the ServiceNow field that is mapped to the index document * contents field in the Amazon Kendra index.

*/ inline bool DocumentDataFieldNameHasBeenSet() const { return m_documentDataFieldNameHasBeenSet; } /** *

The name of the ServiceNow field that is mapped to the index document * contents field in the Amazon Kendra index.

*/ inline void SetDocumentDataFieldName(const Aws::String& value) { m_documentDataFieldNameHasBeenSet = true; m_documentDataFieldName = value; } /** *

The name of the ServiceNow field that is mapped to the index document * contents field in the Amazon Kendra index.

*/ inline void SetDocumentDataFieldName(Aws::String&& value) { m_documentDataFieldNameHasBeenSet = true; m_documentDataFieldName = std::move(value); } /** *

The name of the ServiceNow field that is mapped to the index document * contents field in the Amazon Kendra index.

*/ inline void SetDocumentDataFieldName(const char* value) { m_documentDataFieldNameHasBeenSet = true; m_documentDataFieldName.assign(value); } /** *

The name of the ServiceNow field that is mapped to the index document * contents field in the Amazon Kendra index.

*/ inline ServiceNowServiceCatalogConfiguration& WithDocumentDataFieldName(const Aws::String& value) { SetDocumentDataFieldName(value); return *this;} /** *

The name of the ServiceNow field that is mapped to the index document * contents field in the Amazon Kendra index.

*/ inline ServiceNowServiceCatalogConfiguration& WithDocumentDataFieldName(Aws::String&& value) { SetDocumentDataFieldName(std::move(value)); return *this;} /** *

The name of the ServiceNow field that is mapped to the index document * contents field in the Amazon Kendra index.

*/ inline ServiceNowServiceCatalogConfiguration& WithDocumentDataFieldName(const char* value) { SetDocumentDataFieldName(value); return *this;} /** *

The name of the ServiceNow field that is mapped to the index document title * field.

*/ inline const Aws::String& GetDocumentTitleFieldName() const{ return m_documentTitleFieldName; } /** *

The name of the ServiceNow field that is mapped to the index document title * field.

*/ inline bool DocumentTitleFieldNameHasBeenSet() const { return m_documentTitleFieldNameHasBeenSet; } /** *

The name of the ServiceNow field that is mapped to the index document title * field.

*/ inline void SetDocumentTitleFieldName(const Aws::String& value) { m_documentTitleFieldNameHasBeenSet = true; m_documentTitleFieldName = value; } /** *

The name of the ServiceNow field that is mapped to the index document title * field.

*/ inline void SetDocumentTitleFieldName(Aws::String&& value) { m_documentTitleFieldNameHasBeenSet = true; m_documentTitleFieldName = std::move(value); } /** *

The name of the ServiceNow field that is mapped to the index document title * field.

*/ inline void SetDocumentTitleFieldName(const char* value) { m_documentTitleFieldNameHasBeenSet = true; m_documentTitleFieldName.assign(value); } /** *

The name of the ServiceNow field that is mapped to the index document title * field.

*/ inline ServiceNowServiceCatalogConfiguration& WithDocumentTitleFieldName(const Aws::String& value) { SetDocumentTitleFieldName(value); return *this;} /** *

The name of the ServiceNow field that is mapped to the index document title * field.

*/ inline ServiceNowServiceCatalogConfiguration& WithDocumentTitleFieldName(Aws::String&& value) { SetDocumentTitleFieldName(std::move(value)); return *this;} /** *

The name of the ServiceNow field that is mapped to the index document title * field.

*/ inline ServiceNowServiceCatalogConfiguration& WithDocumentTitleFieldName(const char* value) { SetDocumentTitleFieldName(value); return *this;} /** *

Maps attributes or field names of catalogs to Amazon Kendra index field * names. To create custom fields, use the UpdateIndex API before you * map to ServiceNow fields. For more information, see Mapping * data source fields. The ServiceNow data source field names must exist in * your ServiceNow custom metadata.

*/ inline const Aws::Vector& GetFieldMappings() const{ return m_fieldMappings; } /** *

Maps attributes or field names of catalogs to Amazon Kendra index field * names. To create custom fields, use the UpdateIndex API before you * map to ServiceNow fields. For more information, see Mapping * data source fields. The ServiceNow data source field names must exist in * your ServiceNow custom metadata.

*/ inline bool FieldMappingsHasBeenSet() const { return m_fieldMappingsHasBeenSet; } /** *

Maps attributes or field names of catalogs to Amazon Kendra index field * names. To create custom fields, use the UpdateIndex API before you * map to ServiceNow fields. For more information, see Mapping * data source fields. The ServiceNow data source field names must exist in * your ServiceNow custom metadata.

*/ inline void SetFieldMappings(const Aws::Vector& value) { m_fieldMappingsHasBeenSet = true; m_fieldMappings = value; } /** *

Maps attributes or field names of catalogs to Amazon Kendra index field * names. To create custom fields, use the UpdateIndex API before you * map to ServiceNow fields. For more information, see Mapping * data source fields. The ServiceNow data source field names must exist in * your ServiceNow custom metadata.

*/ inline void SetFieldMappings(Aws::Vector&& value) { m_fieldMappingsHasBeenSet = true; m_fieldMappings = std::move(value); } /** *

Maps attributes or field names of catalogs to Amazon Kendra index field * names. To create custom fields, use the UpdateIndex API before you * map to ServiceNow fields. For more information, see Mapping * data source fields. The ServiceNow data source field names must exist in * your ServiceNow custom metadata.

*/ inline ServiceNowServiceCatalogConfiguration& WithFieldMappings(const Aws::Vector& value) { SetFieldMappings(value); return *this;} /** *

Maps attributes or field names of catalogs to Amazon Kendra index field * names. To create custom fields, use the UpdateIndex API before you * map to ServiceNow fields. For more information, see Mapping * data source fields. The ServiceNow data source field names must exist in * your ServiceNow custom metadata.

*/ inline ServiceNowServiceCatalogConfiguration& WithFieldMappings(Aws::Vector&& value) { SetFieldMappings(std::move(value)); return *this;} /** *

Maps attributes or field names of catalogs to Amazon Kendra index field * names. To create custom fields, use the UpdateIndex API before you * map to ServiceNow fields. For more information, see Mapping * data source fields. The ServiceNow data source field names must exist in * your ServiceNow custom metadata.

*/ inline ServiceNowServiceCatalogConfiguration& AddFieldMappings(const DataSourceToIndexFieldMapping& value) { m_fieldMappingsHasBeenSet = true; m_fieldMappings.push_back(value); return *this; } /** *

Maps attributes or field names of catalogs to Amazon Kendra index field * names. To create custom fields, use the UpdateIndex API before you * map to ServiceNow fields. For more information, see Mapping * data source fields. The ServiceNow data source field names must exist in * your ServiceNow custom metadata.

*/ inline ServiceNowServiceCatalogConfiguration& AddFieldMappings(DataSourceToIndexFieldMapping&& value) { m_fieldMappingsHasBeenSet = true; m_fieldMappings.push_back(std::move(value)); return *this; } private: bool m_crawlAttachments; bool m_crawlAttachmentsHasBeenSet = false; Aws::Vector m_includeAttachmentFilePatterns; bool m_includeAttachmentFilePatternsHasBeenSet = false; Aws::Vector m_excludeAttachmentFilePatterns; bool m_excludeAttachmentFilePatternsHasBeenSet = false; Aws::String m_documentDataFieldName; bool m_documentDataFieldNameHasBeenSet = false; Aws::String m_documentTitleFieldName; bool m_documentTitleFieldNameHasBeenSet = false; Aws::Vector m_fieldMappings; bool m_fieldMappingsHasBeenSet = false; }; } // namespace Model } // namespace kendra } // namespace Aws