/** * 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 { /** *

DescribeTaskResponse

See Also:

AWS * API Reference

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

The Amazon Resource Name (ARN) of the task that was described.

*/ inline const Aws::String& GetTaskArn() const{ return m_taskArn; } /** *

The Amazon Resource Name (ARN) of the task that was described.

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

The Amazon Resource Name (ARN) of the task that was described.

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

The Amazon Resource Name (ARN) of the task that was described.

*/ inline void SetTaskArn(const char* value) { m_taskArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the task that was described.

*/ inline DescribeTaskResult& WithTaskArn(const Aws::String& value) { SetTaskArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the task that was described.

*/ inline DescribeTaskResult& WithTaskArn(Aws::String&& value) { SetTaskArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the task that was described.

*/ inline DescribeTaskResult& WithTaskArn(const char* value) { SetTaskArn(value); return *this;} /** *

The status of the task that was described.

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

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

The status of the task that was described.

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

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

The status of the task that was described.

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

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

The status of the task that was described.

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

*/ inline DescribeTaskResult& WithStatus(const TaskStatus& value) { SetStatus(value); return *this;} /** *

The status of the task that was described.

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

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

The name of the task that was described.

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

The name of the task that was described.

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

The name of the task that was described.

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

The name of the task that was described.

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

The name of the task that was described.

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

The name of the task that was described.

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

The name of the task that was described.

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

The Amazon Resource Name (ARN) of the task execution that is syncing * files.

*/ inline const Aws::String& GetCurrentTaskExecutionArn() const{ return m_currentTaskExecutionArn; } /** *

The Amazon Resource Name (ARN) of the task execution that is syncing * files.

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

The Amazon Resource Name (ARN) of the task execution that is syncing * files.

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

The Amazon Resource Name (ARN) of the task execution that is syncing * files.

*/ inline void SetCurrentTaskExecutionArn(const char* value) { m_currentTaskExecutionArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the task execution that is syncing * files.

*/ inline DescribeTaskResult& WithCurrentTaskExecutionArn(const Aws::String& value) { SetCurrentTaskExecutionArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the task execution that is syncing * files.

*/ inline DescribeTaskResult& WithCurrentTaskExecutionArn(Aws::String&& value) { SetCurrentTaskExecutionArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the task execution that is syncing * files.

*/ inline DescribeTaskResult& WithCurrentTaskExecutionArn(const char* value) { SetCurrentTaskExecutionArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the source file system's location.

*/ inline const Aws::String& GetSourceLocationArn() const{ return m_sourceLocationArn; } /** *

The Amazon Resource Name (ARN) of the source file system's location.

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

The Amazon Resource Name (ARN) of the source file system's location.

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

The Amazon Resource Name (ARN) of the source file system's location.

*/ inline void SetSourceLocationArn(const char* value) { m_sourceLocationArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the source file system's location.

*/ inline DescribeTaskResult& WithSourceLocationArn(const Aws::String& value) { SetSourceLocationArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the source file system's location.

*/ inline DescribeTaskResult& WithSourceLocationArn(Aws::String&& value) { SetSourceLocationArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the source file system's location.

*/ inline DescribeTaskResult& WithSourceLocationArn(const char* value) { SetSourceLocationArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the AWS storage resource's location.

*/ inline const Aws::String& GetDestinationLocationArn() const{ return m_destinationLocationArn; } /** *

The Amazon Resource Name (ARN) of the AWS storage resource's location.

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

The Amazon Resource Name (ARN) of the AWS storage resource's location.

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

The Amazon Resource Name (ARN) of the AWS storage resource's location.

*/ inline void SetDestinationLocationArn(const char* value) { m_destinationLocationArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the AWS storage resource's location.

*/ inline DescribeTaskResult& WithDestinationLocationArn(const Aws::String& value) { SetDestinationLocationArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the AWS storage resource's location.

*/ inline DescribeTaskResult& WithDestinationLocationArn(Aws::String&& value) { SetDestinationLocationArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the AWS storage resource's location.

*/ inline DescribeTaskResult& WithDestinationLocationArn(const char* value) { SetDestinationLocationArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that was * used to monitor and log events in the task.

For more information on these * groups, see Working with Log Groups and Log Streams in the Amazon CloudWatch * User Guide.

*/ inline const Aws::String& GetCloudWatchLogGroupArn() const{ return m_cloudWatchLogGroupArn; } /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that was * used to monitor and log events in the task.

For more information on these * groups, see Working with Log Groups and Log Streams in the Amazon CloudWatch * User Guide.

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

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that was * used to monitor and log events in the task.

For more information on these * groups, see Working with Log Groups and Log Streams in the Amazon CloudWatch * User Guide.

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

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that was * used to monitor and log events in the task.

For more information on these * groups, see Working with Log Groups and Log Streams in the Amazon CloudWatch * User Guide.

*/ inline void SetCloudWatchLogGroupArn(const char* value) { m_cloudWatchLogGroupArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that was * used to monitor and log events in the task.

For more information on these * groups, see Working with Log Groups and Log Streams in the Amazon CloudWatch * User Guide.

*/ inline DescribeTaskResult& WithCloudWatchLogGroupArn(const Aws::String& value) { SetCloudWatchLogGroupArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that was * used to monitor and log events in the task.

For more information on these * groups, see Working with Log Groups and Log Streams in the Amazon CloudWatch * User Guide.

*/ inline DescribeTaskResult& WithCloudWatchLogGroupArn(Aws::String&& value) { SetCloudWatchLogGroupArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that was * used to monitor and log events in the task.

For more information on these * groups, see Working with Log Groups and Log Streams in the Amazon CloudWatch * User Guide.

*/ inline DescribeTaskResult& WithCloudWatchLogGroupArn(const char* value) { SetCloudWatchLogGroupArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the source ENIs (Elastic Network Interface) * that was created for your subnet.

*/ inline const Aws::Vector& GetSourceNetworkInterfaceArns() const{ return m_sourceNetworkInterfaceArns; } /** *

The Amazon Resource Name (ARN) of the source ENIs (Elastic Network Interface) * that was created for your subnet.

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

The Amazon Resource Name (ARN) of the source ENIs (Elastic Network Interface) * that was created for your subnet.

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

The Amazon Resource Name (ARN) of the source ENIs (Elastic Network Interface) * that was created for your subnet.

*/ inline DescribeTaskResult& WithSourceNetworkInterfaceArns(const Aws::Vector& value) { SetSourceNetworkInterfaceArns(value); return *this;} /** *

The Amazon Resource Name (ARN) of the source ENIs (Elastic Network Interface) * that was created for your subnet.

*/ inline DescribeTaskResult& WithSourceNetworkInterfaceArns(Aws::Vector&& value) { SetSourceNetworkInterfaceArns(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the source ENIs (Elastic Network Interface) * that was created for your subnet.

*/ inline DescribeTaskResult& AddSourceNetworkInterfaceArns(const Aws::String& value) { m_sourceNetworkInterfaceArns.push_back(value); return *this; } /** *

The Amazon Resource Name (ARN) of the source ENIs (Elastic Network Interface) * that was created for your subnet.

*/ inline DescribeTaskResult& AddSourceNetworkInterfaceArns(Aws::String&& value) { m_sourceNetworkInterfaceArns.push_back(std::move(value)); return *this; } /** *

The Amazon Resource Name (ARN) of the source ENIs (Elastic Network Interface) * that was created for your subnet.

*/ inline DescribeTaskResult& AddSourceNetworkInterfaceArns(const char* value) { m_sourceNetworkInterfaceArns.push_back(value); return *this; } /** *

The Amazon Resource Name (ARN) of the destination ENIs (Elastic Network * Interface) that was created for your subnet.

*/ inline const Aws::Vector& GetDestinationNetworkInterfaceArns() const{ return m_destinationNetworkInterfaceArns; } /** *

The Amazon Resource Name (ARN) of the destination ENIs (Elastic Network * Interface) that was created for your subnet.

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

The Amazon Resource Name (ARN) of the destination ENIs (Elastic Network * Interface) that was created for your subnet.

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

The Amazon Resource Name (ARN) of the destination ENIs (Elastic Network * Interface) that was created for your subnet.

*/ inline DescribeTaskResult& WithDestinationNetworkInterfaceArns(const Aws::Vector& value) { SetDestinationNetworkInterfaceArns(value); return *this;} /** *

The Amazon Resource Name (ARN) of the destination ENIs (Elastic Network * Interface) that was created for your subnet.

*/ inline DescribeTaskResult& WithDestinationNetworkInterfaceArns(Aws::Vector&& value) { SetDestinationNetworkInterfaceArns(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the destination ENIs (Elastic Network * Interface) that was created for your subnet.

*/ inline DescribeTaskResult& AddDestinationNetworkInterfaceArns(const Aws::String& value) { m_destinationNetworkInterfaceArns.push_back(value); return *this; } /** *

The Amazon Resource Name (ARN) of the destination ENIs (Elastic Network * Interface) that was created for your subnet.

*/ inline DescribeTaskResult& AddDestinationNetworkInterfaceArns(Aws::String&& value) { m_destinationNetworkInterfaceArns.push_back(std::move(value)); return *this; } /** *

The Amazon Resource Name (ARN) of the destination ENIs (Elastic Network * Interface) that was created for your subnet.

*/ inline DescribeTaskResult& AddDestinationNetworkInterfaceArns(const char* value) { m_destinationNetworkInterfaceArns.push_back(value); return *this; } /** *

The set of configuration options that control the behavior of a single * execution of the task that occurs when you call StartTaskExecution. * You can configure these options to preserve metadata such as user ID (UID) and * group (GID), file permissions, data integrity verification, and so on.

*

For each individual task execution, you can override these options by * specifying the overriding OverrideOptions value to operation.

*/ inline const Options& GetOptions() const{ return m_options; } /** *

The set of configuration options that control the behavior of a single * execution of the task that occurs when you call StartTaskExecution. * You can configure these options to preserve metadata such as user ID (UID) and * group (GID), file permissions, data integrity verification, and so on.

*

For each individual task execution, you can override these options by * specifying the overriding OverrideOptions value to operation.

*/ inline void SetOptions(const Options& value) { m_options = value; } /** *

The set of configuration options that control the behavior of a single * execution of the task that occurs when you call StartTaskExecution. * You can configure these options to preserve metadata such as user ID (UID) and * group (GID), file permissions, data integrity verification, and so on.

*

For each individual task execution, you can override these options by * specifying the overriding OverrideOptions value to operation.

*/ inline void SetOptions(Options&& value) { m_options = std::move(value); } /** *

The set of configuration options that control the behavior of a single * execution of the task that occurs when you call StartTaskExecution. * You can configure these options to preserve metadata such as user ID (UID) and * group (GID), file permissions, data integrity verification, and so on.

*

For each individual task execution, you can override these options by * specifying the overriding OverrideOptions value to operation.

*/ inline DescribeTaskResult& WithOptions(const Options& value) { SetOptions(value); return *this;} /** *

The set of configuration options that control the behavior of a single * execution of the task that occurs when you call StartTaskExecution. * You can configure these options to preserve metadata such as user ID (UID) and * group (GID), file permissions, data integrity verification, and so on.

*

For each individual task execution, you can override these options by * specifying the overriding OverrideOptions value to operation.

*/ inline DescribeTaskResult& WithOptions(Options&& value) { SetOptions(std::move(value)); return *this;} /** *

A list of filter rules that determines which files to exclude from a task. * The list should contain a single filter string that consists of the patterns to * exclude. The patterns are delimited by "|" (that is, a pipe), for example: * "/folder1|/folder2"

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

A list of filter rules that determines which files to exclude from a task. * The list should contain a single filter string that consists of the patterns to * exclude. The patterns are delimited by "|" (that is, a pipe), for example: * "/folder1|/folder2"

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

A list of filter rules that determines which files to exclude from a task. * The list should contain a single filter string that consists of the patterns to * exclude. The patterns are delimited by "|" (that is, a pipe), for example: * "/folder1|/folder2"

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

A list of filter rules that determines which files to exclude from a task. * The list should contain a single filter string that consists of the patterns to * exclude. The patterns are delimited by "|" (that is, a pipe), for example: * "/folder1|/folder2"

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

A list of filter rules that determines which files to exclude from a task. * The list should contain a single filter string that consists of the patterns to * exclude. The patterns are delimited by "|" (that is, a pipe), for example: * "/folder1|/folder2"

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

A list of filter rules that determines which files to exclude from a task. * The list should contain a single filter string that consists of the patterns to * exclude. The patterns are delimited by "|" (that is, a pipe), for example: * "/folder1|/folder2"

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

A list of filter rules that determines which files to exclude from a task. * The list should contain a single filter string that consists of the patterns to * exclude. The patterns are delimited by "|" (that is, a pipe), for example: * "/folder1|/folder2"

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

The schedule used to periodically transfer files from a source to a * destination location.

*/ inline const TaskSchedule& GetSchedule() const{ return m_schedule; } /** *

The schedule used to periodically transfer files from a source to a * destination location.

*/ inline void SetSchedule(const TaskSchedule& value) { m_schedule = value; } /** *

The schedule used to periodically transfer files from a source to a * destination location.

*/ inline void SetSchedule(TaskSchedule&& value) { m_schedule = std::move(value); } /** *

The schedule used to periodically transfer files from a source to a * destination location.

*/ inline DescribeTaskResult& WithSchedule(const TaskSchedule& value) { SetSchedule(value); return *this;} /** *

The schedule used to periodically transfer files from a source to a * destination location.

*/ inline DescribeTaskResult& WithSchedule(TaskSchedule&& value) { SetSchedule(std::move(value)); return *this;} /** *

Errors that AWS 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 AWS 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_errorCode = value; } /** *

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

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

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

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

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

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

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

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

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

*/ inline DescribeTaskResult& 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 void SetErrorDetail(const Aws::String& value) { 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_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_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 DescribeTaskResult& 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 DescribeTaskResult& 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 DescribeTaskResult& WithErrorDetail(const char* value) { SetErrorDetail(value); return *this;} /** *

The time that the task was created.

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

The time that the task was created.

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

The time that the task was created.

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

The time that the task was created.

*/ inline DescribeTaskResult& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

The time that the task was created.

*/ inline DescribeTaskResult& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} private: Aws::String m_taskArn; TaskStatus m_status; Aws::String m_name; Aws::String m_currentTaskExecutionArn; Aws::String m_sourceLocationArn; Aws::String m_destinationLocationArn; Aws::String m_cloudWatchLogGroupArn; Aws::Vector m_sourceNetworkInterfaceArns; Aws::Vector m_destinationNetworkInterfaceArns; Options m_options; Aws::Vector m_excludes; TaskSchedule m_schedule; Aws::String m_errorCode; Aws::String m_errorDetail; Aws::Utils::DateTime m_creationTime; }; } // namespace Model } // namespace DataSync } // namespace Aws