/** * 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 LexModelsV2 { namespace Model { /** *

Information for an intent that is classified by the test * workbench.

See Also:

AWS * API Reference

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

The name of the intent.

*/ inline const Aws::String& GetIntentName() const{ return m_intentName; } /** *

The name of the intent.

*/ inline bool IntentNameHasBeenSet() const { return m_intentNameHasBeenSet; } /** *

The name of the intent.

*/ inline void SetIntentName(const Aws::String& value) { m_intentNameHasBeenSet = true; m_intentName = value; } /** *

The name of the intent.

*/ inline void SetIntentName(Aws::String&& value) { m_intentNameHasBeenSet = true; m_intentName = std::move(value); } /** *

The name of the intent.

*/ inline void SetIntentName(const char* value) { m_intentNameHasBeenSet = true; m_intentName.assign(value); } /** *

The name of the intent.

*/ inline IntentClassificationTestResultItem& WithIntentName(const Aws::String& value) { SetIntentName(value); return *this;} /** *

The name of the intent.

*/ inline IntentClassificationTestResultItem& WithIntentName(Aws::String&& value) { SetIntentName(std::move(value)); return *this;} /** *

The name of the intent.

*/ inline IntentClassificationTestResultItem& WithIntentName(const char* value) { SetIntentName(value); return *this;} /** *

Indicates whether the conversation involves multiple turns or not.

*/ inline bool GetMultiTurnConversation() const{ return m_multiTurnConversation; } /** *

Indicates whether the conversation involves multiple turns or not.

*/ inline bool MultiTurnConversationHasBeenSet() const { return m_multiTurnConversationHasBeenSet; } /** *

Indicates whether the conversation involves multiple turns or not.

*/ inline void SetMultiTurnConversation(bool value) { m_multiTurnConversationHasBeenSet = true; m_multiTurnConversation = value; } /** *

Indicates whether the conversation involves multiple turns or not.

*/ inline IntentClassificationTestResultItem& WithMultiTurnConversation(bool value) { SetMultiTurnConversation(value); return *this;} /** *

The result of the intent classification test.

*/ inline const IntentClassificationTestResultItemCounts& GetResultCounts() const{ return m_resultCounts; } /** *

The result of the intent classification test.

*/ inline bool ResultCountsHasBeenSet() const { return m_resultCountsHasBeenSet; } /** *

The result of the intent classification test.

*/ inline void SetResultCounts(const IntentClassificationTestResultItemCounts& value) { m_resultCountsHasBeenSet = true; m_resultCounts = value; } /** *

The result of the intent classification test.

*/ inline void SetResultCounts(IntentClassificationTestResultItemCounts&& value) { m_resultCountsHasBeenSet = true; m_resultCounts = std::move(value); } /** *

The result of the intent classification test.

*/ inline IntentClassificationTestResultItem& WithResultCounts(const IntentClassificationTestResultItemCounts& value) { SetResultCounts(value); return *this;} /** *

The result of the intent classification test.

*/ inline IntentClassificationTestResultItem& WithResultCounts(IntentClassificationTestResultItemCounts&& value) { SetResultCounts(std::move(value)); return *this;} private: Aws::String m_intentName; bool m_intentNameHasBeenSet = false; bool m_multiTurnConversation; bool m_multiTurnConversationHasBeenSet = false; IntentClassificationTestResultItemCounts m_resultCounts; bool m_resultCountsHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws