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

Configuration of the page settings for the Confluence data * source.

See Also:

AWS * API Reference

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

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

If you specify the * PageFieldMappings parameter, you must specify at least one field * mapping.

*/ inline const Aws::Vector& GetPageFieldMappings() const{ return m_pageFieldMappings; } /** *

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

If you specify the * PageFieldMappings parameter, you must specify at least one field * mapping.

*/ inline bool PageFieldMappingsHasBeenSet() const { return m_pageFieldMappingsHasBeenSet; } /** *

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

If you specify the * PageFieldMappings parameter, you must specify at least one field * mapping.

*/ inline void SetPageFieldMappings(const Aws::Vector& value) { m_pageFieldMappingsHasBeenSet = true; m_pageFieldMappings = value; } /** *

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

If you specify the * PageFieldMappings parameter, you must specify at least one field * mapping.

*/ inline void SetPageFieldMappings(Aws::Vector&& value) { m_pageFieldMappingsHasBeenSet = true; m_pageFieldMappings = std::move(value); } /** *

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

If you specify the * PageFieldMappings parameter, you must specify at least one field * mapping.

*/ inline ConfluencePageConfiguration& WithPageFieldMappings(const Aws::Vector& value) { SetPageFieldMappings(value); return *this;} /** *

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

If you specify the * PageFieldMappings parameter, you must specify at least one field * mapping.

*/ inline ConfluencePageConfiguration& WithPageFieldMappings(Aws::Vector&& value) { SetPageFieldMappings(std::move(value)); return *this;} /** *

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

If you specify the * PageFieldMappings parameter, you must specify at least one field * mapping.

*/ inline ConfluencePageConfiguration& AddPageFieldMappings(const ConfluencePageToIndexFieldMapping& value) { m_pageFieldMappingsHasBeenSet = true; m_pageFieldMappings.push_back(value); return *this; } /** *

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

If you specify the * PageFieldMappings parameter, you must specify at least one field * mapping.

*/ inline ConfluencePageConfiguration& AddPageFieldMappings(ConfluencePageToIndexFieldMapping&& value) { m_pageFieldMappingsHasBeenSet = true; m_pageFieldMappings.push_back(std::move(value)); return *this; } private: Aws::Vector m_pageFieldMappings; bool m_pageFieldMappingsHasBeenSet = false; }; } // namespace Model } // namespace kendra } // namespace Aws