/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Summary information about the assistant.See Also:
AWS
* API Reference
The Amazon Resource Name (ARN) of the Wisdom assistant.
*/ inline const Aws::String& GetAssistantArn() const{ return m_assistantArn; } /** *The Amazon Resource Name (ARN) of the Wisdom assistant.
*/ inline bool AssistantArnHasBeenSet() const { return m_assistantArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the Wisdom assistant.
*/ inline void SetAssistantArn(const Aws::String& value) { m_assistantArnHasBeenSet = true; m_assistantArn = value; } /** *The Amazon Resource Name (ARN) of the Wisdom assistant.
*/ inline void SetAssistantArn(Aws::String&& value) { m_assistantArnHasBeenSet = true; m_assistantArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the Wisdom assistant.
*/ inline void SetAssistantArn(const char* value) { m_assistantArnHasBeenSet = true; m_assistantArn.assign(value); } /** *The Amazon Resource Name (ARN) of the Wisdom assistant.
*/ inline AssistantSummary& WithAssistantArn(const Aws::String& value) { SetAssistantArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the Wisdom assistant.
*/ inline AssistantSummary& WithAssistantArn(Aws::String&& value) { SetAssistantArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the Wisdom assistant.
*/ inline AssistantSummary& WithAssistantArn(const char* value) { SetAssistantArn(value); return *this;} /** *The identifier of the Wisdom assistant.
*/ inline const Aws::String& GetAssistantId() const{ return m_assistantId; } /** *The identifier of the Wisdom assistant.
*/ inline bool AssistantIdHasBeenSet() const { return m_assistantIdHasBeenSet; } /** *The identifier of the Wisdom assistant.
*/ inline void SetAssistantId(const Aws::String& value) { m_assistantIdHasBeenSet = true; m_assistantId = value; } /** *The identifier of the Wisdom assistant.
*/ inline void SetAssistantId(Aws::String&& value) { m_assistantIdHasBeenSet = true; m_assistantId = std::move(value); } /** *The identifier of the Wisdom assistant.
*/ inline void SetAssistantId(const char* value) { m_assistantIdHasBeenSet = true; m_assistantId.assign(value); } /** *The identifier of the Wisdom assistant.
*/ inline AssistantSummary& WithAssistantId(const Aws::String& value) { SetAssistantId(value); return *this;} /** *The identifier of the Wisdom assistant.
*/ inline AssistantSummary& WithAssistantId(Aws::String&& value) { SetAssistantId(std::move(value)); return *this;} /** *The identifier of the Wisdom assistant.
*/ inline AssistantSummary& WithAssistantId(const char* value) { SetAssistantId(value); return *this;} /** *The description of the assistant.
*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *The description of the assistant.
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *The description of the assistant.
*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *The description of the assistant.
*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *The description of the assistant.
*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *The description of the assistant.
*/ inline AssistantSummary& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *The description of the assistant.
*/ inline AssistantSummary& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *The description of the assistant.
*/ inline AssistantSummary& WithDescription(const char* value) { SetDescription(value); return *this;} /** *The configuration information for the Wisdom assistant integration.
*/ inline const AssistantIntegrationConfiguration& GetIntegrationConfiguration() const{ return m_integrationConfiguration; } /** *The configuration information for the Wisdom assistant integration.
*/ inline bool IntegrationConfigurationHasBeenSet() const { return m_integrationConfigurationHasBeenSet; } /** *The configuration information for the Wisdom assistant integration.
*/ inline void SetIntegrationConfiguration(const AssistantIntegrationConfiguration& value) { m_integrationConfigurationHasBeenSet = true; m_integrationConfiguration = value; } /** *The configuration information for the Wisdom assistant integration.
*/ inline void SetIntegrationConfiguration(AssistantIntegrationConfiguration&& value) { m_integrationConfigurationHasBeenSet = true; m_integrationConfiguration = std::move(value); } /** *The configuration information for the Wisdom assistant integration.
*/ inline AssistantSummary& WithIntegrationConfiguration(const AssistantIntegrationConfiguration& value) { SetIntegrationConfiguration(value); return *this;} /** *The configuration information for the Wisdom assistant integration.
*/ inline AssistantSummary& WithIntegrationConfiguration(AssistantIntegrationConfiguration&& value) { SetIntegrationConfiguration(std::move(value)); return *this;} /** *The name of the assistant.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The name of the assistant.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The name of the assistant.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The name of the assistant.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The name of the assistant.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The name of the assistant.
*/ inline AssistantSummary& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The name of the assistant.
*/ inline AssistantSummary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The name of the assistant.
*/ inline AssistantSummary& WithName(const char* value) { SetName(value); return *this;} /** *The KMS key used for encryption.
*/ inline const ServerSideEncryptionConfiguration& GetServerSideEncryptionConfiguration() const{ return m_serverSideEncryptionConfiguration; } /** *The KMS key used for encryption.
*/ inline bool ServerSideEncryptionConfigurationHasBeenSet() const { return m_serverSideEncryptionConfigurationHasBeenSet; } /** *The KMS key used for encryption.
*/ inline void SetServerSideEncryptionConfiguration(const ServerSideEncryptionConfiguration& value) { m_serverSideEncryptionConfigurationHasBeenSet = true; m_serverSideEncryptionConfiguration = value; } /** *The KMS key used for encryption.
*/ inline void SetServerSideEncryptionConfiguration(ServerSideEncryptionConfiguration&& value) { m_serverSideEncryptionConfigurationHasBeenSet = true; m_serverSideEncryptionConfiguration = std::move(value); } /** *The KMS key used for encryption.
*/ inline AssistantSummary& WithServerSideEncryptionConfiguration(const ServerSideEncryptionConfiguration& value) { SetServerSideEncryptionConfiguration(value); return *this;} /** *The KMS key used for encryption.
*/ inline AssistantSummary& WithServerSideEncryptionConfiguration(ServerSideEncryptionConfiguration&& value) { SetServerSideEncryptionConfiguration(std::move(value)); return *this;} /** *The status of the assistant.
*/ inline const AssistantStatus& GetStatus() const{ return m_status; } /** *The status of the assistant.
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *The status of the assistant.
*/ inline void SetStatus(const AssistantStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *The status of the assistant.
*/ inline void SetStatus(AssistantStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *The status of the assistant.
*/ inline AssistantSummary& WithStatus(const AssistantStatus& value) { SetStatus(value); return *this;} /** *The status of the assistant.
*/ inline AssistantSummary& WithStatus(AssistantStatus&& value) { SetStatus(std::move(value)); return *this;} /** *The tags used to organize, track, or control access for this resource.
*/ inline const Aws::MapThe tags used to organize, track, or control access for this resource.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *The tags used to organize, track, or control access for this resource.
*/ inline void SetTags(const Aws::MapThe tags used to organize, track, or control access for this resource.
*/ inline void SetTags(Aws::MapThe tags used to organize, track, or control access for this resource.
*/ inline AssistantSummary& WithTags(const Aws::MapThe tags used to organize, track, or control access for this resource.
*/ inline AssistantSummary& WithTags(Aws::MapThe tags used to organize, track, or control access for this resource.
*/ inline AssistantSummary& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *The tags used to organize, track, or control access for this resource.
*/ inline AssistantSummary& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *The tags used to organize, track, or control access for this resource.
*/ inline AssistantSummary& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *The tags used to organize, track, or control access for this resource.
*/ inline AssistantSummary& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *The tags used to organize, track, or control access for this resource.
*/ inline AssistantSummary& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *The tags used to organize, track, or control access for this resource.
*/ inline AssistantSummary& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *The tags used to organize, track, or control access for this resource.
*/ inline AssistantSummary& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *The type of the assistant.
*/ inline const AssistantType& GetType() const{ return m_type; } /** *The type of the assistant.
*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *The type of the assistant.
*/ inline void SetType(const AssistantType& value) { m_typeHasBeenSet = true; m_type = value; } /** *The type of the assistant.
*/ inline void SetType(AssistantType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *The type of the assistant.
*/ inline AssistantSummary& WithType(const AssistantType& value) { SetType(value); return *this;} /** *The type of the assistant.
*/ inline AssistantSummary& WithType(AssistantType&& value) { SetType(std::move(value)); return *this;} private: Aws::String m_assistantArn; bool m_assistantArnHasBeenSet = false; Aws::String m_assistantId; bool m_assistantIdHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; AssistantIntegrationConfiguration m_integrationConfiguration; bool m_integrationConfigurationHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; ServerSideEncryptionConfiguration m_serverSideEncryptionConfiguration; bool m_serverSideEncryptionConfigurationHasBeenSet = false; AssistantStatus m_status; bool m_statusHasBeenSet = false; Aws::Map