/** * 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 blog settings for the Confluence data source. Blogs are * always indexed unless filtered from the index by the * ExclusionPatterns or InclusionPatterns fields in the * ConfluenceConfiguration object.

See Also:

AWS * API Reference

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

Maps attributes or field names of Confluence blogs 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 * BlogFieldMappings parameter, you must specify at least one field * mapping.

*/ inline const Aws::Vector& GetBlogFieldMappings() const{ return m_blogFieldMappings; } /** *

Maps attributes or field names of Confluence blogs 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 * BlogFieldMappings parameter, you must specify at least one field * mapping.

*/ inline bool BlogFieldMappingsHasBeenSet() const { return m_blogFieldMappingsHasBeenSet; } /** *

Maps attributes or field names of Confluence blogs 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 * BlogFieldMappings parameter, you must specify at least one field * mapping.

*/ inline void SetBlogFieldMappings(const Aws::Vector& value) { m_blogFieldMappingsHasBeenSet = true; m_blogFieldMappings = value; } /** *

Maps attributes or field names of Confluence blogs 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 * BlogFieldMappings parameter, you must specify at least one field * mapping.

*/ inline void SetBlogFieldMappings(Aws::Vector&& value) { m_blogFieldMappingsHasBeenSet = true; m_blogFieldMappings = std::move(value); } /** *

Maps attributes or field names of Confluence blogs 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 * BlogFieldMappings parameter, you must specify at least one field * mapping.

*/ inline ConfluenceBlogConfiguration& WithBlogFieldMappings(const Aws::Vector& value) { SetBlogFieldMappings(value); return *this;} /** *

Maps attributes or field names of Confluence blogs 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 * BlogFieldMappings parameter, you must specify at least one field * mapping.

*/ inline ConfluenceBlogConfiguration& WithBlogFieldMappings(Aws::Vector&& value) { SetBlogFieldMappings(std::move(value)); return *this;} /** *

Maps attributes or field names of Confluence blogs 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 * BlogFieldMappings parameter, you must specify at least one field * mapping.

*/ inline ConfluenceBlogConfiguration& AddBlogFieldMappings(const ConfluenceBlogToIndexFieldMapping& value) { m_blogFieldMappingsHasBeenSet = true; m_blogFieldMappings.push_back(value); return *this; } /** *

Maps attributes or field names of Confluence blogs 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 * BlogFieldMappings parameter, you must specify at least one field * mapping.

*/ inline ConfluenceBlogConfiguration& AddBlogFieldMappings(ConfluenceBlogToIndexFieldMapping&& value) { m_blogFieldMappingsHasBeenSet = true; m_blogFieldMappings.push_back(std::move(value)); return *this; } private: Aws::Vector m_blogFieldMappings; bool m_blogFieldMappingsHasBeenSet = false; }; } // namespace Model } // namespace kendra } // namespace Aws