/** * 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 #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace LexModelsV2 { namespace Model { class DescribeBotResult { public: AWS_LEXMODELSV2_API DescribeBotResult(); AWS_LEXMODELSV2_API DescribeBotResult(const Aws::AmazonWebServiceResult& result); AWS_LEXMODELSV2_API DescribeBotResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The unique identifier of the bot.

*/ inline const Aws::String& GetBotId() const{ return m_botId; } /** *

The unique identifier of the bot.

*/ inline void SetBotId(const Aws::String& value) { m_botId = value; } /** *

The unique identifier of the bot.

*/ inline void SetBotId(Aws::String&& value) { m_botId = std::move(value); } /** *

The unique identifier of the bot.

*/ inline void SetBotId(const char* value) { m_botId.assign(value); } /** *

The unique identifier of the bot.

*/ inline DescribeBotResult& WithBotId(const Aws::String& value) { SetBotId(value); return *this;} /** *

The unique identifier of the bot.

*/ inline DescribeBotResult& WithBotId(Aws::String&& value) { SetBotId(std::move(value)); return *this;} /** *

The unique identifier of the bot.

*/ inline DescribeBotResult& WithBotId(const char* value) { SetBotId(value); return *this;} /** *

The name of the bot.

*/ inline const Aws::String& GetBotName() const{ return m_botName; } /** *

The name of the bot.

*/ inline void SetBotName(const Aws::String& value) { m_botName = value; } /** *

The name of the bot.

*/ inline void SetBotName(Aws::String&& value) { m_botName = std::move(value); } /** *

The name of the bot.

*/ inline void SetBotName(const char* value) { m_botName.assign(value); } /** *

The name of the bot.

*/ inline DescribeBotResult& WithBotName(const Aws::String& value) { SetBotName(value); return *this;} /** *

The name of the bot.

*/ inline DescribeBotResult& WithBotName(Aws::String&& value) { SetBotName(std::move(value)); return *this;} /** *

The name of the bot.

*/ inline DescribeBotResult& WithBotName(const char* value) { SetBotName(value); return *this;} /** *

The description of the bot.

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

The description of the bot.

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

The description of the bot.

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

The description of the bot.

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

The description of the bot.

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

The description of the bot.

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

The description of the bot.

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

The Amazon Resource Name (ARN) of an IAM role that has permission to access * the bot.

*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *

The Amazon Resource Name (ARN) of an IAM role that has permission to access * the bot.

*/ inline void SetRoleArn(const Aws::String& value) { m_roleArn = value; } /** *

The Amazon Resource Name (ARN) of an IAM role that has permission to access * the bot.

*/ inline void SetRoleArn(Aws::String&& value) { m_roleArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of an IAM role that has permission to access * the bot.

*/ inline void SetRoleArn(const char* value) { m_roleArn.assign(value); } /** *

The Amazon Resource Name (ARN) of an IAM role that has permission to access * the bot.

*/ inline DescribeBotResult& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of an IAM role that has permission to access * the bot.

*/ inline DescribeBotResult& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of an IAM role that has permission to access * the bot.

*/ inline DescribeBotResult& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *

Settings for managing data privacy of the bot and its conversations with * users.

*/ inline const DataPrivacy& GetDataPrivacy() const{ return m_dataPrivacy; } /** *

Settings for managing data privacy of the bot and its conversations with * users.

*/ inline void SetDataPrivacy(const DataPrivacy& value) { m_dataPrivacy = value; } /** *

Settings for managing data privacy of the bot and its conversations with * users.

*/ inline void SetDataPrivacy(DataPrivacy&& value) { m_dataPrivacy = std::move(value); } /** *

Settings for managing data privacy of the bot and its conversations with * users.

*/ inline DescribeBotResult& WithDataPrivacy(const DataPrivacy& value) { SetDataPrivacy(value); return *this;} /** *

Settings for managing data privacy of the bot and its conversations with * users.

*/ inline DescribeBotResult& WithDataPrivacy(DataPrivacy&& value) { SetDataPrivacy(std::move(value)); return *this;} /** *

The maximum time in seconds that Amazon Lex retains the data gathered in a * conversation.

*/ inline int GetIdleSessionTTLInSeconds() const{ return m_idleSessionTTLInSeconds; } /** *

The maximum time in seconds that Amazon Lex retains the data gathered in a * conversation.

*/ inline void SetIdleSessionTTLInSeconds(int value) { m_idleSessionTTLInSeconds = value; } /** *

The maximum time in seconds that Amazon Lex retains the data gathered in a * conversation.

*/ inline DescribeBotResult& WithIdleSessionTTLInSeconds(int value) { SetIdleSessionTTLInSeconds(value); return *this;} /** *

The current status of the bot. When the status is Available the * bot is ready to be used in conversations with users.

*/ inline const BotStatus& GetBotStatus() const{ return m_botStatus; } /** *

The current status of the bot. When the status is Available the * bot is ready to be used in conversations with users.

*/ inline void SetBotStatus(const BotStatus& value) { m_botStatus = value; } /** *

The current status of the bot. When the status is Available the * bot is ready to be used in conversations with users.

*/ inline void SetBotStatus(BotStatus&& value) { m_botStatus = std::move(value); } /** *

The current status of the bot. When the status is Available the * bot is ready to be used in conversations with users.

*/ inline DescribeBotResult& WithBotStatus(const BotStatus& value) { SetBotStatus(value); return *this;} /** *

The current status of the bot. When the status is Available the * bot is ready to be used in conversations with users.

*/ inline DescribeBotResult& WithBotStatus(BotStatus&& value) { SetBotStatus(std::move(value)); return *this;} /** *

A timestamp of the date and time that the bot was created.

*/ inline const Aws::Utils::DateTime& GetCreationDateTime() const{ return m_creationDateTime; } /** *

A timestamp of the date and time that the bot was created.

*/ inline void SetCreationDateTime(const Aws::Utils::DateTime& value) { m_creationDateTime = value; } /** *

A timestamp of the date and time that the bot was created.

*/ inline void SetCreationDateTime(Aws::Utils::DateTime&& value) { m_creationDateTime = std::move(value); } /** *

A timestamp of the date and time that the bot was created.

*/ inline DescribeBotResult& WithCreationDateTime(const Aws::Utils::DateTime& value) { SetCreationDateTime(value); return *this;} /** *

A timestamp of the date and time that the bot was created.

*/ inline DescribeBotResult& WithCreationDateTime(Aws::Utils::DateTime&& value) { SetCreationDateTime(std::move(value)); return *this;} /** *

A timestamp of the date and time that the bot was last updated.

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

A timestamp of the date and time that the bot was last updated.

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

A timestamp of the date and time that the bot was last updated.

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

A timestamp of the date and time that the bot was last updated.

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

A timestamp of the date and time that the bot was last updated.

*/ inline DescribeBotResult& WithLastUpdatedDateTime(Aws::Utils::DateTime&& value) { SetLastUpdatedDateTime(std::move(value)); return *this;} /** *

The type of the bot that was described.

*/ inline const BotType& GetBotType() const{ return m_botType; } /** *

The type of the bot that was described.

*/ inline void SetBotType(const BotType& value) { m_botType = value; } /** *

The type of the bot that was described.

*/ inline void SetBotType(BotType&& value) { m_botType = std::move(value); } /** *

The type of the bot that was described.

*/ inline DescribeBotResult& WithBotType(const BotType& value) { SetBotType(value); return *this;} /** *

The type of the bot that was described.

*/ inline DescribeBotResult& WithBotType(BotType&& value) { SetBotType(std::move(value)); return *this;} /** *

The list of bots in the network that was described.

*/ inline const Aws::Vector& GetBotMembers() const{ return m_botMembers; } /** *

The list of bots in the network that was described.

*/ inline void SetBotMembers(const Aws::Vector& value) { m_botMembers = value; } /** *

The list of bots in the network that was described.

*/ inline void SetBotMembers(Aws::Vector&& value) { m_botMembers = std::move(value); } /** *

The list of bots in the network that was described.

*/ inline DescribeBotResult& WithBotMembers(const Aws::Vector& value) { SetBotMembers(value); return *this;} /** *

The list of bots in the network that was described.

*/ inline DescribeBotResult& WithBotMembers(Aws::Vector&& value) { SetBotMembers(std::move(value)); return *this;} /** *

The list of bots in the network that was described.

*/ inline DescribeBotResult& AddBotMembers(const BotMember& value) { m_botMembers.push_back(value); return *this; } /** *

The list of bots in the network that was described.

*/ inline DescribeBotResult& AddBotMembers(BotMember&& value) { m_botMembers.push_back(std::move(value)); return *this; } /** *

If the botStatus is Failed, this contains a list of * reasons that the bot couldn't be built.

*/ inline const Aws::Vector& GetFailureReasons() const{ return m_failureReasons; } /** *

If the botStatus is Failed, this contains a list of * reasons that the bot couldn't be built.

*/ inline void SetFailureReasons(const Aws::Vector& value) { m_failureReasons = value; } /** *

If the botStatus is Failed, this contains a list of * reasons that the bot couldn't be built.

*/ inline void SetFailureReasons(Aws::Vector&& value) { m_failureReasons = std::move(value); } /** *

If the botStatus is Failed, this contains a list of * reasons that the bot couldn't be built.

*/ inline DescribeBotResult& WithFailureReasons(const Aws::Vector& value) { SetFailureReasons(value); return *this;} /** *

If the botStatus is Failed, this contains a list of * reasons that the bot couldn't be built.

*/ inline DescribeBotResult& WithFailureReasons(Aws::Vector&& value) { SetFailureReasons(std::move(value)); return *this;} /** *

If the botStatus is Failed, this contains a list of * reasons that the bot couldn't be built.

*/ inline DescribeBotResult& AddFailureReasons(const Aws::String& value) { m_failureReasons.push_back(value); return *this; } /** *

If the botStatus is Failed, this contains a list of * reasons that the bot couldn't be built.

*/ inline DescribeBotResult& AddFailureReasons(Aws::String&& value) { m_failureReasons.push_back(std::move(value)); return *this; } /** *

If the botStatus is Failed, this contains a list of * reasons that the bot couldn't be built.

*/ inline DescribeBotResult& AddFailureReasons(const char* value) { m_failureReasons.push_back(value); return *this; } inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline DescribeBotResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeBotResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeBotResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_botId; Aws::String m_botName; Aws::String m_description; Aws::String m_roleArn; DataPrivacy m_dataPrivacy; int m_idleSessionTTLInSeconds; BotStatus m_botStatus; Aws::Utils::DateTime m_creationDateTime; Aws::Utils::DateTime m_lastUpdatedDateTime; BotType m_botType; Aws::Vector m_botMembers; Aws::Vector m_failureReasons; Aws::String m_requestId; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws