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

A unique identifier for a particular bot. You use this to identify the bot * when you call other Amazon Lex API operations.

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

A unique identifier for a particular bot. You use this to identify the bot * when you call other Amazon Lex API operations.

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

A unique identifier for a particular bot. You use this to identify the bot * when you call other Amazon Lex API operations.

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

A unique identifier for a particular bot. You use this to identify the bot * when you call other Amazon Lex API operations.

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

A unique identifier for a particular bot. You use this to identify the bot * when you call other Amazon Lex API operations.

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

A unique identifier for a particular bot. You use this to identify the bot * when you call other Amazon Lex API operations.

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

A unique identifier for a particular bot. You use this to identify the bot * when you call other Amazon Lex API operations.

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

The name specified for the bot.

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

The name specified for the bot.

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

The name specified for the bot.

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

The name specified for the bot.

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

The name specified for the bot.

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

The name specified for the bot.

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

The name specified for the bot.

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

The description specified for the bot.

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

The description specified for the bot.

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

The description specified for the bot.

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

The description specified for the bot.

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

The description specified for the bot.

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

The description specified for the bot.

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

The description specified for the bot.

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

The IAM role specified for the bot.

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

The IAM role specified for the bot.

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

The IAM role specified for the bot.

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

The IAM role specified for the bot.

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

The IAM role specified for the bot.

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

The IAM role specified for the bot.

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

The IAM role specified for the bot.

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

The data privacy settings specified for the bot.

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

The data privacy settings specified for the bot.

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

The data privacy settings specified for the bot.

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

The data privacy settings specified for the bot.

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

The data privacy settings specified for the bot.

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

The session idle time specified for the bot.

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

The session idle time specified for the bot.

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

The session idle time specified for the bot.

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

Shows the current status of the bot. The bot is first in the * Creating status. Once the bot is read for use, it changes to the * Available status. After the bot is created, you can use the * DRAFT version of the bot.

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

Shows the current status of the bot. The bot is first in the * Creating status. Once the bot is read for use, it changes to the * Available status. After the bot is created, you can use the * DRAFT version of the bot.

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

Shows the current status of the bot. The bot is first in the * Creating status. Once the bot is read for use, it changes to the * Available status. After the bot is created, you can use the * DRAFT version of the bot.

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

Shows the current status of the bot. The bot is first in the * Creating status. Once the bot is read for use, it changes to the * Available status. After the bot is created, you can use the * DRAFT version of the bot.

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

Shows the current status of the bot. The bot is first in the * Creating status. Once the bot is read for use, it changes to the * Available status. After the bot is created, you can use the * DRAFT version of the bot.

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

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

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

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

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

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

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

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

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

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

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

A list of tags associated with the bot.

*/ inline const Aws::Map& GetBotTags() const{ return m_botTags; } /** *

A list of tags associated with the bot.

*/ inline void SetBotTags(const Aws::Map& value) { m_botTags = value; } /** *

A list of tags associated with the bot.

*/ inline void SetBotTags(Aws::Map&& value) { m_botTags = std::move(value); } /** *

A list of tags associated with the bot.

*/ inline CreateBotResult& WithBotTags(const Aws::Map& value) { SetBotTags(value); return *this;} /** *

A list of tags associated with the bot.

*/ inline CreateBotResult& WithBotTags(Aws::Map&& value) { SetBotTags(std::move(value)); return *this;} /** *

A list of tags associated with the bot.

*/ inline CreateBotResult& AddBotTags(const Aws::String& key, const Aws::String& value) { m_botTags.emplace(key, value); return *this; } /** *

A list of tags associated with the bot.

*/ inline CreateBotResult& AddBotTags(Aws::String&& key, const Aws::String& value) { m_botTags.emplace(std::move(key), value); return *this; } /** *

A list of tags associated with the bot.

*/ inline CreateBotResult& AddBotTags(const Aws::String& key, Aws::String&& value) { m_botTags.emplace(key, std::move(value)); return *this; } /** *

A list of tags associated with the bot.

*/ inline CreateBotResult& AddBotTags(Aws::String&& key, Aws::String&& value) { m_botTags.emplace(std::move(key), std::move(value)); return *this; } /** *

A list of tags associated with the bot.

*/ inline CreateBotResult& AddBotTags(const char* key, Aws::String&& value) { m_botTags.emplace(key, std::move(value)); return *this; } /** *

A list of tags associated with the bot.

*/ inline CreateBotResult& AddBotTags(Aws::String&& key, const char* value) { m_botTags.emplace(std::move(key), value); return *this; } /** *

A list of tags associated with the bot.

*/ inline CreateBotResult& AddBotTags(const char* key, const char* value) { m_botTags.emplace(key, value); return *this; } /** *

A list of tags associated with the test alias for the bot.

*/ inline const Aws::Map& GetTestBotAliasTags() const{ return m_testBotAliasTags; } /** *

A list of tags associated with the test alias for the bot.

*/ inline void SetTestBotAliasTags(const Aws::Map& value) { m_testBotAliasTags = value; } /** *

A list of tags associated with the test alias for the bot.

*/ inline void SetTestBotAliasTags(Aws::Map&& value) { m_testBotAliasTags = std::move(value); } /** *

A list of tags associated with the test alias for the bot.

*/ inline CreateBotResult& WithTestBotAliasTags(const Aws::Map& value) { SetTestBotAliasTags(value); return *this;} /** *

A list of tags associated with the test alias for the bot.

*/ inline CreateBotResult& WithTestBotAliasTags(Aws::Map&& value) { SetTestBotAliasTags(std::move(value)); return *this;} /** *

A list of tags associated with the test alias for the bot.

*/ inline CreateBotResult& AddTestBotAliasTags(const Aws::String& key, const Aws::String& value) { m_testBotAliasTags.emplace(key, value); return *this; } /** *

A list of tags associated with the test alias for the bot.

*/ inline CreateBotResult& AddTestBotAliasTags(Aws::String&& key, const Aws::String& value) { m_testBotAliasTags.emplace(std::move(key), value); return *this; } /** *

A list of tags associated with the test alias for the bot.

*/ inline CreateBotResult& AddTestBotAliasTags(const Aws::String& key, Aws::String&& value) { m_testBotAliasTags.emplace(key, std::move(value)); return *this; } /** *

A list of tags associated with the test alias for the bot.

*/ inline CreateBotResult& AddTestBotAliasTags(Aws::String&& key, Aws::String&& value) { m_testBotAliasTags.emplace(std::move(key), std::move(value)); return *this; } /** *

A list of tags associated with the test alias for the bot.

*/ inline CreateBotResult& AddTestBotAliasTags(const char* key, Aws::String&& value) { m_testBotAliasTags.emplace(key, std::move(value)); return *this; } /** *

A list of tags associated with the test alias for the bot.

*/ inline CreateBotResult& AddTestBotAliasTags(Aws::String&& key, const char* value) { m_testBotAliasTags.emplace(std::move(key), value); return *this; } /** *

A list of tags associated with the test alias for the bot.

*/ inline CreateBotResult& AddTestBotAliasTags(const char* key, const char* value) { m_testBotAliasTags.emplace(key, value); return *this; } /** *

The type of a bot that was created.

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

The type of a bot that was created.

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

The type of a bot that was created.

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

The type of a bot that was created.

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

The type of a bot that was created.

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

The list of bots in a network that was created.

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

The list of bots in a network that was created.

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

The list of bots in a network that was created.

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

The list of bots in a network that was created.

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

The list of bots in a network that was created.

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

The list of bots in a network that was created.

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

The list of bots in a network that was created.

*/ inline CreateBotResult& AddBotMembers(BotMember&& value) { m_botMembers.push_back(std::move(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 CreateBotResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline CreateBotResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline CreateBotResult& 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::Map m_botTags; Aws::Map m_testBotAliasTags; BotType m_botType; Aws::Vector m_botMembers; Aws::String m_requestId; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws