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

Summary information about an intent returned by the ListIntents * operation.

See Also:

AWS * API Reference

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

The unique identifier assigned to the intent. Use this ID to get detailed * information about the intent with the DescribeIntent operation.

*/ inline const Aws::String& GetIntentId() const{ return m_intentId; } /** *

The unique identifier assigned to the intent. Use this ID to get detailed * information about the intent with the DescribeIntent operation.

*/ inline bool IntentIdHasBeenSet() const { return m_intentIdHasBeenSet; } /** *

The unique identifier assigned to the intent. Use this ID to get detailed * information about the intent with the DescribeIntent operation.

*/ inline void SetIntentId(const Aws::String& value) { m_intentIdHasBeenSet = true; m_intentId = value; } /** *

The unique identifier assigned to the intent. Use this ID to get detailed * information about the intent with the DescribeIntent operation.

*/ inline void SetIntentId(Aws::String&& value) { m_intentIdHasBeenSet = true; m_intentId = std::move(value); } /** *

The unique identifier assigned to the intent. Use this ID to get detailed * information about the intent with the DescribeIntent operation.

*/ inline void SetIntentId(const char* value) { m_intentIdHasBeenSet = true; m_intentId.assign(value); } /** *

The unique identifier assigned to the intent. Use this ID to get detailed * information about the intent with the DescribeIntent operation.

*/ inline IntentSummary& WithIntentId(const Aws::String& value) { SetIntentId(value); return *this;} /** *

The unique identifier assigned to the intent. Use this ID to get detailed * information about the intent with the DescribeIntent operation.

*/ inline IntentSummary& WithIntentId(Aws::String&& value) { SetIntentId(std::move(value)); return *this;} /** *

The unique identifier assigned to the intent. Use this ID to get detailed * information about the intent with the DescribeIntent operation.

*/ inline IntentSummary& WithIntentId(const char* value) { SetIntentId(value); return *this;} /** *

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 IntentSummary& WithIntentName(const Aws::String& value) { SetIntentName(value); return *this;} /** *

The name of the intent.

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

The name of the intent.

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

The description of the intent.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

The description of the intent.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

The description of the intent.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

The description of the intent.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

The description of the intent.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

The description of the intent.

*/ inline IntentSummary& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

The description of the intent.

*/ inline IntentSummary& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

The description of the intent.

*/ inline IntentSummary& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

If this intent is derived from a built-in intent, the name of the parent * intent.

*/ inline const Aws::String& GetParentIntentSignature() const{ return m_parentIntentSignature; } /** *

If this intent is derived from a built-in intent, the name of the parent * intent.

*/ inline bool ParentIntentSignatureHasBeenSet() const { return m_parentIntentSignatureHasBeenSet; } /** *

If this intent is derived from a built-in intent, the name of the parent * intent.

*/ inline void SetParentIntentSignature(const Aws::String& value) { m_parentIntentSignatureHasBeenSet = true; m_parentIntentSignature = value; } /** *

If this intent is derived from a built-in intent, the name of the parent * intent.

*/ inline void SetParentIntentSignature(Aws::String&& value) { m_parentIntentSignatureHasBeenSet = true; m_parentIntentSignature = std::move(value); } /** *

If this intent is derived from a built-in intent, the name of the parent * intent.

*/ inline void SetParentIntentSignature(const char* value) { m_parentIntentSignatureHasBeenSet = true; m_parentIntentSignature.assign(value); } /** *

If this intent is derived from a built-in intent, the name of the parent * intent.

*/ inline IntentSummary& WithParentIntentSignature(const Aws::String& value) { SetParentIntentSignature(value); return *this;} /** *

If this intent is derived from a built-in intent, the name of the parent * intent.

*/ inline IntentSummary& WithParentIntentSignature(Aws::String&& value) { SetParentIntentSignature(std::move(value)); return *this;} /** *

If this intent is derived from a built-in intent, the name of the parent * intent.

*/ inline IntentSummary& WithParentIntentSignature(const char* value) { SetParentIntentSignature(value); return *this;} /** *

The input contexts that must be active for this intent to be considered for * recognition.

*/ inline const Aws::Vector& GetInputContexts() const{ return m_inputContexts; } /** *

The input contexts that must be active for this intent to be considered for * recognition.

*/ inline bool InputContextsHasBeenSet() const { return m_inputContextsHasBeenSet; } /** *

The input contexts that must be active for this intent to be considered for * recognition.

*/ inline void SetInputContexts(const Aws::Vector& value) { m_inputContextsHasBeenSet = true; m_inputContexts = value; } /** *

The input contexts that must be active for this intent to be considered for * recognition.

*/ inline void SetInputContexts(Aws::Vector&& value) { m_inputContextsHasBeenSet = true; m_inputContexts = std::move(value); } /** *

The input contexts that must be active for this intent to be considered for * recognition.

*/ inline IntentSummary& WithInputContexts(const Aws::Vector& value) { SetInputContexts(value); return *this;} /** *

The input contexts that must be active for this intent to be considered for * recognition.

*/ inline IntentSummary& WithInputContexts(Aws::Vector&& value) { SetInputContexts(std::move(value)); return *this;} /** *

The input contexts that must be active for this intent to be considered for * recognition.

*/ inline IntentSummary& AddInputContexts(const InputContext& value) { m_inputContextsHasBeenSet = true; m_inputContexts.push_back(value); return *this; } /** *

The input contexts that must be active for this intent to be considered for * recognition.

*/ inline IntentSummary& AddInputContexts(InputContext&& value) { m_inputContextsHasBeenSet = true; m_inputContexts.push_back(std::move(value)); return *this; } /** *

The output contexts that are activated when this intent is fulfilled.

*/ inline const Aws::Vector& GetOutputContexts() const{ return m_outputContexts; } /** *

The output contexts that are activated when this intent is fulfilled.

*/ inline bool OutputContextsHasBeenSet() const { return m_outputContextsHasBeenSet; } /** *

The output contexts that are activated when this intent is fulfilled.

*/ inline void SetOutputContexts(const Aws::Vector& value) { m_outputContextsHasBeenSet = true; m_outputContexts = value; } /** *

The output contexts that are activated when this intent is fulfilled.

*/ inline void SetOutputContexts(Aws::Vector&& value) { m_outputContextsHasBeenSet = true; m_outputContexts = std::move(value); } /** *

The output contexts that are activated when this intent is fulfilled.

*/ inline IntentSummary& WithOutputContexts(const Aws::Vector& value) { SetOutputContexts(value); return *this;} /** *

The output contexts that are activated when this intent is fulfilled.

*/ inline IntentSummary& WithOutputContexts(Aws::Vector&& value) { SetOutputContexts(std::move(value)); return *this;} /** *

The output contexts that are activated when this intent is fulfilled.

*/ inline IntentSummary& AddOutputContexts(const OutputContext& value) { m_outputContextsHasBeenSet = true; m_outputContexts.push_back(value); return *this; } /** *

The output contexts that are activated when this intent is fulfilled.

*/ inline IntentSummary& AddOutputContexts(OutputContext&& value) { m_outputContextsHasBeenSet = true; m_outputContexts.push_back(std::move(value)); return *this; } /** *

The timestamp of the date and time that the intent was last updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedDateTime() const{ return m_lastUpdatedDateTime; } /** *

The timestamp of the date and time that the intent was last updated.

*/ inline bool LastUpdatedDateTimeHasBeenSet() const { return m_lastUpdatedDateTimeHasBeenSet; } /** *

The timestamp of the date and time that the intent was last updated.

*/ inline void SetLastUpdatedDateTime(const Aws::Utils::DateTime& value) { m_lastUpdatedDateTimeHasBeenSet = true; m_lastUpdatedDateTime = value; } /** *

The timestamp of the date and time that the intent was last updated.

*/ inline void SetLastUpdatedDateTime(Aws::Utils::DateTime&& value) { m_lastUpdatedDateTimeHasBeenSet = true; m_lastUpdatedDateTime = std::move(value); } /** *

The timestamp of the date and time that the intent was last updated.

*/ inline IntentSummary& WithLastUpdatedDateTime(const Aws::Utils::DateTime& value) { SetLastUpdatedDateTime(value); return *this;} /** *

The timestamp of the date and time that the intent was last updated.

*/ inline IntentSummary& WithLastUpdatedDateTime(Aws::Utils::DateTime&& value) { SetLastUpdatedDateTime(std::move(value)); return *this;} private: Aws::String m_intentId; bool m_intentIdHasBeenSet = false; Aws::String m_intentName; bool m_intentNameHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_parentIntentSignature; bool m_parentIntentSignatureHasBeenSet = false; Aws::Vector m_inputContexts; bool m_inputContextsHasBeenSet = false; Aws::Vector m_outputContexts; bool m_outputContextsHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedDateTime; bool m_lastUpdatedDateTimeHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws