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

Contains results that are output for the user turn by the test * execution.

See Also:

AWS * API Reference

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

Contains information about the intent.

*/ inline const UserTurnIntentOutput& GetIntent() const{ return m_intent; } /** *

Contains information about the intent.

*/ inline bool IntentHasBeenSet() const { return m_intentHasBeenSet; } /** *

Contains information about the intent.

*/ inline void SetIntent(const UserTurnIntentOutput& value) { m_intentHasBeenSet = true; m_intent = value; } /** *

Contains information about the intent.

*/ inline void SetIntent(UserTurnIntentOutput&& value) { m_intentHasBeenSet = true; m_intent = std::move(value); } /** *

Contains information about the intent.

*/ inline UserTurnOutputSpecification& WithIntent(const UserTurnIntentOutput& value) { SetIntent(value); return *this;} /** *

Contains information about the intent.

*/ inline UserTurnOutputSpecification& WithIntent(UserTurnIntentOutput&& value) { SetIntent(std::move(value)); return *this;} /** *

The contexts that are active in the turn.

*/ inline const Aws::Vector& GetActiveContexts() const{ return m_activeContexts; } /** *

The contexts that are active in the turn.

*/ inline bool ActiveContextsHasBeenSet() const { return m_activeContextsHasBeenSet; } /** *

The contexts that are active in the turn.

*/ inline void SetActiveContexts(const Aws::Vector& value) { m_activeContextsHasBeenSet = true; m_activeContexts = value; } /** *

The contexts that are active in the turn.

*/ inline void SetActiveContexts(Aws::Vector&& value) { m_activeContextsHasBeenSet = true; m_activeContexts = std::move(value); } /** *

The contexts that are active in the turn.

*/ inline UserTurnOutputSpecification& WithActiveContexts(const Aws::Vector& value) { SetActiveContexts(value); return *this;} /** *

The contexts that are active in the turn.

*/ inline UserTurnOutputSpecification& WithActiveContexts(Aws::Vector&& value) { SetActiveContexts(std::move(value)); return *this;} /** *

The contexts that are active in the turn.

*/ inline UserTurnOutputSpecification& AddActiveContexts(const ActiveContext& value) { m_activeContextsHasBeenSet = true; m_activeContexts.push_back(value); return *this; } /** *

The contexts that are active in the turn.

*/ inline UserTurnOutputSpecification& AddActiveContexts(ActiveContext&& value) { m_activeContextsHasBeenSet = true; m_activeContexts.push_back(std::move(value)); return *this; } /** *

The transcript that is output for the user turn by the test execution.

*/ inline const Aws::String& GetTranscript() const{ return m_transcript; } /** *

The transcript that is output for the user turn by the test execution.

*/ inline bool TranscriptHasBeenSet() const { return m_transcriptHasBeenSet; } /** *

The transcript that is output for the user turn by the test execution.

*/ inline void SetTranscript(const Aws::String& value) { m_transcriptHasBeenSet = true; m_transcript = value; } /** *

The transcript that is output for the user turn by the test execution.

*/ inline void SetTranscript(Aws::String&& value) { m_transcriptHasBeenSet = true; m_transcript = std::move(value); } /** *

The transcript that is output for the user turn by the test execution.

*/ inline void SetTranscript(const char* value) { m_transcriptHasBeenSet = true; m_transcript.assign(value); } /** *

The transcript that is output for the user turn by the test execution.

*/ inline UserTurnOutputSpecification& WithTranscript(const Aws::String& value) { SetTranscript(value); return *this;} /** *

The transcript that is output for the user turn by the test execution.

*/ inline UserTurnOutputSpecification& WithTranscript(Aws::String&& value) { SetTranscript(std::move(value)); return *this;} /** *

The transcript that is output for the user turn by the test execution.

*/ inline UserTurnOutputSpecification& WithTranscript(const char* value) { SetTranscript(value); return *this;} private: UserTurnIntentOutput m_intent; bool m_intentHasBeenSet = false; Aws::Vector m_activeContexts; bool m_activeContextsHasBeenSet = false; Aws::String m_transcript; bool m_transcriptHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws