/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace WorkDocs { namespace Model { /** */ class InitiateDocumentVersionUploadRequest : public WorkDocsRequest { public: AWS_WORKDOCS_API InitiateDocumentVersionUploadRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "InitiateDocumentVersionUpload"; } AWS_WORKDOCS_API Aws::String SerializePayload() const override; AWS_WORKDOCS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

Amazon WorkDocs authentication token. Not required when using Amazon Web * Services administrator credentials to access the API.

*/ inline const Aws::String& GetAuthenticationToken() const{ return m_authenticationToken; } /** *

Amazon WorkDocs authentication token. Not required when using Amazon Web * Services administrator credentials to access the API.

*/ inline bool AuthenticationTokenHasBeenSet() const { return m_authenticationTokenHasBeenSet; } /** *

Amazon WorkDocs authentication token. Not required when using Amazon Web * Services administrator credentials to access the API.

*/ inline void SetAuthenticationToken(const Aws::String& value) { m_authenticationTokenHasBeenSet = true; m_authenticationToken = value; } /** *

Amazon WorkDocs authentication token. Not required when using Amazon Web * Services administrator credentials to access the API.

*/ inline void SetAuthenticationToken(Aws::String&& value) { m_authenticationTokenHasBeenSet = true; m_authenticationToken = std::move(value); } /** *

Amazon WorkDocs authentication token. Not required when using Amazon Web * Services administrator credentials to access the API.

*/ inline void SetAuthenticationToken(const char* value) { m_authenticationTokenHasBeenSet = true; m_authenticationToken.assign(value); } /** *

Amazon WorkDocs authentication token. Not required when using Amazon Web * Services administrator credentials to access the API.

*/ inline InitiateDocumentVersionUploadRequest& WithAuthenticationToken(const Aws::String& value) { SetAuthenticationToken(value); return *this;} /** *

Amazon WorkDocs authentication token. Not required when using Amazon Web * Services administrator credentials to access the API.

*/ inline InitiateDocumentVersionUploadRequest& WithAuthenticationToken(Aws::String&& value) { SetAuthenticationToken(std::move(value)); return *this;} /** *

Amazon WorkDocs authentication token. Not required when using Amazon Web * Services administrator credentials to access the API.

*/ inline InitiateDocumentVersionUploadRequest& WithAuthenticationToken(const char* value) { SetAuthenticationToken(value); return *this;} /** *

The ID of the document.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

The ID of the document.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

The ID of the document.

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

The ID of the document.

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

The ID of the document.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

The ID of the document.

*/ inline InitiateDocumentVersionUploadRequest& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

The ID of the document.

*/ inline InitiateDocumentVersionUploadRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

The ID of the document.

*/ inline InitiateDocumentVersionUploadRequest& WithId(const char* value) { SetId(value); return *this;} /** *

The name of the document.

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

The name of the document.

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

The name of the document.

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

The name of the document.

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

The name of the document.

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

The name of the document.

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

The name of the document.

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

The name of the document.

*/ inline InitiateDocumentVersionUploadRequest& WithName(const char* value) { SetName(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 InitiateDocumentVersionUploadRequest& WithContentCreatedTimestamp(const Aws::Utils::DateTime& value) { SetContentCreatedTimestamp(value); return *this;} /** *

The timestamp when the content of the document was originally created.

*/ inline InitiateDocumentVersionUploadRequest& 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 InitiateDocumentVersionUploadRequest& WithContentModifiedTimestamp(const Aws::Utils::DateTime& value) { SetContentModifiedTimestamp(value); return *this;} /** *

The timestamp when the content of the document was modified.

*/ inline InitiateDocumentVersionUploadRequest& WithContentModifiedTimestamp(Aws::Utils::DateTime&& value) { SetContentModifiedTimestamp(std::move(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 InitiateDocumentVersionUploadRequest& WithContentType(const Aws::String& value) { SetContentType(value); return *this;} /** *

The content type of the document.

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

The content type of the document.

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

The size of the document, in bytes.

*/ inline long long GetDocumentSizeInBytes() const{ return m_documentSizeInBytes; } /** *

The size of the document, in bytes.

*/ inline bool DocumentSizeInBytesHasBeenSet() const { return m_documentSizeInBytesHasBeenSet; } /** *

The size of the document, in bytes.

*/ inline void SetDocumentSizeInBytes(long long value) { m_documentSizeInBytesHasBeenSet = true; m_documentSizeInBytes = value; } /** *

The size of the document, in bytes.

*/ inline InitiateDocumentVersionUploadRequest& WithDocumentSizeInBytes(long long value) { SetDocumentSizeInBytes(value); return *this;} /** *

The ID of the parent folder.

*/ inline const Aws::String& GetParentFolderId() const{ return m_parentFolderId; } /** *

The ID of the parent folder.

*/ inline bool ParentFolderIdHasBeenSet() const { return m_parentFolderIdHasBeenSet; } /** *

The ID of the parent folder.

*/ inline void SetParentFolderId(const Aws::String& value) { m_parentFolderIdHasBeenSet = true; m_parentFolderId = value; } /** *

The ID of the parent folder.

*/ inline void SetParentFolderId(Aws::String&& value) { m_parentFolderIdHasBeenSet = true; m_parentFolderId = std::move(value); } /** *

The ID of the parent folder.

*/ inline void SetParentFolderId(const char* value) { m_parentFolderIdHasBeenSet = true; m_parentFolderId.assign(value); } /** *

The ID of the parent folder.

*/ inline InitiateDocumentVersionUploadRequest& WithParentFolderId(const Aws::String& value) { SetParentFolderId(value); return *this;} /** *

The ID of the parent folder.

*/ inline InitiateDocumentVersionUploadRequest& WithParentFolderId(Aws::String&& value) { SetParentFolderId(std::move(value)); return *this;} /** *

The ID of the parent folder.

*/ inline InitiateDocumentVersionUploadRequest& WithParentFolderId(const char* value) { SetParentFolderId(value); return *this;} private: Aws::String m_authenticationToken; bool m_authenticationTokenHasBeenSet = false; Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::Utils::DateTime m_contentCreatedTimestamp; bool m_contentCreatedTimestampHasBeenSet = false; Aws::Utils::DateTime m_contentModifiedTimestamp; bool m_contentModifiedTimestampHasBeenSet = false; Aws::String m_contentType; bool m_contentTypeHasBeenSet = false; long long m_documentSizeInBytes; bool m_documentSizeInBytesHasBeenSet = false; Aws::String m_parentFolderId; bool m_parentFolderIdHasBeenSet = false; }; } // namespace Model } // namespace WorkDocs } // namespace Aws