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

Provides configuration information for the * AMAZON.KendraSearchIntent intent. When you use this intent, Amazon * Lex searches the specified Amazon Kendra index and returns documents from the * index that match the user's utterance.

See Also:

AWS * API Reference

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

The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the * AMAZON.KendraSearchIntent intent to search. The index must be in * the same account and Region as the Amazon Lex bot.

*/ inline const Aws::String& GetKendraIndex() const{ return m_kendraIndex; } /** *

The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the * AMAZON.KendraSearchIntent intent to search. The index must be in * the same account and Region as the Amazon Lex bot.

*/ inline bool KendraIndexHasBeenSet() const { return m_kendraIndexHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the * AMAZON.KendraSearchIntent intent to search. The index must be in * the same account and Region as the Amazon Lex bot.

*/ inline void SetKendraIndex(const Aws::String& value) { m_kendraIndexHasBeenSet = true; m_kendraIndex = value; } /** *

The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the * AMAZON.KendraSearchIntent intent to search. The index must be in * the same account and Region as the Amazon Lex bot.

*/ inline void SetKendraIndex(Aws::String&& value) { m_kendraIndexHasBeenSet = true; m_kendraIndex = std::move(value); } /** *

The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the * AMAZON.KendraSearchIntent intent to search. The index must be in * the same account and Region as the Amazon Lex bot.

*/ inline void SetKendraIndex(const char* value) { m_kendraIndexHasBeenSet = true; m_kendraIndex.assign(value); } /** *

The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the * AMAZON.KendraSearchIntent intent to search. The index must be in * the same account and Region as the Amazon Lex bot.

*/ inline KendraConfiguration& WithKendraIndex(const Aws::String& value) { SetKendraIndex(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the * AMAZON.KendraSearchIntent intent to search. The index must be in * the same account and Region as the Amazon Lex bot.

*/ inline KendraConfiguration& WithKendraIndex(Aws::String&& value) { SetKendraIndex(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the * AMAZON.KendraSearchIntent intent to search. The index must be in * the same account and Region as the Amazon Lex bot.

*/ inline KendraConfiguration& WithKendraIndex(const char* value) { SetKendraIndex(value); return *this;} /** *

Determines whether the AMAZON.KendraSearchIntent intent uses a * custom query string to query the Amazon Kendra index.

*/ inline bool GetQueryFilterStringEnabled() const{ return m_queryFilterStringEnabled; } /** *

Determines whether the AMAZON.KendraSearchIntent intent uses a * custom query string to query the Amazon Kendra index.

*/ inline bool QueryFilterStringEnabledHasBeenSet() const { return m_queryFilterStringEnabledHasBeenSet; } /** *

Determines whether the AMAZON.KendraSearchIntent intent uses a * custom query string to query the Amazon Kendra index.

*/ inline void SetQueryFilterStringEnabled(bool value) { m_queryFilterStringEnabledHasBeenSet = true; m_queryFilterStringEnabled = value; } /** *

Determines whether the AMAZON.KendraSearchIntent intent uses a * custom query string to query the Amazon Kendra index.

*/ inline KendraConfiguration& WithQueryFilterStringEnabled(bool value) { SetQueryFilterStringEnabled(value); return *this;} /** *

A query filter that Amazon Lex sends to Amazon Kendra to filter the response * from a query. The filter is in the format defined by Amazon Kendra. For more * information, see Filtering * queries.

*/ inline const Aws::String& GetQueryFilterString() const{ return m_queryFilterString; } /** *

A query filter that Amazon Lex sends to Amazon Kendra to filter the response * from a query. The filter is in the format defined by Amazon Kendra. For more * information, see Filtering * queries.

*/ inline bool QueryFilterStringHasBeenSet() const { return m_queryFilterStringHasBeenSet; } /** *

A query filter that Amazon Lex sends to Amazon Kendra to filter the response * from a query. The filter is in the format defined by Amazon Kendra. For more * information, see Filtering * queries.

*/ inline void SetQueryFilterString(const Aws::String& value) { m_queryFilterStringHasBeenSet = true; m_queryFilterString = value; } /** *

A query filter that Amazon Lex sends to Amazon Kendra to filter the response * from a query. The filter is in the format defined by Amazon Kendra. For more * information, see Filtering * queries.

*/ inline void SetQueryFilterString(Aws::String&& value) { m_queryFilterStringHasBeenSet = true; m_queryFilterString = std::move(value); } /** *

A query filter that Amazon Lex sends to Amazon Kendra to filter the response * from a query. The filter is in the format defined by Amazon Kendra. For more * information, see Filtering * queries.

*/ inline void SetQueryFilterString(const char* value) { m_queryFilterStringHasBeenSet = true; m_queryFilterString.assign(value); } /** *

A query filter that Amazon Lex sends to Amazon Kendra to filter the response * from a query. The filter is in the format defined by Amazon Kendra. For more * information, see Filtering * queries.

*/ inline KendraConfiguration& WithQueryFilterString(const Aws::String& value) { SetQueryFilterString(value); return *this;} /** *

A query filter that Amazon Lex sends to Amazon Kendra to filter the response * from a query. The filter is in the format defined by Amazon Kendra. For more * information, see Filtering * queries.

*/ inline KendraConfiguration& WithQueryFilterString(Aws::String&& value) { SetQueryFilterString(std::move(value)); return *this;} /** *

A query filter that Amazon Lex sends to Amazon Kendra to filter the response * from a query. The filter is in the format defined by Amazon Kendra. For more * information, see Filtering * queries.

*/ inline KendraConfiguration& WithQueryFilterString(const char* value) { SetQueryFilterString(value); return *this;} private: Aws::String m_kendraIndex; bool m_kendraIndexHasBeenSet = false; bool m_queryFilterStringEnabled; bool m_queryFilterStringEnabledHasBeenSet = false; Aws::String m_queryFilterString; bool m_queryFilterStringHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws