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

DescribeTaskExecutionResponse

See Also:

AWS * API Reference

*/ class DescribeTaskExecutionResult { public: AWS_DATASYNC_API DescribeTaskExecutionResult(); AWS_DATASYNC_API DescribeTaskExecutionResult(const Aws::AmazonWebServiceResult& result); AWS_DATASYNC_API DescribeTaskExecutionResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The Amazon Resource Name (ARN) of the task execution that was described. * TaskExecutionArn is hierarchical and includes TaskArn * for the task that was executed.

For example, a * TaskExecution value with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2/execution/exec-08ef1e88ec491019b * executed the task with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2. *

*/ inline const Aws::String& GetTaskExecutionArn() const{ return m_taskExecutionArn; } /** *

The Amazon Resource Name (ARN) of the task execution that was described. * TaskExecutionArn is hierarchical and includes TaskArn * for the task that was executed.

For example, a * TaskExecution value with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2/execution/exec-08ef1e88ec491019b * executed the task with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2. *

*/ inline void SetTaskExecutionArn(const Aws::String& value) { m_taskExecutionArn = value; } /** *

The Amazon Resource Name (ARN) of the task execution that was described. * TaskExecutionArn is hierarchical and includes TaskArn * for the task that was executed.

For example, a * TaskExecution value with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2/execution/exec-08ef1e88ec491019b * executed the task with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2. *

*/ inline void SetTaskExecutionArn(Aws::String&& value) { m_taskExecutionArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the task execution that was described. * TaskExecutionArn is hierarchical and includes TaskArn * for the task that was executed.

For example, a * TaskExecution value with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2/execution/exec-08ef1e88ec491019b * executed the task with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2. *

*/ inline void SetTaskExecutionArn(const char* value) { m_taskExecutionArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the task execution that was described. * TaskExecutionArn is hierarchical and includes TaskArn * for the task that was executed.

For example, a * TaskExecution value with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2/execution/exec-08ef1e88ec491019b * executed the task with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2. *

*/ inline DescribeTaskExecutionResult& WithTaskExecutionArn(const Aws::String& value) { SetTaskExecutionArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the task execution that was described. * TaskExecutionArn is hierarchical and includes TaskArn * for the task that was executed.

For example, a * TaskExecution value with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2/execution/exec-08ef1e88ec491019b * executed the task with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2. *

*/ inline DescribeTaskExecutionResult& WithTaskExecutionArn(Aws::String&& value) { SetTaskExecutionArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the task execution that was described. * TaskExecutionArn is hierarchical and includes TaskArn * for the task that was executed.

For example, a * TaskExecution value with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2/execution/exec-08ef1e88ec491019b * executed the task with the ARN * arn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2. *

*/ inline DescribeTaskExecutionResult& WithTaskExecutionArn(const char* value) { SetTaskExecutionArn(value); return *this;} /** *

The status of the task execution.

For detailed information about task * execution statuses, see Understanding Task Statuses in the DataSync User * Guide.

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

The status of the task execution.

For detailed information about task * execution statuses, see Understanding Task Statuses in the DataSync User * Guide.

*/ inline void SetStatus(const TaskExecutionStatus& value) { m_status = value; } /** *

The status of the task execution.

For detailed information about task * execution statuses, see Understanding Task Statuses in the DataSync User * Guide.

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

The status of the task execution.

For detailed information about task * execution statuses, see Understanding Task Statuses in the DataSync User * Guide.

*/ inline DescribeTaskExecutionResult& WithStatus(const TaskExecutionStatus& value) { SetStatus(value); return *this;} /** *

The status of the task execution.

For detailed information about task * execution statuses, see Understanding Task Statuses in the DataSync User * Guide.

*/ inline DescribeTaskExecutionResult& WithStatus(TaskExecutionStatus&& value) { SetStatus(std::move(value)); return *this;} inline const Options& GetOptions() const{ return m_options; } inline void SetOptions(const Options& value) { m_options = value; } inline void SetOptions(Options&& value) { m_options = std::move(value); } inline DescribeTaskExecutionResult& WithOptions(const Options& value) { SetOptions(value); return *this;} inline DescribeTaskExecutionResult& WithOptions(Options&& value) { SetOptions(std::move(value)); return *this;} /** *

A list of filter rules that exclude specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline const Aws::Vector& GetExcludes() const{ return m_excludes; } /** *

A list of filter rules that exclude specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline void SetExcludes(const Aws::Vector& value) { m_excludes = value; } /** *

A list of filter rules that exclude specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline void SetExcludes(Aws::Vector&& value) { m_excludes = std::move(value); } /** *

A list of filter rules that exclude specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline DescribeTaskExecutionResult& WithExcludes(const Aws::Vector& value) { SetExcludes(value); return *this;} /** *

A list of filter rules that exclude specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline DescribeTaskExecutionResult& WithExcludes(Aws::Vector&& value) { SetExcludes(std::move(value)); return *this;} /** *

A list of filter rules that exclude specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline DescribeTaskExecutionResult& AddExcludes(const FilterRule& value) { m_excludes.push_back(value); return *this; } /** *

A list of filter rules that exclude specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline DescribeTaskExecutionResult& AddExcludes(FilterRule&& value) { m_excludes.push_back(std::move(value)); return *this; } /** *

A list of filter rules that include specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline const Aws::Vector& GetIncludes() const{ return m_includes; } /** *

A list of filter rules that include specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline void SetIncludes(const Aws::Vector& value) { m_includes = value; } /** *

A list of filter rules that include specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline void SetIncludes(Aws::Vector&& value) { m_includes = std::move(value); } /** *

A list of filter rules that include specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline DescribeTaskExecutionResult& WithIncludes(const Aws::Vector& value) { SetIncludes(value); return *this;} /** *

A list of filter rules that include specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline DescribeTaskExecutionResult& WithIncludes(Aws::Vector&& value) { SetIncludes(std::move(value)); return *this;} /** *

A list of filter rules that include specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline DescribeTaskExecutionResult& AddIncludes(const FilterRule& value) { m_includes.push_back(value); return *this; } /** *

A list of filter rules that include specific data during your transfer. For * more information and examples, see Filtering * data transferred by DataSync.

*/ inline DescribeTaskExecutionResult& AddIncludes(FilterRule&& value) { m_includes.push_back(std::move(value)); return *this; } /** *

The time that the task execution was started.

*/ inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } /** *

The time that the task execution was started.

*/ inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTime = value; } /** *

The time that the task execution was started.

*/ inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTime = std::move(value); } /** *

The time that the task execution was started.

*/ inline DescribeTaskExecutionResult& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} /** *

The time that the task execution was started.

*/ inline DescribeTaskExecutionResult& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} /** *

The expected number of files that is to be transferred over the network. This * value is calculated during the PREPARING phase before the * TRANSFERRING phase of the task execution. This value is the * expected number of files to be transferred. It's calculated based on comparing * the content of the source and destination locations and finding the delta that * needs to be transferred.

*/ inline long long GetEstimatedFilesToTransfer() const{ return m_estimatedFilesToTransfer; } /** *

The expected number of files that is to be transferred over the network. This * value is calculated during the PREPARING phase before the * TRANSFERRING phase of the task execution. This value is the * expected number of files to be transferred. It's calculated based on comparing * the content of the source and destination locations and finding the delta that * needs to be transferred.

*/ inline void SetEstimatedFilesToTransfer(long long value) { m_estimatedFilesToTransfer = value; } /** *

The expected number of files that is to be transferred over the network. This * value is calculated during the PREPARING phase before the * TRANSFERRING phase of the task execution. This value is the * expected number of files to be transferred. It's calculated based on comparing * the content of the source and destination locations and finding the delta that * needs to be transferred.

*/ inline DescribeTaskExecutionResult& WithEstimatedFilesToTransfer(long long value) { SetEstimatedFilesToTransfer(value); return *this;} /** *

The estimated physical number of bytes that is to be transferred over the * network.

*/ inline long long GetEstimatedBytesToTransfer() const{ return m_estimatedBytesToTransfer; } /** *

The estimated physical number of bytes that is to be transferred over the * network.

*/ inline void SetEstimatedBytesToTransfer(long long value) { m_estimatedBytesToTransfer = value; } /** *

The estimated physical number of bytes that is to be transferred over the * network.

*/ inline DescribeTaskExecutionResult& WithEstimatedBytesToTransfer(long long value) { SetEstimatedBytesToTransfer(value); return *this;} /** *

The actual number of files that was transferred over the network. This value * is calculated and updated on an ongoing basis during the * TRANSFERRING phase of the task execution. It's updated periodically * when each file is read from the source and sent over the network.

If * failures occur during a transfer, this value can be less than * EstimatedFilesToTransfer. In some cases, this value can also be * greater than EstimatedFilesToTransfer. This element is * implementation-specific for some location types, so don't use it as an indicator * for a correct file number or to monitor your task execution.

*/ inline long long GetFilesTransferred() const{ return m_filesTransferred; } /** *

The actual number of files that was transferred over the network. This value * is calculated and updated on an ongoing basis during the * TRANSFERRING phase of the task execution. It's updated periodically * when each file is read from the source and sent over the network.

If * failures occur during a transfer, this value can be less than * EstimatedFilesToTransfer. In some cases, this value can also be * greater than EstimatedFilesToTransfer. This element is * implementation-specific for some location types, so don't use it as an indicator * for a correct file number or to monitor your task execution.

*/ inline void SetFilesTransferred(long long value) { m_filesTransferred = value; } /** *

The actual number of files that was transferred over the network. This value * is calculated and updated on an ongoing basis during the * TRANSFERRING phase of the task execution. It's updated periodically * when each file is read from the source and sent over the network.

If * failures occur during a transfer, this value can be less than * EstimatedFilesToTransfer. In some cases, this value can also be * greater than EstimatedFilesToTransfer. This element is * implementation-specific for some location types, so don't use it as an indicator * for a correct file number or to monitor your task execution.

*/ inline DescribeTaskExecutionResult& WithFilesTransferred(long long value) { SetFilesTransferred(value); return *this;} /** *

The number of logical bytes written to the destination Amazon Web Services * storage resource.

*/ inline long long GetBytesWritten() const{ return m_bytesWritten; } /** *

The number of logical bytes written to the destination Amazon Web Services * storage resource.

*/ inline void SetBytesWritten(long long value) { m_bytesWritten = value; } /** *

The number of logical bytes written to the destination Amazon Web Services * storage resource.

*/ inline DescribeTaskExecutionResult& WithBytesWritten(long long value) { SetBytesWritten(value); return *this;} /** *

The total number of bytes that are involved in the transfer. For the number * of bytes sent over the network, see BytesCompressed.

*/ inline long long GetBytesTransferred() const{ return m_bytesTransferred; } /** *

The total number of bytes that are involved in the transfer. For the number * of bytes sent over the network, see BytesCompressed.

*/ inline void SetBytesTransferred(long long value) { m_bytesTransferred = value; } /** *

The total number of bytes that are involved in the transfer. For the number * of bytes sent over the network, see BytesCompressed.

*/ inline DescribeTaskExecutionResult& WithBytesTransferred(long long value) { SetBytesTransferred(value); return *this;} /** *

The result of the task execution.

*/ inline const TaskExecutionResultDetail& GetResult() const{ return m_result; } /** *

The result of the task execution.

*/ inline void SetResult(const TaskExecutionResultDetail& value) { m_result = value; } /** *

The result of the task execution.

*/ inline void SetResult(TaskExecutionResultDetail&& value) { m_result = std::move(value); } /** *

The result of the task execution.

*/ inline DescribeTaskExecutionResult& WithResult(const TaskExecutionResultDetail& value) { SetResult(value); return *this;} /** *

The result of the task execution.

*/ inline DescribeTaskExecutionResult& WithResult(TaskExecutionResultDetail&& value) { SetResult(std::move(value)); return *this;} /** *

The physical number of bytes transferred over the network after compression * was applied. In most cases, this number is less than * BytesTransferred unless the data isn't compressible.

*/ inline long long GetBytesCompressed() const{ return m_bytesCompressed; } /** *

The physical number of bytes transferred over the network after compression * was applied. In most cases, this number is less than * BytesTransferred unless the data isn't compressible.

*/ inline void SetBytesCompressed(long long value) { m_bytesCompressed = value; } /** *

The physical number of bytes transferred over the network after compression * was applied. In most cases, this number is less than * BytesTransferred unless the data isn't compressible.

*/ inline DescribeTaskExecutionResult& WithBytesCompressed(long long value) { SetBytesCompressed(value); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline DescribeTaskExecutionResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeTaskExecutionResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeTaskExecutionResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_taskExecutionArn; TaskExecutionStatus m_status; Options m_options; Aws::Vector m_excludes; Aws::Vector m_includes; Aws::Utils::DateTime m_startTime; long long m_estimatedFilesToTransfer; long long m_estimatedBytesToTransfer; long long m_filesTransferred; long long m_bytesWritten; long long m_bytesTransferred; TaskExecutionResultDetail m_result; long long m_bytesCompressed; Aws::String m_requestId; }; } // namespace Model } // namespace DataSync } // namespace Aws