/** * 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 { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace LexModelBuildingService { namespace Model { class GetBotChannelAssociationResult { public: AWS_LEXMODELBUILDINGSERVICE_API GetBotChannelAssociationResult(); AWS_LEXMODELBUILDINGSERVICE_API GetBotChannelAssociationResult(const Aws::AmazonWebServiceResult& result); AWS_LEXMODELBUILDINGSERVICE_API GetBotChannelAssociationResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The name of the association between the bot and the channel.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the association between the bot and the channel.

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

The name of the association between the bot and the channel.

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

The name of the association between the bot and the channel.

*/ inline void SetName(const char* value) { m_name.assign(value); } /** *

The name of the association between the bot and the channel.

*/ inline GetBotChannelAssociationResult& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the association between the bot and the channel.

*/ inline GetBotChannelAssociationResult& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the association between the bot and the channel.

*/ inline GetBotChannelAssociationResult& WithName(const char* value) { SetName(value); return *this;} /** *

A description of the association between the bot and the channel.

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

A description of the association between the bot and the channel.

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

A description of the association between the bot and the channel.

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

A description of the association between the bot and the channel.

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

A description of the association between the bot and the channel.

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

A description of the association between the bot and the channel.

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

A description of the association between the bot and the channel.

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

An alias pointing to the specific version of the Amazon Lex bot to which this * association is being made.

*/ inline const Aws::String& GetBotAlias() const{ return m_botAlias; } /** *

An alias pointing to the specific version of the Amazon Lex bot to which this * association is being made.

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

An alias pointing to the specific version of the Amazon Lex bot to which this * association is being made.

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

An alias pointing to the specific version of the Amazon Lex bot to which this * association is being made.

*/ inline void SetBotAlias(const char* value) { m_botAlias.assign(value); } /** *

An alias pointing to the specific version of the Amazon Lex bot to which this * association is being made.

*/ inline GetBotChannelAssociationResult& WithBotAlias(const Aws::String& value) { SetBotAlias(value); return *this;} /** *

An alias pointing to the specific version of the Amazon Lex bot to which this * association is being made.

*/ inline GetBotChannelAssociationResult& WithBotAlias(Aws::String&& value) { SetBotAlias(std::move(value)); return *this;} /** *

An alias pointing to the specific version of the Amazon Lex bot to which this * association is being made.

*/ inline GetBotChannelAssociationResult& WithBotAlias(const char* value) { SetBotAlias(value); return *this;} /** *

The name of the Amazon Lex bot.

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

The name of the Amazon Lex bot.

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

The name of the Amazon Lex bot.

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

The name of the Amazon Lex bot.

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

The name of the Amazon Lex bot.

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

The name of the Amazon Lex bot.

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

The name of the Amazon Lex bot.

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

The date that the association between the bot and the channel was * created.

*/ inline const Aws::Utils::DateTime& GetCreatedDate() const{ return m_createdDate; } /** *

The date that the association between the bot and the channel was * created.

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

The date that the association between the bot and the channel was * created.

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

The date that the association between the bot and the channel was * created.

*/ inline GetBotChannelAssociationResult& WithCreatedDate(const Aws::Utils::DateTime& value) { SetCreatedDate(value); return *this;} /** *

The date that the association between the bot and the channel was * created.

*/ inline GetBotChannelAssociationResult& WithCreatedDate(Aws::Utils::DateTime&& value) { SetCreatedDate(std::move(value)); return *this;} /** *

The type of the messaging platform.

*/ inline const ChannelType& GetType() const{ return m_type; } /** *

The type of the messaging platform.

*/ inline void SetType(const ChannelType& value) { m_type = value; } /** *

The type of the messaging platform.

*/ inline void SetType(ChannelType&& value) { m_type = std::move(value); } /** *

The type of the messaging platform.

*/ inline GetBotChannelAssociationResult& WithType(const ChannelType& value) { SetType(value); return *this;} /** *

The type of the messaging platform.

*/ inline GetBotChannelAssociationResult& WithType(ChannelType&& value) { SetType(std::move(value)); return *this;} /** *

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

*/ inline const Aws::Map& GetBotConfiguration() const{ return m_botConfiguration; } /** *

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

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

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

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

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

*/ inline GetBotChannelAssociationResult& WithBotConfiguration(const Aws::Map& value) { SetBotConfiguration(value); return *this;} /** *

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

*/ inline GetBotChannelAssociationResult& WithBotConfiguration(Aws::Map&& value) { SetBotConfiguration(std::move(value)); return *this;} /** *

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

*/ inline GetBotChannelAssociationResult& AddBotConfiguration(const Aws::String& key, const Aws::String& value) { m_botConfiguration.emplace(key, value); return *this; } /** *

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

*/ inline GetBotChannelAssociationResult& AddBotConfiguration(Aws::String&& key, const Aws::String& value) { m_botConfiguration.emplace(std::move(key), value); return *this; } /** *

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

*/ inline GetBotChannelAssociationResult& AddBotConfiguration(const Aws::String& key, Aws::String&& value) { m_botConfiguration.emplace(key, std::move(value)); return *this; } /** *

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

*/ inline GetBotChannelAssociationResult& AddBotConfiguration(Aws::String&& key, Aws::String&& value) { m_botConfiguration.emplace(std::move(key), std::move(value)); return *this; } /** *

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

*/ inline GetBotChannelAssociationResult& AddBotConfiguration(const char* key, Aws::String&& value) { m_botConfiguration.emplace(key, std::move(value)); return *this; } /** *

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

*/ inline GetBotChannelAssociationResult& AddBotConfiguration(Aws::String&& key, const char* value) { m_botConfiguration.emplace(std::move(key), value); return *this; } /** *

Provides information that the messaging platform needs to communicate with * the Amazon Lex bot.

*/ inline GetBotChannelAssociationResult& AddBotConfiguration(const char* key, const char* value) { m_botConfiguration.emplace(key, value); return *this; } /** *

The status of the bot channel.

  • CREATED - The * channel has been created and is ready for use.

  • * IN_PROGRESS - Channel creation is in progress.

  • * FAILED - There was an error creating the channel. For information * about the reason for the failure, see the failureReason field.

    *
*/ inline const ChannelStatus& GetStatus() const{ return m_status; } /** *

The status of the bot channel.

  • CREATED - The * channel has been created and is ready for use.

  • * IN_PROGRESS - Channel creation is in progress.

  • * FAILED - There was an error creating the channel. For information * about the reason for the failure, see the failureReason field.

    *
*/ inline void SetStatus(const ChannelStatus& value) { m_status = value; } /** *

The status of the bot channel.

  • CREATED - The * channel has been created and is ready for use.

  • * IN_PROGRESS - Channel creation is in progress.

  • * FAILED - There was an error creating the channel. For information * about the reason for the failure, see the failureReason field.

    *
*/ inline void SetStatus(ChannelStatus&& value) { m_status = std::move(value); } /** *

The status of the bot channel.

  • CREATED - The * channel has been created and is ready for use.

  • * IN_PROGRESS - Channel creation is in progress.

  • * FAILED - There was an error creating the channel. For information * about the reason for the failure, see the failureReason field.

    *
*/ inline GetBotChannelAssociationResult& WithStatus(const ChannelStatus& value) { SetStatus(value); return *this;} /** *

The status of the bot channel.

  • CREATED - The * channel has been created and is ready for use.

  • * IN_PROGRESS - Channel creation is in progress.

  • * FAILED - There was an error creating the channel. For information * about the reason for the failure, see the failureReason field.

    *
*/ inline GetBotChannelAssociationResult& WithStatus(ChannelStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

If status is FAILED, Amazon Lex provides the reason * that it failed to create the association.

*/ inline const Aws::String& GetFailureReason() const{ return m_failureReason; } /** *

If status is FAILED, Amazon Lex provides the reason * that it failed to create the association.

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

If status is FAILED, Amazon Lex provides the reason * that it failed to create the association.

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

If status is FAILED, Amazon Lex provides the reason * that it failed to create the association.

*/ inline void SetFailureReason(const char* value) { m_failureReason.assign(value); } /** *

If status is FAILED, Amazon Lex provides the reason * that it failed to create the association.

*/ inline GetBotChannelAssociationResult& WithFailureReason(const Aws::String& value) { SetFailureReason(value); return *this;} /** *

If status is FAILED, Amazon Lex provides the reason * that it failed to create the association.

*/ inline GetBotChannelAssociationResult& WithFailureReason(Aws::String&& value) { SetFailureReason(std::move(value)); return *this;} /** *

If status is FAILED, Amazon Lex provides the reason * that it failed to create the association.

*/ inline GetBotChannelAssociationResult& WithFailureReason(const char* value) { SetFailureReason(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 GetBotChannelAssociationResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetBotChannelAssociationResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetBotChannelAssociationResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_name; Aws::String m_description; Aws::String m_botAlias; Aws::String m_botName; Aws::Utils::DateTime m_createdDate; ChannelType m_type; Aws::Map m_botConfiguration; ChannelStatus m_status; Aws::String m_failureReason; Aws::String m_requestId; }; } // namespace Model } // namespace LexModelBuildingService } // namespace Aws