/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about the assistant association.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 AssistantAssociationData& WithAssistantArn(const Aws::String& value) { SetAssistantArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the Wisdom assistant.
*/ inline AssistantAssociationData& WithAssistantArn(Aws::String&& value) { SetAssistantArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the Wisdom assistant.
*/ inline AssistantAssociationData& WithAssistantArn(const char* value) { SetAssistantArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the assistant association.
*/ inline const Aws::String& GetAssistantAssociationArn() const{ return m_assistantAssociationArn; } /** *The Amazon Resource Name (ARN) of the assistant association.
*/ inline bool AssistantAssociationArnHasBeenSet() const { return m_assistantAssociationArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the assistant association.
*/ inline void SetAssistantAssociationArn(const Aws::String& value) { m_assistantAssociationArnHasBeenSet = true; m_assistantAssociationArn = value; } /** *The Amazon Resource Name (ARN) of the assistant association.
*/ inline void SetAssistantAssociationArn(Aws::String&& value) { m_assistantAssociationArnHasBeenSet = true; m_assistantAssociationArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the assistant association.
*/ inline void SetAssistantAssociationArn(const char* value) { m_assistantAssociationArnHasBeenSet = true; m_assistantAssociationArn.assign(value); } /** *The Amazon Resource Name (ARN) of the assistant association.
*/ inline AssistantAssociationData& WithAssistantAssociationArn(const Aws::String& value) { SetAssistantAssociationArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the assistant association.
*/ inline AssistantAssociationData& WithAssistantAssociationArn(Aws::String&& value) { SetAssistantAssociationArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the assistant association.
*/ inline AssistantAssociationData& WithAssistantAssociationArn(const char* value) { SetAssistantAssociationArn(value); return *this;} /** *The identifier of the assistant association.
*/ inline const Aws::String& GetAssistantAssociationId() const{ return m_assistantAssociationId; } /** *The identifier of the assistant association.
*/ inline bool AssistantAssociationIdHasBeenSet() const { return m_assistantAssociationIdHasBeenSet; } /** *The identifier of the assistant association.
*/ inline void SetAssistantAssociationId(const Aws::String& value) { m_assistantAssociationIdHasBeenSet = true; m_assistantAssociationId = value; } /** *The identifier of the assistant association.
*/ inline void SetAssistantAssociationId(Aws::String&& value) { m_assistantAssociationIdHasBeenSet = true; m_assistantAssociationId = std::move(value); } /** *The identifier of the assistant association.
*/ inline void SetAssistantAssociationId(const char* value) { m_assistantAssociationIdHasBeenSet = true; m_assistantAssociationId.assign(value); } /** *The identifier of the assistant association.
*/ inline AssistantAssociationData& WithAssistantAssociationId(const Aws::String& value) { SetAssistantAssociationId(value); return *this;} /** *The identifier of the assistant association.
*/ inline AssistantAssociationData& WithAssistantAssociationId(Aws::String&& value) { SetAssistantAssociationId(std::move(value)); return *this;} /** *The identifier of the assistant association.
*/ inline AssistantAssociationData& WithAssistantAssociationId(const char* value) { SetAssistantAssociationId(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 AssistantAssociationData& WithAssistantId(const Aws::String& value) { SetAssistantId(value); return *this;} /** *The identifier of the Wisdom assistant.
*/ inline AssistantAssociationData& WithAssistantId(Aws::String&& value) { SetAssistantId(std::move(value)); return *this;} /** *The identifier of the Wisdom assistant.
*/ inline AssistantAssociationData& WithAssistantId(const char* value) { SetAssistantId(value); return *this;} /** *A union type that currently has a single argument, the knowledge base ID.
*/ inline const AssistantAssociationOutputData& GetAssociationData() const{ return m_associationData; } /** *A union type that currently has a single argument, the knowledge base ID.
*/ inline bool AssociationDataHasBeenSet() const { return m_associationDataHasBeenSet; } /** *A union type that currently has a single argument, the knowledge base ID.
*/ inline void SetAssociationData(const AssistantAssociationOutputData& value) { m_associationDataHasBeenSet = true; m_associationData = value; } /** *A union type that currently has a single argument, the knowledge base ID.
*/ inline void SetAssociationData(AssistantAssociationOutputData&& value) { m_associationDataHasBeenSet = true; m_associationData = std::move(value); } /** *A union type that currently has a single argument, the knowledge base ID.
*/ inline AssistantAssociationData& WithAssociationData(const AssistantAssociationOutputData& value) { SetAssociationData(value); return *this;} /** *A union type that currently has a single argument, the knowledge base ID.
*/ inline AssistantAssociationData& WithAssociationData(AssistantAssociationOutputData&& value) { SetAssociationData(std::move(value)); return *this;} /** *The type of association.
*/ inline const AssociationType& GetAssociationType() const{ return m_associationType; } /** *The type of association.
*/ inline bool AssociationTypeHasBeenSet() const { return m_associationTypeHasBeenSet; } /** *The type of association.
*/ inline void SetAssociationType(const AssociationType& value) { m_associationTypeHasBeenSet = true; m_associationType = value; } /** *The type of association.
*/ inline void SetAssociationType(AssociationType&& value) { m_associationTypeHasBeenSet = true; m_associationType = std::move(value); } /** *The type of association.
*/ inline AssistantAssociationData& WithAssociationType(const AssociationType& value) { SetAssociationType(value); return *this;} /** *The type of association.
*/ inline AssistantAssociationData& WithAssociationType(AssociationType&& value) { SetAssociationType(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 AssistantAssociationData& WithTags(const Aws::MapThe tags used to organize, track, or control access for this resource.
*/ inline AssistantAssociationData& WithTags(Aws::MapThe tags used to organize, track, or control access for this resource.
*/ inline AssistantAssociationData& 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 AssistantAssociationData& 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 AssistantAssociationData& 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 AssistantAssociationData& 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 AssistantAssociationData& 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 AssistantAssociationData& 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 AssistantAssociationData& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } private: Aws::String m_assistantArn; bool m_assistantArnHasBeenSet = false; Aws::String m_assistantAssociationArn; bool m_assistantAssociationArnHasBeenSet = false; Aws::String m_assistantAssociationId; bool m_assistantAssociationIdHasBeenSet = false; Aws::String m_assistantId; bool m_assistantIdHasBeenSet = false; AssistantAssociationOutputData m_associationData; bool m_associationDataHasBeenSet = false; AssociationType m_associationType; bool m_associationTypeHasBeenSet = false; Aws::Map