/** * 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 { /** *

Provides the configuration information for your content sources, such as data * sources, FAQs, and content indexed directly via BatchPutDocument.

See * Also:

AWS * API Reference

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

The identifier of the data sources you want to use for your Amazon Kendra * experience.

*/ inline const Aws::Vector& GetDataSourceIds() const{ return m_dataSourceIds; } /** *

The identifier of the data sources you want to use for your Amazon Kendra * experience.

*/ inline bool DataSourceIdsHasBeenSet() const { return m_dataSourceIdsHasBeenSet; } /** *

The identifier of the data sources you want to use for your Amazon Kendra * experience.

*/ inline void SetDataSourceIds(const Aws::Vector& value) { m_dataSourceIdsHasBeenSet = true; m_dataSourceIds = value; } /** *

The identifier of the data sources you want to use for your Amazon Kendra * experience.

*/ inline void SetDataSourceIds(Aws::Vector&& value) { m_dataSourceIdsHasBeenSet = true; m_dataSourceIds = std::move(value); } /** *

The identifier of the data sources you want to use for your Amazon Kendra * experience.

*/ inline ContentSourceConfiguration& WithDataSourceIds(const Aws::Vector& value) { SetDataSourceIds(value); return *this;} /** *

The identifier of the data sources you want to use for your Amazon Kendra * experience.

*/ inline ContentSourceConfiguration& WithDataSourceIds(Aws::Vector&& value) { SetDataSourceIds(std::move(value)); return *this;} /** *

The identifier of the data sources you want to use for your Amazon Kendra * experience.

*/ inline ContentSourceConfiguration& AddDataSourceIds(const Aws::String& value) { m_dataSourceIdsHasBeenSet = true; m_dataSourceIds.push_back(value); return *this; } /** *

The identifier of the data sources you want to use for your Amazon Kendra * experience.

*/ inline ContentSourceConfiguration& AddDataSourceIds(Aws::String&& value) { m_dataSourceIdsHasBeenSet = true; m_dataSourceIds.push_back(std::move(value)); return *this; } /** *

The identifier of the data sources you want to use for your Amazon Kendra * experience.

*/ inline ContentSourceConfiguration& AddDataSourceIds(const char* value) { m_dataSourceIdsHasBeenSet = true; m_dataSourceIds.push_back(value); return *this; } /** *

The identifier of the FAQs that you want to use for your Amazon Kendra * experience.

*/ inline const Aws::Vector& GetFaqIds() const{ return m_faqIds; } /** *

The identifier of the FAQs that you want to use for your Amazon Kendra * experience.

*/ inline bool FaqIdsHasBeenSet() const { return m_faqIdsHasBeenSet; } /** *

The identifier of the FAQs that you want to use for your Amazon Kendra * experience.

*/ inline void SetFaqIds(const Aws::Vector& value) { m_faqIdsHasBeenSet = true; m_faqIds = value; } /** *

The identifier of the FAQs that you want to use for your Amazon Kendra * experience.

*/ inline void SetFaqIds(Aws::Vector&& value) { m_faqIdsHasBeenSet = true; m_faqIds = std::move(value); } /** *

The identifier of the FAQs that you want to use for your Amazon Kendra * experience.

*/ inline ContentSourceConfiguration& WithFaqIds(const Aws::Vector& value) { SetFaqIds(value); return *this;} /** *

The identifier of the FAQs that you want to use for your Amazon Kendra * experience.

*/ inline ContentSourceConfiguration& WithFaqIds(Aws::Vector&& value) { SetFaqIds(std::move(value)); return *this;} /** *

The identifier of the FAQs that you want to use for your Amazon Kendra * experience.

*/ inline ContentSourceConfiguration& AddFaqIds(const Aws::String& value) { m_faqIdsHasBeenSet = true; m_faqIds.push_back(value); return *this; } /** *

The identifier of the FAQs that you want to use for your Amazon Kendra * experience.

*/ inline ContentSourceConfiguration& AddFaqIds(Aws::String&& value) { m_faqIdsHasBeenSet = true; m_faqIds.push_back(std::move(value)); return *this; } /** *

The identifier of the FAQs that you want to use for your Amazon Kendra * experience.

*/ inline ContentSourceConfiguration& AddFaqIds(const char* value) { m_faqIdsHasBeenSet = true; m_faqIds.push_back(value); return *this; } /** *

TRUE to use documents you indexed directly using the * BatchPutDocument API.

*/ inline bool GetDirectPutContent() const{ return m_directPutContent; } /** *

TRUE to use documents you indexed directly using the * BatchPutDocument API.

*/ inline bool DirectPutContentHasBeenSet() const { return m_directPutContentHasBeenSet; } /** *

TRUE to use documents you indexed directly using the * BatchPutDocument API.

*/ inline void SetDirectPutContent(bool value) { m_directPutContentHasBeenSet = true; m_directPutContent = value; } /** *

TRUE to use documents you indexed directly using the * BatchPutDocument API.

*/ inline ContentSourceConfiguration& WithDirectPutContent(bool value) { SetDirectPutContent(value); return *this;} private: Aws::Vector m_dataSourceIds; bool m_dataSourceIdsHasBeenSet = false; Aws::Vector m_faqIds; bool m_faqIdsHasBeenSet = false; bool m_directPutContent; bool m_directPutContentHasBeenSet = false; }; } // namespace Model } // namespace kendra } // namespace Aws