/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace ConnectWisdomService { namespace Model { /** *

Information about the content.

See Also:

AWS * API Reference

*/ class ContentData { public: AWS_CONNECTWISDOMSERVICE_API ContentData(); AWS_CONNECTWISDOMSERVICE_API ContentData(Aws::Utils::Json::JsonView jsonValue); AWS_CONNECTWISDOMSERVICE_API ContentData& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_CONNECTWISDOMSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The Amazon Resource Name (ARN) of the content.

*/ inline const Aws::String& GetContentArn() const{ return m_contentArn; } /** *

The Amazon Resource Name (ARN) of the content.

*/ inline bool ContentArnHasBeenSet() const { return m_contentArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the content.

*/ inline void SetContentArn(const Aws::String& value) { m_contentArnHasBeenSet = true; m_contentArn = value; } /** *

The Amazon Resource Name (ARN) of the content.

*/ inline void SetContentArn(Aws::String&& value) { m_contentArnHasBeenSet = true; m_contentArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the content.

*/ inline void SetContentArn(const char* value) { m_contentArnHasBeenSet = true; m_contentArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the content.

*/ inline ContentData& WithContentArn(const Aws::String& value) { SetContentArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the content.

*/ inline ContentData& WithContentArn(Aws::String&& value) { SetContentArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the content.

*/ inline ContentData& WithContentArn(const char* value) { SetContentArn(value); return *this;} /** *

The identifier of the content.

*/ inline const Aws::String& GetContentId() const{ return m_contentId; } /** *

The identifier of the content.

*/ inline bool ContentIdHasBeenSet() const { return m_contentIdHasBeenSet; } /** *

The identifier of the content.

*/ inline void SetContentId(const Aws::String& value) { m_contentIdHasBeenSet = true; m_contentId = value; } /** *

The identifier of the content.

*/ inline void SetContentId(Aws::String&& value) { m_contentIdHasBeenSet = true; m_contentId = std::move(value); } /** *

The identifier of the content.

*/ inline void SetContentId(const char* value) { m_contentIdHasBeenSet = true; m_contentId.assign(value); } /** *

The identifier of the content.

*/ inline ContentData& WithContentId(const Aws::String& value) { SetContentId(value); return *this;} /** *

The identifier of the content.

*/ inline ContentData& WithContentId(Aws::String&& value) { SetContentId(std::move(value)); return *this;} /** *

The identifier of the content.

*/ inline ContentData& WithContentId(const char* value) { SetContentId(value); return *this;} /** *

The media type of the content.

*/ inline const Aws::String& GetContentType() const{ return m_contentType; } /** *

The media type of the content.

*/ inline bool ContentTypeHasBeenSet() const { return m_contentTypeHasBeenSet; } /** *

The media type of the content.

*/ inline void SetContentType(const Aws::String& value) { m_contentTypeHasBeenSet = true; m_contentType = value; } /** *

The media type of the content.

*/ inline void SetContentType(Aws::String&& value) { m_contentTypeHasBeenSet = true; m_contentType = std::move(value); } /** *

The media type of the content.

*/ inline void SetContentType(const char* value) { m_contentTypeHasBeenSet = true; m_contentType.assign(value); } /** *

The media type of the content.

*/ inline ContentData& WithContentType(const Aws::String& value) { SetContentType(value); return *this;} /** *

The media type of the content.

*/ inline ContentData& WithContentType(Aws::String&& value) { SetContentType(std::move(value)); return *this;} /** *

The media type of the content.

*/ inline ContentData& WithContentType(const char* value) { SetContentType(value); return *this;} /** *

The Amazon Resource Name (ARN) of the knowledge base.

*/ inline const Aws::String& GetKnowledgeBaseArn() const{ return m_knowledgeBaseArn; } /** *

The Amazon Resource Name (ARN) of the knowledge base.

*/ inline bool KnowledgeBaseArnHasBeenSet() const { return m_knowledgeBaseArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the knowledge base.

*/ inline void SetKnowledgeBaseArn(const Aws::String& value) { m_knowledgeBaseArnHasBeenSet = true; m_knowledgeBaseArn = value; } /** *

The Amazon Resource Name (ARN) of the knowledge base.

*/ inline void SetKnowledgeBaseArn(Aws::String&& value) { m_knowledgeBaseArnHasBeenSet = true; m_knowledgeBaseArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the knowledge base.

*/ inline void SetKnowledgeBaseArn(const char* value) { m_knowledgeBaseArnHasBeenSet = true; m_knowledgeBaseArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the knowledge base.

*/ inline ContentData& WithKnowledgeBaseArn(const Aws::String& value) { SetKnowledgeBaseArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the knowledge base.

*/ inline ContentData& WithKnowledgeBaseArn(Aws::String&& value) { SetKnowledgeBaseArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the knowledge base.

*/ inline ContentData& WithKnowledgeBaseArn(const char* value) { SetKnowledgeBaseArn(value); return *this;} /** *

The identifier of the knowledge base.

*/ inline const Aws::String& GetKnowledgeBaseId() const{ return m_knowledgeBaseId; } /** *

The identifier of the knowledge base.

*/ inline bool KnowledgeBaseIdHasBeenSet() const { return m_knowledgeBaseIdHasBeenSet; } /** *

The identifier of the knowledge base.

*/ inline void SetKnowledgeBaseId(const Aws::String& value) { m_knowledgeBaseIdHasBeenSet = true; m_knowledgeBaseId = value; } /** *

The identifier of the knowledge base.

*/ inline void SetKnowledgeBaseId(Aws::String&& value) { m_knowledgeBaseIdHasBeenSet = true; m_knowledgeBaseId = std::move(value); } /** *

The identifier of the knowledge base.

*/ inline void SetKnowledgeBaseId(const char* value) { m_knowledgeBaseIdHasBeenSet = true; m_knowledgeBaseId.assign(value); } /** *

The identifier of the knowledge base.

*/ inline ContentData& WithKnowledgeBaseId(const Aws::String& value) { SetKnowledgeBaseId(value); return *this;} /** *

The identifier of the knowledge base.

*/ inline ContentData& WithKnowledgeBaseId(Aws::String&& value) { SetKnowledgeBaseId(std::move(value)); return *this;} /** *

The identifier of the knowledge base.

*/ inline ContentData& WithKnowledgeBaseId(const char* value) { SetKnowledgeBaseId(value); return *this;} /** *

The URI of the content.

*/ inline const Aws::String& GetLinkOutUri() const{ return m_linkOutUri; } /** *

The URI of the content.

*/ inline bool LinkOutUriHasBeenSet() const { return m_linkOutUriHasBeenSet; } /** *

The URI of the content.

*/ inline void SetLinkOutUri(const Aws::String& value) { m_linkOutUriHasBeenSet = true; m_linkOutUri = value; } /** *

The URI of the content.

*/ inline void SetLinkOutUri(Aws::String&& value) { m_linkOutUriHasBeenSet = true; m_linkOutUri = std::move(value); } /** *

The URI of the content.

*/ inline void SetLinkOutUri(const char* value) { m_linkOutUriHasBeenSet = true; m_linkOutUri.assign(value); } /** *

The URI of the content.

*/ inline ContentData& WithLinkOutUri(const Aws::String& value) { SetLinkOutUri(value); return *this;} /** *

The URI of the content.

*/ inline ContentData& WithLinkOutUri(Aws::String&& value) { SetLinkOutUri(std::move(value)); return *this;} /** *

The URI of the content.

*/ inline ContentData& WithLinkOutUri(const char* value) { SetLinkOutUri(value); return *this;} /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline const Aws::Map& GetMetadata() const{ return m_metadata; } /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; } /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline void SetMetadata(const Aws::Map& value) { m_metadataHasBeenSet = true; m_metadata = value; } /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline void SetMetadata(Aws::Map&& value) { m_metadataHasBeenSet = true; m_metadata = std::move(value); } /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline ContentData& WithMetadata(const Aws::Map& value) { SetMetadata(value); return *this;} /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline ContentData& WithMetadata(Aws::Map&& value) { SetMetadata(std::move(value)); return *this;} /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline ContentData& AddMetadata(const Aws::String& key, const Aws::String& value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, value); return *this; } /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline ContentData& AddMetadata(Aws::String&& key, const Aws::String& value) { m_metadataHasBeenSet = true; m_metadata.emplace(std::move(key), value); return *this; } /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline ContentData& AddMetadata(const Aws::String& key, Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, std::move(value)); return *this; } /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline ContentData& AddMetadata(Aws::String&& key, Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata.emplace(std::move(key), std::move(value)); return *this; } /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline ContentData& AddMetadata(const char* key, Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, std::move(value)); return *this; } /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline ContentData& AddMetadata(Aws::String&& key, const char* value) { m_metadataHasBeenSet = true; m_metadata.emplace(std::move(key), value); return *this; } /** *

A key/value map to store attributes without affecting tagging or * recommendations. For example, when synchronizing data between an external system * and Wisdom, you can store an external version identifier as metadata to utilize * for determining drift.

*/ inline ContentData& AddMetadata(const char* key, const char* value) { m_metadataHasBeenSet = true; m_metadata.emplace(key, value); return *this; } /** *

The name of the content.

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

The name of the content.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the content.

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

The name of the content.

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

The name of the content.

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

The name of the content.

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

The name of the content.

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

The name of the content.

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

The identifier of the content revision.

*/ inline const Aws::String& GetRevisionId() const{ return m_revisionId; } /** *

The identifier of the content revision.

*/ inline bool RevisionIdHasBeenSet() const { return m_revisionIdHasBeenSet; } /** *

The identifier of the content revision.

*/ inline void SetRevisionId(const Aws::String& value) { m_revisionIdHasBeenSet = true; m_revisionId = value; } /** *

The identifier of the content revision.

*/ inline void SetRevisionId(Aws::String&& value) { m_revisionIdHasBeenSet = true; m_revisionId = std::move(value); } /** *

The identifier of the content revision.

*/ inline void SetRevisionId(const char* value) { m_revisionIdHasBeenSet = true; m_revisionId.assign(value); } /** *

The identifier of the content revision.

*/ inline ContentData& WithRevisionId(const Aws::String& value) { SetRevisionId(value); return *this;} /** *

The identifier of the content revision.

*/ inline ContentData& WithRevisionId(Aws::String&& value) { SetRevisionId(std::move(value)); return *this;} /** *

The identifier of the content revision.

*/ inline ContentData& WithRevisionId(const char* value) { SetRevisionId(value); return *this;} /** *

The status of the content.

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

The status of the content.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of the content.

*/ inline void SetStatus(const ContentStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of the content.

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

The status of the content.

*/ inline ContentData& WithStatus(const ContentStatus& value) { SetStatus(value); return *this;} /** *

The status of the content.

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

The tags used to organize, track, or control access for this resource.

*/ inline const Aws::Map& GetTags() const{ return m_tags; } /** *

The 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::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

The tags used to organize, track, or control access for this resource.

*/ inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

The tags used to organize, track, or control access for this resource.

*/ inline ContentData& WithTags(const Aws::Map& value) { SetTags(value); return *this;} /** *

The tags used to organize, track, or control access for this resource.

*/ inline ContentData& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} /** *

The tags used to organize, track, or control access for this resource.

*/ inline ContentData& 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 ContentData& 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 ContentData& 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 ContentData& 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 ContentData& 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 ContentData& 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 ContentData& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *

The title of the content.

*/ inline const Aws::String& GetTitle() const{ return m_title; } /** *

The title of the content.

*/ inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; } /** *

The title of the content.

*/ inline void SetTitle(const Aws::String& value) { m_titleHasBeenSet = true; m_title = value; } /** *

The title of the content.

*/ inline void SetTitle(Aws::String&& value) { m_titleHasBeenSet = true; m_title = std::move(value); } /** *

The title of the content.

*/ inline void SetTitle(const char* value) { m_titleHasBeenSet = true; m_title.assign(value); } /** *

The title of the content.

*/ inline ContentData& WithTitle(const Aws::String& value) { SetTitle(value); return *this;} /** *

The title of the content.

*/ inline ContentData& WithTitle(Aws::String&& value) { SetTitle(std::move(value)); return *this;} /** *

The title of the content.

*/ inline ContentData& WithTitle(const char* value) { SetTitle(value); return *this;} /** *

The URL of the content.

*/ inline const Aws::String& GetUrl() const{ return m_url; } /** *

The URL of the content.

*/ inline bool UrlHasBeenSet() const { return m_urlHasBeenSet; } /** *

The URL of the content.

*/ inline void SetUrl(const Aws::String& value) { m_urlHasBeenSet = true; m_url = value; } /** *

The URL of the content.

*/ inline void SetUrl(Aws::String&& value) { m_urlHasBeenSet = true; m_url = std::move(value); } /** *

The URL of the content.

*/ inline void SetUrl(const char* value) { m_urlHasBeenSet = true; m_url.assign(value); } /** *

The URL of the content.

*/ inline ContentData& WithUrl(const Aws::String& value) { SetUrl(value); return *this;} /** *

The URL of the content.

*/ inline ContentData& WithUrl(Aws::String&& value) { SetUrl(std::move(value)); return *this;} /** *

The URL of the content.

*/ inline ContentData& WithUrl(const char* value) { SetUrl(value); return *this;} /** *

The expiration time of the URL as an epoch timestamp.

*/ inline const Aws::Utils::DateTime& GetUrlExpiry() const{ return m_urlExpiry; } /** *

The expiration time of the URL as an epoch timestamp.

*/ inline bool UrlExpiryHasBeenSet() const { return m_urlExpiryHasBeenSet; } /** *

The expiration time of the URL as an epoch timestamp.

*/ inline void SetUrlExpiry(const Aws::Utils::DateTime& value) { m_urlExpiryHasBeenSet = true; m_urlExpiry = value; } /** *

The expiration time of the URL as an epoch timestamp.

*/ inline void SetUrlExpiry(Aws::Utils::DateTime&& value) { m_urlExpiryHasBeenSet = true; m_urlExpiry = std::move(value); } /** *

The expiration time of the URL as an epoch timestamp.

*/ inline ContentData& WithUrlExpiry(const Aws::Utils::DateTime& value) { SetUrlExpiry(value); return *this;} /** *

The expiration time of the URL as an epoch timestamp.

*/ inline ContentData& WithUrlExpiry(Aws::Utils::DateTime&& value) { SetUrlExpiry(std::move(value)); return *this;} private: Aws::String m_contentArn; bool m_contentArnHasBeenSet = false; Aws::String m_contentId; bool m_contentIdHasBeenSet = false; Aws::String m_contentType; bool m_contentTypeHasBeenSet = false; Aws::String m_knowledgeBaseArn; bool m_knowledgeBaseArnHasBeenSet = false; Aws::String m_knowledgeBaseId; bool m_knowledgeBaseIdHasBeenSet = false; Aws::String m_linkOutUri; bool m_linkOutUriHasBeenSet = false; Aws::Map m_metadata; bool m_metadataHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_revisionId; bool m_revisionIdHasBeenSet = false; ContentStatus m_status; bool m_statusHasBeenSet = false; Aws::Map m_tags; bool m_tagsHasBeenSet = false; Aws::String m_title; bool m_titleHasBeenSet = false; Aws::String m_url; bool m_urlHasBeenSet = false; Aws::Utils::DateTime m_urlExpiry; bool m_urlExpiryHasBeenSet = false; }; } // namespace Model } // namespace ConnectWisdomService } // namespace Aws