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

Describes the detailed result of a TaskExecution operation. This * result includes the time in milliseconds spent in each phase, the status of the * task execution, and the errors encountered.

See Also:

AWS * API Reference

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

The total time in milliseconds that DataSync spent in the PREPARING phase. *

*/ inline long long GetPrepareDuration() const{ return m_prepareDuration; } /** *

The total time in milliseconds that DataSync spent in the PREPARING phase. *

*/ inline bool PrepareDurationHasBeenSet() const { return m_prepareDurationHasBeenSet; } /** *

The total time in milliseconds that DataSync spent in the PREPARING phase. *

*/ inline void SetPrepareDuration(long long value) { m_prepareDurationHasBeenSet = true; m_prepareDuration = value; } /** *

The total time in milliseconds that DataSync spent in the PREPARING phase. *

*/ inline TaskExecutionResultDetail& WithPrepareDuration(long long value) { SetPrepareDuration(value); return *this;} /** *

The status of the PREPARING phase.

*/ inline const PhaseStatus& GetPrepareStatus() const{ return m_prepareStatus; } /** *

The status of the PREPARING phase.

*/ inline bool PrepareStatusHasBeenSet() const { return m_prepareStatusHasBeenSet; } /** *

The status of the PREPARING phase.

*/ inline void SetPrepareStatus(const PhaseStatus& value) { m_prepareStatusHasBeenSet = true; m_prepareStatus = value; } /** *

The status of the PREPARING phase.

*/ inline void SetPrepareStatus(PhaseStatus&& value) { m_prepareStatusHasBeenSet = true; m_prepareStatus = std::move(value); } /** *

The status of the PREPARING phase.

*/ inline TaskExecutionResultDetail& WithPrepareStatus(const PhaseStatus& value) { SetPrepareStatus(value); return *this;} /** *

The status of the PREPARING phase.

*/ inline TaskExecutionResultDetail& WithPrepareStatus(PhaseStatus&& value) { SetPrepareStatus(std::move(value)); return *this;} /** *

The total time in milliseconds that DataSync took to transfer the file from * the source to the destination location.

*/ inline long long GetTotalDuration() const{ return m_totalDuration; } /** *

The total time in milliseconds that DataSync took to transfer the file from * the source to the destination location.

*/ inline bool TotalDurationHasBeenSet() const { return m_totalDurationHasBeenSet; } /** *

The total time in milliseconds that DataSync took to transfer the file from * the source to the destination location.

*/ inline void SetTotalDuration(long long value) { m_totalDurationHasBeenSet = true; m_totalDuration = value; } /** *

The total time in milliseconds that DataSync took to transfer the file from * the source to the destination location.

*/ inline TaskExecutionResultDetail& WithTotalDuration(long long value) { SetTotalDuration(value); return *this;} /** *

The total time in milliseconds that DataSync spent in the TRANSFERRING * phase.

*/ inline long long GetTransferDuration() const{ return m_transferDuration; } /** *

The total time in milliseconds that DataSync spent in the TRANSFERRING * phase.

*/ inline bool TransferDurationHasBeenSet() const { return m_transferDurationHasBeenSet; } /** *

The total time in milliseconds that DataSync spent in the TRANSFERRING * phase.

*/ inline void SetTransferDuration(long long value) { m_transferDurationHasBeenSet = true; m_transferDuration = value; } /** *

The total time in milliseconds that DataSync spent in the TRANSFERRING * phase.

*/ inline TaskExecutionResultDetail& WithTransferDuration(long long value) { SetTransferDuration(value); return *this;} /** *

The status of the TRANSFERRING phase.

*/ inline const PhaseStatus& GetTransferStatus() const{ return m_transferStatus; } /** *

The status of the TRANSFERRING phase.

*/ inline bool TransferStatusHasBeenSet() const { return m_transferStatusHasBeenSet; } /** *

The status of the TRANSFERRING phase.

*/ inline void SetTransferStatus(const PhaseStatus& value) { m_transferStatusHasBeenSet = true; m_transferStatus = value; } /** *

The status of the TRANSFERRING phase.

*/ inline void SetTransferStatus(PhaseStatus&& value) { m_transferStatusHasBeenSet = true; m_transferStatus = std::move(value); } /** *

The status of the TRANSFERRING phase.

*/ inline TaskExecutionResultDetail& WithTransferStatus(const PhaseStatus& value) { SetTransferStatus(value); return *this;} /** *

The status of the TRANSFERRING phase.

*/ inline TaskExecutionResultDetail& WithTransferStatus(PhaseStatus&& value) { SetTransferStatus(std::move(value)); return *this;} /** *

The total time in milliseconds that DataSync spent in the VERIFYING * phase.

*/ inline long long GetVerifyDuration() const{ return m_verifyDuration; } /** *

The total time in milliseconds that DataSync spent in the VERIFYING * phase.

*/ inline bool VerifyDurationHasBeenSet() const { return m_verifyDurationHasBeenSet; } /** *

The total time in milliseconds that DataSync spent in the VERIFYING * phase.

*/ inline void SetVerifyDuration(long long value) { m_verifyDurationHasBeenSet = true; m_verifyDuration = value; } /** *

The total time in milliseconds that DataSync spent in the VERIFYING * phase.

*/ inline TaskExecutionResultDetail& WithVerifyDuration(long long value) { SetVerifyDuration(value); return *this;} /** *

The status of the VERIFYING phase.

*/ inline const PhaseStatus& GetVerifyStatus() const{ return m_verifyStatus; } /** *

The status of the VERIFYING phase.

*/ inline bool VerifyStatusHasBeenSet() const { return m_verifyStatusHasBeenSet; } /** *

The status of the VERIFYING phase.

*/ inline void SetVerifyStatus(const PhaseStatus& value) { m_verifyStatusHasBeenSet = true; m_verifyStatus = value; } /** *

The status of the VERIFYING phase.

*/ inline void SetVerifyStatus(PhaseStatus&& value) { m_verifyStatusHasBeenSet = true; m_verifyStatus = std::move(value); } /** *

The status of the VERIFYING phase.

*/ inline TaskExecutionResultDetail& WithVerifyStatus(const PhaseStatus& value) { SetVerifyStatus(value); return *this;} /** *

The status of the VERIFYING phase.

*/ inline TaskExecutionResultDetail& WithVerifyStatus(PhaseStatus&& value) { SetVerifyStatus(std::move(value)); return *this;} /** *

Errors that DataSync encountered during execution of the task. You can use * this error code to help troubleshoot issues.

*/ inline const Aws::String& GetErrorCode() const{ return m_errorCode; } /** *

Errors that DataSync encountered during execution of the task. You can use * this error code to help troubleshoot issues.

*/ inline bool ErrorCodeHasBeenSet() const { return m_errorCodeHasBeenSet; } /** *

Errors that DataSync encountered during execution of the task. You can use * this error code to help troubleshoot issues.

*/ inline void SetErrorCode(const Aws::String& value) { m_errorCodeHasBeenSet = true; m_errorCode = value; } /** *

Errors that DataSync encountered during execution of the task. You can use * this error code to help troubleshoot issues.

*/ inline void SetErrorCode(Aws::String&& value) { m_errorCodeHasBeenSet = true; m_errorCode = std::move(value); } /** *

Errors that DataSync encountered during execution of the task. You can use * this error code to help troubleshoot issues.

*/ inline void SetErrorCode(const char* value) { m_errorCodeHasBeenSet = true; m_errorCode.assign(value); } /** *

Errors that DataSync encountered during execution of the task. You can use * this error code to help troubleshoot issues.

*/ inline TaskExecutionResultDetail& WithErrorCode(const Aws::String& value) { SetErrorCode(value); return *this;} /** *

Errors that DataSync encountered during execution of the task. You can use * this error code to help troubleshoot issues.

*/ inline TaskExecutionResultDetail& WithErrorCode(Aws::String&& value) { SetErrorCode(std::move(value)); return *this;} /** *

Errors that DataSync encountered during execution of the task. You can use * this error code to help troubleshoot issues.

*/ inline TaskExecutionResultDetail& WithErrorCode(const char* value) { SetErrorCode(value); return *this;} /** *

Detailed description of an error that was encountered during the task * execution. You can use this information to help troubleshoot issues.

*/ inline const Aws::String& GetErrorDetail() const{ return m_errorDetail; } /** *

Detailed description of an error that was encountered during the task * execution. You can use this information to help troubleshoot issues.

*/ inline bool ErrorDetailHasBeenSet() const { return m_errorDetailHasBeenSet; } /** *

Detailed description of an error that was encountered during the task * execution. You can use this information to help troubleshoot issues.

*/ inline void SetErrorDetail(const Aws::String& value) { m_errorDetailHasBeenSet = true; m_errorDetail = value; } /** *

Detailed description of an error that was encountered during the task * execution. You can use this information to help troubleshoot issues.

*/ inline void SetErrorDetail(Aws::String&& value) { m_errorDetailHasBeenSet = true; m_errorDetail = std::move(value); } /** *

Detailed description of an error that was encountered during the task * execution. You can use this information to help troubleshoot issues.

*/ inline void SetErrorDetail(const char* value) { m_errorDetailHasBeenSet = true; m_errorDetail.assign(value); } /** *

Detailed description of an error that was encountered during the task * execution. You can use this information to help troubleshoot issues.

*/ inline TaskExecutionResultDetail& WithErrorDetail(const Aws::String& value) { SetErrorDetail(value); return *this;} /** *

Detailed description of an error that was encountered during the task * execution. You can use this information to help troubleshoot issues.

*/ inline TaskExecutionResultDetail& WithErrorDetail(Aws::String&& value) { SetErrorDetail(std::move(value)); return *this;} /** *

Detailed description of an error that was encountered during the task * execution. You can use this information to help troubleshoot issues.

*/ inline TaskExecutionResultDetail& WithErrorDetail(const char* value) { SetErrorDetail(value); return *this;} private: long long m_prepareDuration; bool m_prepareDurationHasBeenSet = false; PhaseStatus m_prepareStatus; bool m_prepareStatusHasBeenSet = false; long long m_totalDuration; bool m_totalDurationHasBeenSet = false; long long m_transferDuration; bool m_transferDurationHasBeenSet = false; PhaseStatus m_transferStatus; bool m_transferStatusHasBeenSet = false; long long m_verifyDuration; bool m_verifyDurationHasBeenSet = false; PhaseStatus m_verifyStatus; bool m_verifyStatusHasBeenSet = false; Aws::String m_errorCode; bool m_errorCodeHasBeenSet = false; Aws::String m_errorDetail; bool m_errorDetailHasBeenSet = false; }; } // namespace Model } // namespace DataSync } // namespace Aws