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

The slots used for the slot resolution in the conversation.

See * Also:

AWS * API Reference

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

The intents used in the slots list for the slot resolution details.

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

The intents used in the slots list for the slot resolution details.

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

The intents used in the slots list for the slot resolution details.

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

The intents used in the slots list for the slot resolution details.

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

The intents used in the slots list for the slot resolution details.

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

The intents used in the slots list for the slot resolution details.

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

The intents used in the slots list for the slot resolution details.

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

The intents used in the slots list for the slot resolution details.

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

The slot name in the slots list for the slot resolution details.

*/ inline const Aws::String& GetSlotName() const{ return m_slotName; } /** *

The slot name in the slots list for the slot resolution details.

*/ inline bool SlotNameHasBeenSet() const { return m_slotNameHasBeenSet; } /** *

The slot name in the slots list for the slot resolution details.

*/ inline void SetSlotName(const Aws::String& value) { m_slotNameHasBeenSet = true; m_slotName = value; } /** *

The slot name in the slots list for the slot resolution details.

*/ inline void SetSlotName(Aws::String&& value) { m_slotNameHasBeenSet = true; m_slotName = std::move(value); } /** *

The slot name in the slots list for the slot resolution details.

*/ inline void SetSlotName(const char* value) { m_slotNameHasBeenSet = true; m_slotName.assign(value); } /** *

The slot name in the slots list for the slot resolution details.

*/ inline ConversationLevelSlotResolutionResultItem& WithSlotName(const Aws::String& value) { SetSlotName(value); return *this;} /** *

The slot name in the slots list for the slot resolution details.

*/ inline ConversationLevelSlotResolutionResultItem& WithSlotName(Aws::String&& value) { SetSlotName(std::move(value)); return *this;} /** *

The slot name in the slots list for the slot resolution details.

*/ inline ConversationLevelSlotResolutionResultItem& WithSlotName(const char* value) { SetSlotName(value); return *this;} /** *

The number of matching slots used in the slots listings for the slot * resolution evaluation.

*/ inline const TestResultMatchStatus& GetMatchResult() const{ return m_matchResult; } /** *

The number of matching slots used in the slots listings for the slot * resolution evaluation.

*/ inline bool MatchResultHasBeenSet() const { return m_matchResultHasBeenSet; } /** *

The number of matching slots used in the slots listings for the slot * resolution evaluation.

*/ inline void SetMatchResult(const TestResultMatchStatus& value) { m_matchResultHasBeenSet = true; m_matchResult = value; } /** *

The number of matching slots used in the slots listings for the slot * resolution evaluation.

*/ inline void SetMatchResult(TestResultMatchStatus&& value) { m_matchResultHasBeenSet = true; m_matchResult = std::move(value); } /** *

The number of matching slots used in the slots listings for the slot * resolution evaluation.

*/ inline ConversationLevelSlotResolutionResultItem& WithMatchResult(const TestResultMatchStatus& value) { SetMatchResult(value); return *this;} /** *

The number of matching slots used in the slots listings for the slot * resolution evaluation.

*/ inline ConversationLevelSlotResolutionResultItem& WithMatchResult(TestResultMatchStatus&& value) { SetMatchResult(std::move(value)); return *this;} private: Aws::String m_intentName; bool m_intentNameHasBeenSet = false; Aws::String m_slotName; bool m_slotNameHasBeenSet = false; TestResultMatchStatus m_matchResult; bool m_matchResultHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws