/** * 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 Amazon Kendra experience. * This includes the data source IDs and/or FAQ IDs, and user or group information * to grant access to your Amazon Kendra experience.

See Also:

AWS * API Reference

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

The identifiers of your data sources and FAQs. Or, you can specify that you * want to use documents indexed via the BatchPutDocument API. This is * the content you want to use for your Amazon Kendra experience.

*/ inline const ContentSourceConfiguration& GetContentSourceConfiguration() const{ return m_contentSourceConfiguration; } /** *

The identifiers of your data sources and FAQs. Or, you can specify that you * want to use documents indexed via the BatchPutDocument API. This is * the content you want to use for your Amazon Kendra experience.

*/ inline bool ContentSourceConfigurationHasBeenSet() const { return m_contentSourceConfigurationHasBeenSet; } /** *

The identifiers of your data sources and FAQs. Or, you can specify that you * want to use documents indexed via the BatchPutDocument API. This is * the content you want to use for your Amazon Kendra experience.

*/ inline void SetContentSourceConfiguration(const ContentSourceConfiguration& value) { m_contentSourceConfigurationHasBeenSet = true; m_contentSourceConfiguration = value; } /** *

The identifiers of your data sources and FAQs. Or, you can specify that you * want to use documents indexed via the BatchPutDocument API. This is * the content you want to use for your Amazon Kendra experience.

*/ inline void SetContentSourceConfiguration(ContentSourceConfiguration&& value) { m_contentSourceConfigurationHasBeenSet = true; m_contentSourceConfiguration = std::move(value); } /** *

The identifiers of your data sources and FAQs. Or, you can specify that you * want to use documents indexed via the BatchPutDocument API. This is * the content you want to use for your Amazon Kendra experience.

*/ inline ExperienceConfiguration& WithContentSourceConfiguration(const ContentSourceConfiguration& value) { SetContentSourceConfiguration(value); return *this;} /** *

The identifiers of your data sources and FAQs. Or, you can specify that you * want to use documents indexed via the BatchPutDocument API. This is * the content you want to use for your Amazon Kendra experience.

*/ inline ExperienceConfiguration& WithContentSourceConfiguration(ContentSourceConfiguration&& value) { SetContentSourceConfiguration(std::move(value)); return *this;} /** *

The IAM Identity Center field name that contains the identifiers of your * users, such as their emails.

*/ inline const UserIdentityConfiguration& GetUserIdentityConfiguration() const{ return m_userIdentityConfiguration; } /** *

The IAM Identity Center field name that contains the identifiers of your * users, such as their emails.

*/ inline bool UserIdentityConfigurationHasBeenSet() const { return m_userIdentityConfigurationHasBeenSet; } /** *

The IAM Identity Center field name that contains the identifiers of your * users, such as their emails.

*/ inline void SetUserIdentityConfiguration(const UserIdentityConfiguration& value) { m_userIdentityConfigurationHasBeenSet = true; m_userIdentityConfiguration = value; } /** *

The IAM Identity Center field name that contains the identifiers of your * users, such as their emails.

*/ inline void SetUserIdentityConfiguration(UserIdentityConfiguration&& value) { m_userIdentityConfigurationHasBeenSet = true; m_userIdentityConfiguration = std::move(value); } /** *

The IAM Identity Center field name that contains the identifiers of your * users, such as their emails.

*/ inline ExperienceConfiguration& WithUserIdentityConfiguration(const UserIdentityConfiguration& value) { SetUserIdentityConfiguration(value); return *this;} /** *

The IAM Identity Center field name that contains the identifiers of your * users, such as their emails.

*/ inline ExperienceConfiguration& WithUserIdentityConfiguration(UserIdentityConfiguration&& value) { SetUserIdentityConfiguration(std::move(value)); return *this;} private: ContentSourceConfiguration m_contentSourceConfiguration; bool m_contentSourceConfigurationHasBeenSet = false; UserIdentityConfiguration m_userIdentityConfiguration; bool m_userIdentityConfigurationHasBeenSet = false; }; } // namespace Model } // namespace kendra } // namespace Aws