/** * 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 to connect to Amazon WorkDocs as your * data source.

Amazon WorkDocs connector is available in Oregon, North * Virginia, Sydney, Singapore and Ireland regions.

See Also:

AWS * API Reference

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

The identifier of the directory corresponding to your Amazon WorkDocs site * repository.

You can find the organization ID in the Directory Service * by going to Active Directory, then Directories. Your Amazon * WorkDocs site directory has an ID, which is the organization ID. You can also * set up a new Amazon WorkDocs directory in the Directory Service console and * enable a Amazon WorkDocs site for the directory in the Amazon WorkDocs * console.

*/ inline const Aws::String& GetOrganizationId() const{ return m_organizationId; } /** *

The identifier of the directory corresponding to your Amazon WorkDocs site * repository.

You can find the organization ID in the Directory Service * by going to Active Directory, then Directories. Your Amazon * WorkDocs site directory has an ID, which is the organization ID. You can also * set up a new Amazon WorkDocs directory in the Directory Service console and * enable a Amazon WorkDocs site for the directory in the Amazon WorkDocs * console.

*/ inline bool OrganizationIdHasBeenSet() const { return m_organizationIdHasBeenSet; } /** *

The identifier of the directory corresponding to your Amazon WorkDocs site * repository.

You can find the organization ID in the Directory Service * by going to Active Directory, then Directories. Your Amazon * WorkDocs site directory has an ID, which is the organization ID. You can also * set up a new Amazon WorkDocs directory in the Directory Service console and * enable a Amazon WorkDocs site for the directory in the Amazon WorkDocs * console.

*/ inline void SetOrganizationId(const Aws::String& value) { m_organizationIdHasBeenSet = true; m_organizationId = value; } /** *

The identifier of the directory corresponding to your Amazon WorkDocs site * repository.

You can find the organization ID in the Directory Service * by going to Active Directory, then Directories. Your Amazon * WorkDocs site directory has an ID, which is the organization ID. You can also * set up a new Amazon WorkDocs directory in the Directory Service console and * enable a Amazon WorkDocs site for the directory in the Amazon WorkDocs * console.

*/ inline void SetOrganizationId(Aws::String&& value) { m_organizationIdHasBeenSet = true; m_organizationId = std::move(value); } /** *

The identifier of the directory corresponding to your Amazon WorkDocs site * repository.

You can find the organization ID in the Directory Service * by going to Active Directory, then Directories. Your Amazon * WorkDocs site directory has an ID, which is the organization ID. You can also * set up a new Amazon WorkDocs directory in the Directory Service console and * enable a Amazon WorkDocs site for the directory in the Amazon WorkDocs * console.

*/ inline void SetOrganizationId(const char* value) { m_organizationIdHasBeenSet = true; m_organizationId.assign(value); } /** *

The identifier of the directory corresponding to your Amazon WorkDocs site * repository.

You can find the organization ID in the Directory Service * by going to Active Directory, then Directories. Your Amazon * WorkDocs site directory has an ID, which is the organization ID. You can also * set up a new Amazon WorkDocs directory in the Directory Service console and * enable a Amazon WorkDocs site for the directory in the Amazon WorkDocs * console.

*/ inline WorkDocsConfiguration& WithOrganizationId(const Aws::String& value) { SetOrganizationId(value); return *this;} /** *

The identifier of the directory corresponding to your Amazon WorkDocs site * repository.

You can find the organization ID in the Directory Service * by going to Active Directory, then Directories. Your Amazon * WorkDocs site directory has an ID, which is the organization ID. You can also * set up a new Amazon WorkDocs directory in the Directory Service console and * enable a Amazon WorkDocs site for the directory in the Amazon WorkDocs * console.

*/ inline WorkDocsConfiguration& WithOrganizationId(Aws::String&& value) { SetOrganizationId(std::move(value)); return *this;} /** *

The identifier of the directory corresponding to your Amazon WorkDocs site * repository.

You can find the organization ID in the Directory Service * by going to Active Directory, then Directories. Your Amazon * WorkDocs site directory has an ID, which is the organization ID. You can also * set up a new Amazon WorkDocs directory in the Directory Service console and * enable a Amazon WorkDocs site for the directory in the Amazon WorkDocs * console.

*/ inline WorkDocsConfiguration& WithOrganizationId(const char* value) { SetOrganizationId(value); return *this;} /** *

TRUE to include comments on documents in your index. Including * comments in your index means each comment is a document that can be searched * on.

The default is set to FALSE.

*/ inline bool GetCrawlComments() const{ return m_crawlComments; } /** *

TRUE to include comments on documents in your index. Including * comments in your index means each comment is a document that can be searched * on.

The default is set to FALSE.

*/ inline bool CrawlCommentsHasBeenSet() const { return m_crawlCommentsHasBeenSet; } /** *

TRUE to include comments on documents in your index. Including * comments in your index means each comment is a document that can be searched * on.

The default is set to FALSE.

*/ inline void SetCrawlComments(bool value) { m_crawlCommentsHasBeenSet = true; m_crawlComments = value; } /** *

TRUE to include comments on documents in your index. Including * comments in your index means each comment is a document that can be searched * on.

The default is set to FALSE.

*/ inline WorkDocsConfiguration& WithCrawlComments(bool value) { SetCrawlComments(value); return *this;} /** *

TRUE to use the Amazon WorkDocs 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 Amazon WorkDocs.

*/ inline bool GetUseChangeLog() const{ return m_useChangeLog; } /** *

TRUE to use the Amazon WorkDocs 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 Amazon WorkDocs.

*/ inline bool UseChangeLogHasBeenSet() const { return m_useChangeLogHasBeenSet; } /** *

TRUE to use the Amazon WorkDocs 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 Amazon WorkDocs.

*/ inline void SetUseChangeLog(bool value) { m_useChangeLogHasBeenSet = true; m_useChangeLog = value; } /** *

TRUE to use the Amazon WorkDocs 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 Amazon WorkDocs.

*/ inline WorkDocsConfiguration& WithUseChangeLog(bool value) { SetUseChangeLog(value); return *this;} /** *

A list of regular expression patterns to include certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern * takes precedence and the file isn't included in the index.

*/ inline const Aws::Vector& GetInclusionPatterns() const{ return m_inclusionPatterns; } /** *

A list of regular expression patterns to include certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern * takes precedence and the file isn't included in the index.

*/ inline bool InclusionPatternsHasBeenSet() const { return m_inclusionPatternsHasBeenSet; } /** *

A list of regular expression patterns to include certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern * takes precedence and the file isn't included in the index.

*/ inline void SetInclusionPatterns(const Aws::Vector& value) { m_inclusionPatternsHasBeenSet = true; m_inclusionPatterns = value; } /** *

A list of regular expression patterns to include certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern * takes precedence and the file isn't included in the index.

*/ inline void SetInclusionPatterns(Aws::Vector&& value) { m_inclusionPatternsHasBeenSet = true; m_inclusionPatterns = std::move(value); } /** *

A list of regular expression patterns to include certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern * takes precedence and the file isn't included in the index.

*/ inline WorkDocsConfiguration& WithInclusionPatterns(const Aws::Vector& value) { SetInclusionPatterns(value); return *this;} /** *

A list of regular expression patterns to include certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern * takes precedence and the file isn't included in the index.

*/ inline WorkDocsConfiguration& WithInclusionPatterns(Aws::Vector&& value) { SetInclusionPatterns(std::move(value)); return *this;} /** *

A list of regular expression patterns to include certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern * takes precedence and the file isn't included in the index.

*/ inline WorkDocsConfiguration& AddInclusionPatterns(const Aws::String& value) { m_inclusionPatternsHasBeenSet = true; m_inclusionPatterns.push_back(value); return *this; } /** *

A list of regular expression patterns to include certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern * takes precedence and the file isn't included in the index.

*/ inline WorkDocsConfiguration& AddInclusionPatterns(Aws::String&& value) { m_inclusionPatternsHasBeenSet = true; m_inclusionPatterns.push_back(std::move(value)); return *this; } /** *

A list of regular expression patterns to include certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern * takes precedence and the file isn't included in the index.

*/ inline WorkDocsConfiguration& AddInclusionPatterns(const char* value) { m_inclusionPatternsHasBeenSet = true; m_inclusionPatterns.push_back(value); return *this; } /** *

A list of regular expression patterns to exclude certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern takes * precedence and the file isn't included in the index.

*/ inline const Aws::Vector& GetExclusionPatterns() const{ return m_exclusionPatterns; } /** *

A list of regular expression patterns to exclude certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern takes * precedence and the file isn't included in the index.

*/ inline bool ExclusionPatternsHasBeenSet() const { return m_exclusionPatternsHasBeenSet; } /** *

A list of regular expression patterns to exclude certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern takes * precedence and the file isn't included in the index.

*/ inline void SetExclusionPatterns(const Aws::Vector& value) { m_exclusionPatternsHasBeenSet = true; m_exclusionPatterns = value; } /** *

A list of regular expression patterns to exclude certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern takes * precedence and the file isn't included in the index.

*/ inline void SetExclusionPatterns(Aws::Vector&& value) { m_exclusionPatternsHasBeenSet = true; m_exclusionPatterns = std::move(value); } /** *

A list of regular expression patterns to exclude certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern takes * precedence and the file isn't included in the index.

*/ inline WorkDocsConfiguration& WithExclusionPatterns(const Aws::Vector& value) { SetExclusionPatterns(value); return *this;} /** *

A list of regular expression patterns to exclude certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern takes * precedence and the file isn't included in the index.

*/ inline WorkDocsConfiguration& WithExclusionPatterns(Aws::Vector&& value) { SetExclusionPatterns(std::move(value)); return *this;} /** *

A list of regular expression patterns to exclude certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern takes * precedence and the file isn't included in the index.

*/ inline WorkDocsConfiguration& AddExclusionPatterns(const Aws::String& value) { m_exclusionPatternsHasBeenSet = true; m_exclusionPatterns.push_back(value); return *this; } /** *

A list of regular expression patterns to exclude certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern takes * precedence and the file isn't included in the index.

*/ inline WorkDocsConfiguration& AddExclusionPatterns(Aws::String&& value) { m_exclusionPatternsHasBeenSet = true; m_exclusionPatterns.push_back(std::move(value)); return *this; } /** *

A list of regular expression patterns to exclude certain files in your Amazon * WorkDocs site repository. 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 and exclusion pattern, the exclusion pattern takes * precedence and the file isn't included in the index.

*/ inline WorkDocsConfiguration& AddExclusionPatterns(const char* value) { m_exclusionPatternsHasBeenSet = true; m_exclusionPatterns.push_back(value); return *this; } /** *

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

*/ inline WorkDocsConfiguration& AddFieldMappings(DataSourceToIndexFieldMapping&& value) { m_fieldMappingsHasBeenSet = true; m_fieldMappings.push_back(std::move(value)); return *this; } private: Aws::String m_organizationId; bool m_organizationIdHasBeenSet = false; bool m_crawlComments; bool m_crawlCommentsHasBeenSet = false; bool m_useChangeLog; bool m_useChangeLogHasBeenSet = false; Aws::Vector m_inclusionPatterns; bool m_inclusionPatternsHasBeenSet = false; Aws::Vector m_exclusionPatterns; bool m_exclusionPatternsHasBeenSet = false; Aws::Vector m_fieldMappings; bool m_fieldMappingsHasBeenSet = false; }; } // namespace Model } // namespace kendra } // namespace Aws