/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes a version of a document.See Also:
AWS
* API Reference
The ID of the version.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The ID of the version.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The ID of the version.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The ID of the version.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The ID of the version.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The ID of the version.
*/ inline DocumentVersionMetadata& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The ID of the version.
*/ inline DocumentVersionMetadata& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The ID of the version.
*/ inline DocumentVersionMetadata& WithId(const char* value) { SetId(value); return *this;} /** *The name of the version.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The name of the version.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The name of the version.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The name of the version.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The name of the version.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The name of the version.
*/ inline DocumentVersionMetadata& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The name of the version.
*/ inline DocumentVersionMetadata& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The name of the version.
*/ inline DocumentVersionMetadata& WithName(const char* value) { SetName(value); return *this;} /** *The content type of the document.
*/ inline const Aws::String& GetContentType() const{ return m_contentType; } /** *The content type of the document.
*/ inline bool ContentTypeHasBeenSet() const { return m_contentTypeHasBeenSet; } /** *The content type of the document.
*/ inline void SetContentType(const Aws::String& value) { m_contentTypeHasBeenSet = true; m_contentType = value; } /** *The content type of the document.
*/ inline void SetContentType(Aws::String&& value) { m_contentTypeHasBeenSet = true; m_contentType = std::move(value); } /** *The content type of the document.
*/ inline void SetContentType(const char* value) { m_contentTypeHasBeenSet = true; m_contentType.assign(value); } /** *The content type of the document.
*/ inline DocumentVersionMetadata& WithContentType(const Aws::String& value) { SetContentType(value); return *this;} /** *The content type of the document.
*/ inline DocumentVersionMetadata& WithContentType(Aws::String&& value) { SetContentType(std::move(value)); return *this;} /** *The content type of the document.
*/ inline DocumentVersionMetadata& WithContentType(const char* value) { SetContentType(value); return *this;} /** *The size of the document, in bytes.
*/ inline long long GetSize() const{ return m_size; } /** *The size of the document, in bytes.
*/ inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; } /** *The size of the document, in bytes.
*/ inline void SetSize(long long value) { m_sizeHasBeenSet = true; m_size = value; } /** *The size of the document, in bytes.
*/ inline DocumentVersionMetadata& WithSize(long long value) { SetSize(value); return *this;} /** *The signature of the document.
*/ inline const Aws::String& GetSignature() const{ return m_signature; } /** *The signature of the document.
*/ inline bool SignatureHasBeenSet() const { return m_signatureHasBeenSet; } /** *The signature of the document.
*/ inline void SetSignature(const Aws::String& value) { m_signatureHasBeenSet = true; m_signature = value; } /** *The signature of the document.
*/ inline void SetSignature(Aws::String&& value) { m_signatureHasBeenSet = true; m_signature = std::move(value); } /** *The signature of the document.
*/ inline void SetSignature(const char* value) { m_signatureHasBeenSet = true; m_signature.assign(value); } /** *The signature of the document.
*/ inline DocumentVersionMetadata& WithSignature(const Aws::String& value) { SetSignature(value); return *this;} /** *The signature of the document.
*/ inline DocumentVersionMetadata& WithSignature(Aws::String&& value) { SetSignature(std::move(value)); return *this;} /** *The signature of the document.
*/ inline DocumentVersionMetadata& WithSignature(const char* value) { SetSignature(value); return *this;} /** *The status of the document.
*/ inline const DocumentStatusType& GetStatus() const{ return m_status; } /** *The status of the document.
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *The status of the document.
*/ inline void SetStatus(const DocumentStatusType& value) { m_statusHasBeenSet = true; m_status = value; } /** *The status of the document.
*/ inline void SetStatus(DocumentStatusType&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *The status of the document.
*/ inline DocumentVersionMetadata& WithStatus(const DocumentStatusType& value) { SetStatus(value); return *this;} /** *The status of the document.
*/ inline DocumentVersionMetadata& WithStatus(DocumentStatusType&& value) { SetStatus(std::move(value)); return *this;} /** *The timestamp when the document was first uploaded.
*/ inline const Aws::Utils::DateTime& GetCreatedTimestamp() const{ return m_createdTimestamp; } /** *The timestamp when the document was first uploaded.
*/ inline bool CreatedTimestampHasBeenSet() const { return m_createdTimestampHasBeenSet; } /** *The timestamp when the document was first uploaded.
*/ inline void SetCreatedTimestamp(const Aws::Utils::DateTime& value) { m_createdTimestampHasBeenSet = true; m_createdTimestamp = value; } /** *The timestamp when the document was first uploaded.
*/ inline void SetCreatedTimestamp(Aws::Utils::DateTime&& value) { m_createdTimestampHasBeenSet = true; m_createdTimestamp = std::move(value); } /** *The timestamp when the document was first uploaded.
*/ inline DocumentVersionMetadata& WithCreatedTimestamp(const Aws::Utils::DateTime& value) { SetCreatedTimestamp(value); return *this;} /** *The timestamp when the document was first uploaded.
*/ inline DocumentVersionMetadata& WithCreatedTimestamp(Aws::Utils::DateTime&& value) { SetCreatedTimestamp(std::move(value)); return *this;} /** *The timestamp when the document was last uploaded.
*/ inline const Aws::Utils::DateTime& GetModifiedTimestamp() const{ return m_modifiedTimestamp; } /** *The timestamp when the document was last uploaded.
*/ inline bool ModifiedTimestampHasBeenSet() const { return m_modifiedTimestampHasBeenSet; } /** *The timestamp when the document was last uploaded.
*/ inline void SetModifiedTimestamp(const Aws::Utils::DateTime& value) { m_modifiedTimestampHasBeenSet = true; m_modifiedTimestamp = value; } /** *The timestamp when the document was last uploaded.
*/ inline void SetModifiedTimestamp(Aws::Utils::DateTime&& value) { m_modifiedTimestampHasBeenSet = true; m_modifiedTimestamp = std::move(value); } /** *The timestamp when the document was last uploaded.
*/ inline DocumentVersionMetadata& WithModifiedTimestamp(const Aws::Utils::DateTime& value) { SetModifiedTimestamp(value); return *this;} /** *The timestamp when the document was last uploaded.
*/ inline DocumentVersionMetadata& WithModifiedTimestamp(Aws::Utils::DateTime&& value) { SetModifiedTimestamp(std::move(value)); return *this;} /** *The timestamp when the content of the document was originally created.
*/ inline const Aws::Utils::DateTime& GetContentCreatedTimestamp() const{ return m_contentCreatedTimestamp; } /** *The timestamp when the content of the document was originally created.
*/ inline bool ContentCreatedTimestampHasBeenSet() const { return m_contentCreatedTimestampHasBeenSet; } /** *The timestamp when the content of the document was originally created.
*/ inline void SetContentCreatedTimestamp(const Aws::Utils::DateTime& value) { m_contentCreatedTimestampHasBeenSet = true; m_contentCreatedTimestamp = value; } /** *The timestamp when the content of the document was originally created.
*/ inline void SetContentCreatedTimestamp(Aws::Utils::DateTime&& value) { m_contentCreatedTimestampHasBeenSet = true; m_contentCreatedTimestamp = std::move(value); } /** *The timestamp when the content of the document was originally created.
*/ inline DocumentVersionMetadata& WithContentCreatedTimestamp(const Aws::Utils::DateTime& value) { SetContentCreatedTimestamp(value); return *this;} /** *The timestamp when the content of the document was originally created.
*/ inline DocumentVersionMetadata& WithContentCreatedTimestamp(Aws::Utils::DateTime&& value) { SetContentCreatedTimestamp(std::move(value)); return *this;} /** *The timestamp when the content of the document was modified.
*/ inline const Aws::Utils::DateTime& GetContentModifiedTimestamp() const{ return m_contentModifiedTimestamp; } /** *The timestamp when the content of the document was modified.
*/ inline bool ContentModifiedTimestampHasBeenSet() const { return m_contentModifiedTimestampHasBeenSet; } /** *The timestamp when the content of the document was modified.
*/ inline void SetContentModifiedTimestamp(const Aws::Utils::DateTime& value) { m_contentModifiedTimestampHasBeenSet = true; m_contentModifiedTimestamp = value; } /** *The timestamp when the content of the document was modified.
*/ inline void SetContentModifiedTimestamp(Aws::Utils::DateTime&& value) { m_contentModifiedTimestampHasBeenSet = true; m_contentModifiedTimestamp = std::move(value); } /** *The timestamp when the content of the document was modified.
*/ inline DocumentVersionMetadata& WithContentModifiedTimestamp(const Aws::Utils::DateTime& value) { SetContentModifiedTimestamp(value); return *this;} /** *The timestamp when the content of the document was modified.
*/ inline DocumentVersionMetadata& WithContentModifiedTimestamp(Aws::Utils::DateTime&& value) { SetContentModifiedTimestamp(std::move(value)); return *this;} /** *The ID of the creator.
*/ inline const Aws::String& GetCreatorId() const{ return m_creatorId; } /** *The ID of the creator.
*/ inline bool CreatorIdHasBeenSet() const { return m_creatorIdHasBeenSet; } /** *The ID of the creator.
*/ inline void SetCreatorId(const Aws::String& value) { m_creatorIdHasBeenSet = true; m_creatorId = value; } /** *The ID of the creator.
*/ inline void SetCreatorId(Aws::String&& value) { m_creatorIdHasBeenSet = true; m_creatorId = std::move(value); } /** *The ID of the creator.
*/ inline void SetCreatorId(const char* value) { m_creatorIdHasBeenSet = true; m_creatorId.assign(value); } /** *The ID of the creator.
*/ inline DocumentVersionMetadata& WithCreatorId(const Aws::String& value) { SetCreatorId(value); return *this;} /** *The ID of the creator.
*/ inline DocumentVersionMetadata& WithCreatorId(Aws::String&& value) { SetCreatorId(std::move(value)); return *this;} /** *The ID of the creator.
*/ inline DocumentVersionMetadata& WithCreatorId(const char* value) { SetCreatorId(value); return *this;} /** *The thumbnail of the document.
*/ inline const Aws::MapThe thumbnail of the document.
*/ inline bool ThumbnailHasBeenSet() const { return m_thumbnailHasBeenSet; } /** *The thumbnail of the document.
*/ inline void SetThumbnail(const Aws::MapThe thumbnail of the document.
*/ inline void SetThumbnail(Aws::MapThe thumbnail of the document.
*/ inline DocumentVersionMetadata& WithThumbnail(const Aws::MapThe thumbnail of the document.
*/ inline DocumentVersionMetadata& WithThumbnail(Aws::MapThe thumbnail of the document.
*/ inline DocumentVersionMetadata& AddThumbnail(const DocumentThumbnailType& key, const Aws::String& value) { m_thumbnailHasBeenSet = true; m_thumbnail.emplace(key, value); return *this; } /** *The thumbnail of the document.
*/ inline DocumentVersionMetadata& AddThumbnail(DocumentThumbnailType&& key, const Aws::String& value) { m_thumbnailHasBeenSet = true; m_thumbnail.emplace(std::move(key), value); return *this; } /** *The thumbnail of the document.
*/ inline DocumentVersionMetadata& AddThumbnail(const DocumentThumbnailType& key, Aws::String&& value) { m_thumbnailHasBeenSet = true; m_thumbnail.emplace(key, std::move(value)); return *this; } /** *The thumbnail of the document.
*/ inline DocumentVersionMetadata& AddThumbnail(DocumentThumbnailType&& key, Aws::String&& value) { m_thumbnailHasBeenSet = true; m_thumbnail.emplace(std::move(key), std::move(value)); return *this; } /** *The thumbnail of the document.
*/ inline DocumentVersionMetadata& AddThumbnail(DocumentThumbnailType&& key, const char* value) { m_thumbnailHasBeenSet = true; m_thumbnail.emplace(std::move(key), value); return *this; } /** *The thumbnail of the document.
*/ inline DocumentVersionMetadata& AddThumbnail(const DocumentThumbnailType& key, const char* value) { m_thumbnailHasBeenSet = true; m_thumbnail.emplace(key, value); return *this; } /** *The source of the document.
*/ inline const Aws::MapThe source of the document.
*/ inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; } /** *The source of the document.
*/ inline void SetSource(const Aws::MapThe source of the document.
*/ inline void SetSource(Aws::MapThe source of the document.
*/ inline DocumentVersionMetadata& WithSource(const Aws::MapThe source of the document.
*/ inline DocumentVersionMetadata& WithSource(Aws::MapThe source of the document.
*/ inline DocumentVersionMetadata& AddSource(const DocumentSourceType& key, const Aws::String& value) { m_sourceHasBeenSet = true; m_source.emplace(key, value); return *this; } /** *The source of the document.
*/ inline DocumentVersionMetadata& AddSource(DocumentSourceType&& key, const Aws::String& value) { m_sourceHasBeenSet = true; m_source.emplace(std::move(key), value); return *this; } /** *The source of the document.
*/ inline DocumentVersionMetadata& AddSource(const DocumentSourceType& key, Aws::String&& value) { m_sourceHasBeenSet = true; m_source.emplace(key, std::move(value)); return *this; } /** *The source of the document.
*/ inline DocumentVersionMetadata& AddSource(DocumentSourceType&& key, Aws::String&& value) { m_sourceHasBeenSet = true; m_source.emplace(std::move(key), std::move(value)); return *this; } /** *The source of the document.
*/ inline DocumentVersionMetadata& AddSource(DocumentSourceType&& key, const char* value) { m_sourceHasBeenSet = true; m_source.emplace(std::move(key), value); return *this; } /** *The source of the document.
*/ inline DocumentVersionMetadata& AddSource(const DocumentSourceType& key, const char* value) { m_sourceHasBeenSet = true; m_source.emplace(key, value); return *this; } private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_contentType; bool m_contentTypeHasBeenSet = false; long long m_size; bool m_sizeHasBeenSet = false; Aws::String m_signature; bool m_signatureHasBeenSet = false; DocumentStatusType m_status; bool m_statusHasBeenSet = false; Aws::Utils::DateTime m_createdTimestamp; bool m_createdTimestampHasBeenSet = false; Aws::Utils::DateTime m_modifiedTimestamp; bool m_modifiedTimestampHasBeenSet = false; Aws::Utils::DateTime m_contentCreatedTimestamp; bool m_contentCreatedTimestampHasBeenSet = false; Aws::Utils::DateTime m_contentModifiedTimestamp; bool m_contentModifiedTimestampHasBeenSet = false; Aws::String m_creatorId; bool m_creatorIdHasBeenSet = false; Aws::Map