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

Information about intent-level slot resolution in a test * result.

See Also:

AWS * API Reference

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

The name of the intent that was recognized.

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

The name of the intent that was recognized.

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

The name of the intent that was recognized.

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

The name of the intent that was recognized.

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

The name of the intent that was recognized.

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

The name of the intent that was recognized.

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

The name of the intent that was recognized.

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

The name of the intent that was recognized.

*/ inline IntentLevelSlotResolutionTestResultItem& 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 IntentLevelSlotResolutionTestResultItem& WithMultiTurnConversation(bool value) { SetMultiTurnConversation(value); return *this;} /** *

The results for the slot resolution in the test execution result.

*/ inline const Aws::Vector& GetSlotResolutionResults() const{ return m_slotResolutionResults; } /** *

The results for the slot resolution in the test execution result.

*/ inline bool SlotResolutionResultsHasBeenSet() const { return m_slotResolutionResultsHasBeenSet; } /** *

The results for the slot resolution in the test execution result.

*/ inline void SetSlotResolutionResults(const Aws::Vector& value) { m_slotResolutionResultsHasBeenSet = true; m_slotResolutionResults = value; } /** *

The results for the slot resolution in the test execution result.

*/ inline void SetSlotResolutionResults(Aws::Vector&& value) { m_slotResolutionResultsHasBeenSet = true; m_slotResolutionResults = std::move(value); } /** *

The results for the slot resolution in the test execution result.

*/ inline IntentLevelSlotResolutionTestResultItem& WithSlotResolutionResults(const Aws::Vector& value) { SetSlotResolutionResults(value); return *this;} /** *

The results for the slot resolution in the test execution result.

*/ inline IntentLevelSlotResolutionTestResultItem& WithSlotResolutionResults(Aws::Vector&& value) { SetSlotResolutionResults(std::move(value)); return *this;} /** *

The results for the slot resolution in the test execution result.

*/ inline IntentLevelSlotResolutionTestResultItem& AddSlotResolutionResults(const SlotResolutionTestResultItem& value) { m_slotResolutionResultsHasBeenSet = true; m_slotResolutionResults.push_back(value); return *this; } /** *

The results for the slot resolution in the test execution result.

*/ inline IntentLevelSlotResolutionTestResultItem& AddSlotResolutionResults(SlotResolutionTestResultItem&& value) { m_slotResolutionResultsHasBeenSet = true; m_slotResolutionResults.push_back(std::move(value)); return *this; } private: Aws::String m_intentName; bool m_intentNameHasBeenSet = false; bool m_multiTurnConversation; bool m_multiTurnConversationHasBeenSet = false; Aws::Vector m_slotResolutionResults; bool m_slotResolutionResultsHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws