/** * 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 #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace FSx { namespace Model { /** *

A description of the data repository task. You use data repository tasks to * perform bulk transfer operations between an Amazon FSx for Lustre file system * and a linked data repository. An Amazon File Cache resource uses a task to * automatically release files from the cache.

See Also:

AWS * API Reference

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

The system-generated, unique 17-digit ID of the data repository task.

*/ inline const Aws::String& GetTaskId() const{ return m_taskId; } /** *

The system-generated, unique 17-digit ID of the data repository task.

*/ inline bool TaskIdHasBeenSet() const { return m_taskIdHasBeenSet; } /** *

The system-generated, unique 17-digit ID of the data repository task.

*/ inline void SetTaskId(const Aws::String& value) { m_taskIdHasBeenSet = true; m_taskId = value; } /** *

The system-generated, unique 17-digit ID of the data repository task.

*/ inline void SetTaskId(Aws::String&& value) { m_taskIdHasBeenSet = true; m_taskId = std::move(value); } /** *

The system-generated, unique 17-digit ID of the data repository task.

*/ inline void SetTaskId(const char* value) { m_taskIdHasBeenSet = true; m_taskId.assign(value); } /** *

The system-generated, unique 17-digit ID of the data repository task.

*/ inline DataRepositoryTask& WithTaskId(const Aws::String& value) { SetTaskId(value); return *this;} /** *

The system-generated, unique 17-digit ID of the data repository task.

*/ inline DataRepositoryTask& WithTaskId(Aws::String&& value) { SetTaskId(std::move(value)); return *this;} /** *

The system-generated, unique 17-digit ID of the data repository task.

*/ inline DataRepositoryTask& WithTaskId(const char* value) { SetTaskId(value); return *this;} /** *

The lifecycle status of the data repository task, as follows:

  • *

    PENDING - The task has not started.

  • * EXECUTING - The task is in process.

  • * FAILED - The task was not able to be completed. For example, there * may be files the task failed to process. The * DataRepositoryTaskFailureDetails property provides more information about * task failures.

  • SUCCEEDED - The task has * completed successfully.

  • CANCELED - The task was * canceled and it did not complete.

  • CANCELING - * The task is in process of being canceled.

You cannot * delete an FSx for Lustre file system if there are data repository tasks for the * file system in the PENDING or EXECUTING states. Please * retry when the data repository task is finished (with a status of * CANCELED, SUCCEEDED, or FAILED). You can * use the DescribeDataRepositoryTask action to monitor the task status. Contact * the FSx team if you need to delete your file system immediately.

*/ inline const DataRepositoryTaskLifecycle& GetLifecycle() const{ return m_lifecycle; } /** *

The lifecycle status of the data repository task, as follows:

  • *

    PENDING - The task has not started.

  • * EXECUTING - The task is in process.

  • * FAILED - The task was not able to be completed. For example, there * may be files the task failed to process. The * DataRepositoryTaskFailureDetails property provides more information about * task failures.

  • SUCCEEDED - The task has * completed successfully.

  • CANCELED - The task was * canceled and it did not complete.

  • CANCELING - * The task is in process of being canceled.

You cannot * delete an FSx for Lustre file system if there are data repository tasks for the * file system in the PENDING or EXECUTING states. Please * retry when the data repository task is finished (with a status of * CANCELED, SUCCEEDED, or FAILED). You can * use the DescribeDataRepositoryTask action to monitor the task status. Contact * the FSx team if you need to delete your file system immediately.

*/ inline bool LifecycleHasBeenSet() const { return m_lifecycleHasBeenSet; } /** *

The lifecycle status of the data repository task, as follows:

  • *

    PENDING - The task has not started.

  • * EXECUTING - The task is in process.

  • * FAILED - The task was not able to be completed. For example, there * may be files the task failed to process. The * DataRepositoryTaskFailureDetails property provides more information about * task failures.

  • SUCCEEDED - The task has * completed successfully.

  • CANCELED - The task was * canceled and it did not complete.

  • CANCELING - * The task is in process of being canceled.

You cannot * delete an FSx for Lustre file system if there are data repository tasks for the * file system in the PENDING or EXECUTING states. Please * retry when the data repository task is finished (with a status of * CANCELED, SUCCEEDED, or FAILED). You can * use the DescribeDataRepositoryTask action to monitor the task status. Contact * the FSx team if you need to delete your file system immediately.

*/ inline void SetLifecycle(const DataRepositoryTaskLifecycle& value) { m_lifecycleHasBeenSet = true; m_lifecycle = value; } /** *

The lifecycle status of the data repository task, as follows:

  • *

    PENDING - The task has not started.

  • * EXECUTING - The task is in process.

  • * FAILED - The task was not able to be completed. For example, there * may be files the task failed to process. The * DataRepositoryTaskFailureDetails property provides more information about * task failures.

  • SUCCEEDED - The task has * completed successfully.

  • CANCELED - The task was * canceled and it did not complete.

  • CANCELING - * The task is in process of being canceled.

You cannot * delete an FSx for Lustre file system if there are data repository tasks for the * file system in the PENDING or EXECUTING states. Please * retry when the data repository task is finished (with a status of * CANCELED, SUCCEEDED, or FAILED). You can * use the DescribeDataRepositoryTask action to monitor the task status. Contact * the FSx team if you need to delete your file system immediately.

*/ inline void SetLifecycle(DataRepositoryTaskLifecycle&& value) { m_lifecycleHasBeenSet = true; m_lifecycle = std::move(value); } /** *

The lifecycle status of the data repository task, as follows:

  • *

    PENDING - The task has not started.

  • * EXECUTING - The task is in process.

  • * FAILED - The task was not able to be completed. For example, there * may be files the task failed to process. The * DataRepositoryTaskFailureDetails property provides more information about * task failures.

  • SUCCEEDED - The task has * completed successfully.

  • CANCELED - The task was * canceled and it did not complete.

  • CANCELING - * The task is in process of being canceled.

You cannot * delete an FSx for Lustre file system if there are data repository tasks for the * file system in the PENDING or EXECUTING states. Please * retry when the data repository task is finished (with a status of * CANCELED, SUCCEEDED, or FAILED). You can * use the DescribeDataRepositoryTask action to monitor the task status. Contact * the FSx team if you need to delete your file system immediately.

*/ inline DataRepositoryTask& WithLifecycle(const DataRepositoryTaskLifecycle& value) { SetLifecycle(value); return *this;} /** *

The lifecycle status of the data repository task, as follows:

  • *

    PENDING - The task has not started.

  • * EXECUTING - The task is in process.

  • * FAILED - The task was not able to be completed. For example, there * may be files the task failed to process. The * DataRepositoryTaskFailureDetails property provides more information about * task failures.

  • SUCCEEDED - The task has * completed successfully.

  • CANCELED - The task was * canceled and it did not complete.

  • CANCELING - * The task is in process of being canceled.

You cannot * delete an FSx for Lustre file system if there are data repository tasks for the * file system in the PENDING or EXECUTING states. Please * retry when the data repository task is finished (with a status of * CANCELED, SUCCEEDED, or FAILED). You can * use the DescribeDataRepositoryTask action to monitor the task status. Contact * the FSx team if you need to delete your file system immediately.

*/ inline DataRepositoryTask& WithLifecycle(DataRepositoryTaskLifecycle&& value) { SetLifecycle(std::move(value)); return *this;} /** *

The type of data repository task.

  • * EXPORT_TO_REPOSITORY tasks export from your Amazon FSx for Lustre * file system to a linked data repository.

  • * IMPORT_METADATA_FROM_REPOSITORY tasks import metadata changes from * a linked S3 bucket to your Amazon FSx for Lustre file system.

  • * AUTO_RELEASE_DATA tasks automatically release files from an Amazon * File Cache resource.

  • * RELEASE_DATA_FROM_FILESYSTEM tasks are not supported.

  • *
*/ inline const DataRepositoryTaskType& GetType() const{ return m_type; } /** *

The type of data repository task.

  • * EXPORT_TO_REPOSITORY tasks export from your Amazon FSx for Lustre * file system to a linked data repository.

  • * IMPORT_METADATA_FROM_REPOSITORY tasks import metadata changes from * a linked S3 bucket to your Amazon FSx for Lustre file system.

  • * AUTO_RELEASE_DATA tasks automatically release files from an Amazon * File Cache resource.

  • * RELEASE_DATA_FROM_FILESYSTEM tasks are not supported.

  • *
*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The type of data repository task.

  • * EXPORT_TO_REPOSITORY tasks export from your Amazon FSx for Lustre * file system to a linked data repository.

  • * IMPORT_METADATA_FROM_REPOSITORY tasks import metadata changes from * a linked S3 bucket to your Amazon FSx for Lustre file system.

  • * AUTO_RELEASE_DATA tasks automatically release files from an Amazon * File Cache resource.

  • * RELEASE_DATA_FROM_FILESYSTEM tasks are not supported.

  • *
*/ inline void SetType(const DataRepositoryTaskType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The type of data repository task.

  • * EXPORT_TO_REPOSITORY tasks export from your Amazon FSx for Lustre * file system to a linked data repository.

  • * IMPORT_METADATA_FROM_REPOSITORY tasks import metadata changes from * a linked S3 bucket to your Amazon FSx for Lustre file system.

  • * AUTO_RELEASE_DATA tasks automatically release files from an Amazon * File Cache resource.

  • * RELEASE_DATA_FROM_FILESYSTEM tasks are not supported.

  • *
*/ inline void SetType(DataRepositoryTaskType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The type of data repository task.

  • * EXPORT_TO_REPOSITORY tasks export from your Amazon FSx for Lustre * file system to a linked data repository.

  • * IMPORT_METADATA_FROM_REPOSITORY tasks import metadata changes from * a linked S3 bucket to your Amazon FSx for Lustre file system.

  • * AUTO_RELEASE_DATA tasks automatically release files from an Amazon * File Cache resource.

  • * RELEASE_DATA_FROM_FILESYSTEM tasks are not supported.

  • *
*/ inline DataRepositoryTask& WithType(const DataRepositoryTaskType& value) { SetType(value); return *this;} /** *

The type of data repository task.

  • * EXPORT_TO_REPOSITORY tasks export from your Amazon FSx for Lustre * file system to a linked data repository.

  • * IMPORT_METADATA_FROM_REPOSITORY tasks import metadata changes from * a linked S3 bucket to your Amazon FSx for Lustre file system.

  • * AUTO_RELEASE_DATA tasks automatically release files from an Amazon * File Cache resource.

  • * RELEASE_DATA_FROM_FILESYSTEM tasks are not supported.

  • *
*/ inline DataRepositoryTask& WithType(DataRepositoryTaskType&& value) { SetType(std::move(value)); return *this;} inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } inline DataRepositoryTask& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} inline DataRepositoryTask& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *

The time the system began processing the task.

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

The time the system began processing the task.

*/ inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } /** *

The time the system began processing the task.

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

The time the system began processing the task.

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

The time the system began processing the task.

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

The time the system began processing the task.

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

The time the system completed processing the task, populated after the task * is complete.

*/ inline const Aws::Utils::DateTime& GetEndTime() const{ return m_endTime; } /** *

The time the system completed processing the task, populated after the task * is complete.

*/ inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; } /** *

The time the system completed processing the task, populated after the task * is complete.

*/ inline void SetEndTime(const Aws::Utils::DateTime& value) { m_endTimeHasBeenSet = true; m_endTime = value; } /** *

The time the system completed processing the task, populated after the task * is complete.

*/ inline void SetEndTime(Aws::Utils::DateTime&& value) { m_endTimeHasBeenSet = true; m_endTime = std::move(value); } /** *

The time the system completed processing the task, populated after the task * is complete.

*/ inline DataRepositoryTask& WithEndTime(const Aws::Utils::DateTime& value) { SetEndTime(value); return *this;} /** *

The time the system completed processing the task, populated after the task * is complete.

*/ inline DataRepositoryTask& WithEndTime(Aws::Utils::DateTime&& value) { SetEndTime(std::move(value)); return *this;} inline const Aws::String& GetResourceARN() const{ return m_resourceARN; } inline bool ResourceARNHasBeenSet() const { return m_resourceARNHasBeenSet; } inline void SetResourceARN(const Aws::String& value) { m_resourceARNHasBeenSet = true; m_resourceARN = value; } inline void SetResourceARN(Aws::String&& value) { m_resourceARNHasBeenSet = true; m_resourceARN = std::move(value); } inline void SetResourceARN(const char* value) { m_resourceARNHasBeenSet = true; m_resourceARN.assign(value); } inline DataRepositoryTask& WithResourceARN(const Aws::String& value) { SetResourceARN(value); return *this;} inline DataRepositoryTask& WithResourceARN(Aws::String&& value) { SetResourceARN(std::move(value)); return *this;} inline DataRepositoryTask& WithResourceARN(const char* value) { SetResourceARN(value); return *this;} inline const Aws::Vector& GetTags() const{ return m_tags; } inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } inline DataRepositoryTask& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} inline DataRepositoryTask& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} inline DataRepositoryTask& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } inline DataRepositoryTask& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

The globally unique ID of the file system.

*/ inline const Aws::String& GetFileSystemId() const{ return m_fileSystemId; } /** *

The globally unique ID of the file system.

*/ inline bool FileSystemIdHasBeenSet() const { return m_fileSystemIdHasBeenSet; } /** *

The globally unique ID of the file system.

*/ inline void SetFileSystemId(const Aws::String& value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId = value; } /** *

The globally unique ID of the file system.

*/ inline void SetFileSystemId(Aws::String&& value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId = std::move(value); } /** *

The globally unique ID of the file system.

*/ inline void SetFileSystemId(const char* value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId.assign(value); } /** *

The globally unique ID of the file system.

*/ inline DataRepositoryTask& WithFileSystemId(const Aws::String& value) { SetFileSystemId(value); return *this;} /** *

The globally unique ID of the file system.

*/ inline DataRepositoryTask& WithFileSystemId(Aws::String&& value) { SetFileSystemId(std::move(value)); return *this;} /** *

The globally unique ID of the file system.

*/ inline DataRepositoryTask& WithFileSystemId(const char* value) { SetFileSystemId(value); return *this;} /** *

An array of paths that specify the data for the data repository task to * process. For example, in an EXPORT_TO_REPOSITORY task, the paths specify which * data to export to the linked data repository.

(Default) If * Paths is not specified, Amazon FSx uses the file system root * directory.

*/ inline const Aws::Vector& GetPaths() const{ return m_paths; } /** *

An array of paths that specify the data for the data repository task to * process. For example, in an EXPORT_TO_REPOSITORY task, the paths specify which * data to export to the linked data repository.

(Default) If * Paths is not specified, Amazon FSx uses the file system root * directory.

*/ inline bool PathsHasBeenSet() const { return m_pathsHasBeenSet; } /** *

An array of paths that specify the data for the data repository task to * process. For example, in an EXPORT_TO_REPOSITORY task, the paths specify which * data to export to the linked data repository.

(Default) If * Paths is not specified, Amazon FSx uses the file system root * directory.

*/ inline void SetPaths(const Aws::Vector& value) { m_pathsHasBeenSet = true; m_paths = value; } /** *

An array of paths that specify the data for the data repository task to * process. For example, in an EXPORT_TO_REPOSITORY task, the paths specify which * data to export to the linked data repository.

(Default) If * Paths is not specified, Amazon FSx uses the file system root * directory.

*/ inline void SetPaths(Aws::Vector&& value) { m_pathsHasBeenSet = true; m_paths = std::move(value); } /** *

An array of paths that specify the data for the data repository task to * process. For example, in an EXPORT_TO_REPOSITORY task, the paths specify which * data to export to the linked data repository.

(Default) If * Paths is not specified, Amazon FSx uses the file system root * directory.

*/ inline DataRepositoryTask& WithPaths(const Aws::Vector& value) { SetPaths(value); return *this;} /** *

An array of paths that specify the data for the data repository task to * process. For example, in an EXPORT_TO_REPOSITORY task, the paths specify which * data to export to the linked data repository.

(Default) If * Paths is not specified, Amazon FSx uses the file system root * directory.

*/ inline DataRepositoryTask& WithPaths(Aws::Vector&& value) { SetPaths(std::move(value)); return *this;} /** *

An array of paths that specify the data for the data repository task to * process. For example, in an EXPORT_TO_REPOSITORY task, the paths specify which * data to export to the linked data repository.

(Default) If * Paths is not specified, Amazon FSx uses the file system root * directory.

*/ inline DataRepositoryTask& AddPaths(const Aws::String& value) { m_pathsHasBeenSet = true; m_paths.push_back(value); return *this; } /** *

An array of paths that specify the data for the data repository task to * process. For example, in an EXPORT_TO_REPOSITORY task, the paths specify which * data to export to the linked data repository.

(Default) If * Paths is not specified, Amazon FSx uses the file system root * directory.

*/ inline DataRepositoryTask& AddPaths(Aws::String&& value) { m_pathsHasBeenSet = true; m_paths.push_back(std::move(value)); return *this; } /** *

An array of paths that specify the data for the data repository task to * process. For example, in an EXPORT_TO_REPOSITORY task, the paths specify which * data to export to the linked data repository.

(Default) If * Paths is not specified, Amazon FSx uses the file system root * directory.

*/ inline DataRepositoryTask& AddPaths(const char* value) { m_pathsHasBeenSet = true; m_paths.push_back(value); return *this; } /** *

Failure message describing why the task failed, it is populated only when * Lifecycle is set to FAILED.

*/ inline const DataRepositoryTaskFailureDetails& GetFailureDetails() const{ return m_failureDetails; } /** *

Failure message describing why the task failed, it is populated only when * Lifecycle is set to FAILED.

*/ inline bool FailureDetailsHasBeenSet() const { return m_failureDetailsHasBeenSet; } /** *

Failure message describing why the task failed, it is populated only when * Lifecycle is set to FAILED.

*/ inline void SetFailureDetails(const DataRepositoryTaskFailureDetails& value) { m_failureDetailsHasBeenSet = true; m_failureDetails = value; } /** *

Failure message describing why the task failed, it is populated only when * Lifecycle is set to FAILED.

*/ inline void SetFailureDetails(DataRepositoryTaskFailureDetails&& value) { m_failureDetailsHasBeenSet = true; m_failureDetails = std::move(value); } /** *

Failure message describing why the task failed, it is populated only when * Lifecycle is set to FAILED.

*/ inline DataRepositoryTask& WithFailureDetails(const DataRepositoryTaskFailureDetails& value) { SetFailureDetails(value); return *this;} /** *

Failure message describing why the task failed, it is populated only when * Lifecycle is set to FAILED.

*/ inline DataRepositoryTask& WithFailureDetails(DataRepositoryTaskFailureDetails&& value) { SetFailureDetails(std::move(value)); return *this;} /** *

Provides the status of the number of files that the task has processed * successfully and failed to process.

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

Provides the status of the number of files that the task has processed * successfully and failed to process.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

Provides the status of the number of files that the task has processed * successfully and failed to process.

*/ inline void SetStatus(const DataRepositoryTaskStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

Provides the status of the number of files that the task has processed * successfully and failed to process.

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

Provides the status of the number of files that the task has processed * successfully and failed to process.

*/ inline DataRepositoryTask& WithStatus(const DataRepositoryTaskStatus& value) { SetStatus(value); return *this;} /** *

Provides the status of the number of files that the task has processed * successfully and failed to process.

*/ inline DataRepositoryTask& WithStatus(DataRepositoryTaskStatus&& value) { SetStatus(std::move(value)); return *this;} inline const CompletionReport& GetReport() const{ return m_report; } inline bool ReportHasBeenSet() const { return m_reportHasBeenSet; } inline void SetReport(const CompletionReport& value) { m_reportHasBeenSet = true; m_report = value; } inline void SetReport(CompletionReport&& value) { m_reportHasBeenSet = true; m_report = std::move(value); } inline DataRepositoryTask& WithReport(const CompletionReport& value) { SetReport(value); return *this;} inline DataRepositoryTask& WithReport(CompletionReport&& value) { SetReport(std::move(value)); return *this;} /** *

Specifies the amount of data to release, in GiB, by an Amazon File Cache * AUTO_RELEASE_DATA task that automatically releases files from the cache.

*/ inline long long GetCapacityToRelease() const{ return m_capacityToRelease; } /** *

Specifies the amount of data to release, in GiB, by an Amazon File Cache * AUTO_RELEASE_DATA task that automatically releases files from the cache.

*/ inline bool CapacityToReleaseHasBeenSet() const { return m_capacityToReleaseHasBeenSet; } /** *

Specifies the amount of data to release, in GiB, by an Amazon File Cache * AUTO_RELEASE_DATA task that automatically releases files from the cache.

*/ inline void SetCapacityToRelease(long long value) { m_capacityToReleaseHasBeenSet = true; m_capacityToRelease = value; } /** *

Specifies the amount of data to release, in GiB, by an Amazon File Cache * AUTO_RELEASE_DATA task that automatically releases files from the cache.

*/ inline DataRepositoryTask& WithCapacityToRelease(long long value) { SetCapacityToRelease(value); return *this;} /** *

The system-generated, unique ID of the cache.

*/ inline const Aws::String& GetFileCacheId() const{ return m_fileCacheId; } /** *

The system-generated, unique ID of the cache.

*/ inline bool FileCacheIdHasBeenSet() const { return m_fileCacheIdHasBeenSet; } /** *

The system-generated, unique ID of the cache.

*/ inline void SetFileCacheId(const Aws::String& value) { m_fileCacheIdHasBeenSet = true; m_fileCacheId = value; } /** *

The system-generated, unique ID of the cache.

*/ inline void SetFileCacheId(Aws::String&& value) { m_fileCacheIdHasBeenSet = true; m_fileCacheId = std::move(value); } /** *

The system-generated, unique ID of the cache.

*/ inline void SetFileCacheId(const char* value) { m_fileCacheIdHasBeenSet = true; m_fileCacheId.assign(value); } /** *

The system-generated, unique ID of the cache.

*/ inline DataRepositoryTask& WithFileCacheId(const Aws::String& value) { SetFileCacheId(value); return *this;} /** *

The system-generated, unique ID of the cache.

*/ inline DataRepositoryTask& WithFileCacheId(Aws::String&& value) { SetFileCacheId(std::move(value)); return *this;} /** *

The system-generated, unique ID of the cache.

*/ inline DataRepositoryTask& WithFileCacheId(const char* value) { SetFileCacheId(value); return *this;} private: Aws::String m_taskId; bool m_taskIdHasBeenSet = false; DataRepositoryTaskLifecycle m_lifecycle; bool m_lifecycleHasBeenSet = false; DataRepositoryTaskType m_type; bool m_typeHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::Utils::DateTime m_startTime; bool m_startTimeHasBeenSet = false; Aws::Utils::DateTime m_endTime; bool m_endTimeHasBeenSet = false; Aws::String m_resourceARN; bool m_resourceARNHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; Aws::String m_fileSystemId; bool m_fileSystemIdHasBeenSet = false; Aws::Vector m_paths; bool m_pathsHasBeenSet = false; DataRepositoryTaskFailureDetails m_failureDetails; bool m_failureDetailsHasBeenSet = false; DataRepositoryTaskStatus m_status; bool m_statusHasBeenSet = false; CompletionReport m_report; bool m_reportHasBeenSet = false; long long m_capacityToRelease; bool m_capacityToReleaseHasBeenSet = false; Aws::String m_fileCacheId; bool m_fileCacheIdHasBeenSet = false; }; } // namespace Model } // namespace FSx } // namespace Aws