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

Provides a report detailing the data repository task results of the files * processed that match the criteria specified in the report Scope * parameter. FSx delivers the report to the file system's linked data repository * in Amazon S3, using the path specified in the report Path * parameter. You can specify whether or not a report gets generated for a task * using the Enabled parameter.

See Also:

AWS * API Reference

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

Set Enabled to True to generate a * CompletionReport when the task completes. If set to * true, then you need to provide a report Scope, * Path, and Format. Set Enabled to * False if you do not want a CompletionReport generated * when the task completes.

*/ inline bool GetEnabled() const{ return m_enabled; } /** *

Set Enabled to True to generate a * CompletionReport when the task completes. If set to * true, then you need to provide a report Scope, * Path, and Format. Set Enabled to * False if you do not want a CompletionReport generated * when the task completes.

*/ inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; } /** *

Set Enabled to True to generate a * CompletionReport when the task completes. If set to * true, then you need to provide a report Scope, * Path, and Format. Set Enabled to * False if you do not want a CompletionReport generated * when the task completes.

*/ inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; } /** *

Set Enabled to True to generate a * CompletionReport when the task completes. If set to * true, then you need to provide a report Scope, * Path, and Format. Set Enabled to * False if you do not want a CompletionReport generated * when the task completes.

*/ inline CompletionReport& WithEnabled(bool value) { SetEnabled(value); return *this;} /** *

Required if Enabled is set to true. Specifies the * location of the report on the file system's linked S3 data repository. An * absolute path that defines where the completion report will be stored in the * destination location. The Path you provide must be located within * the file system’s ExportPath. An example Path value is * "s3://myBucket/myExportPath/optionalPrefix". The report provides the following * information for each file in the report: FilePath, FileStatus, and * ErrorCode.

*/ inline const Aws::String& GetPath() const{ return m_path; } /** *

Required if Enabled is set to true. Specifies the * location of the report on the file system's linked S3 data repository. An * absolute path that defines where the completion report will be stored in the * destination location. The Path you provide must be located within * the file system’s ExportPath. An example Path value is * "s3://myBucket/myExportPath/optionalPrefix". The report provides the following * information for each file in the report: FilePath, FileStatus, and * ErrorCode.

*/ inline bool PathHasBeenSet() const { return m_pathHasBeenSet; } /** *

Required if Enabled is set to true. Specifies the * location of the report on the file system's linked S3 data repository. An * absolute path that defines where the completion report will be stored in the * destination location. The Path you provide must be located within * the file system’s ExportPath. An example Path value is * "s3://myBucket/myExportPath/optionalPrefix". The report provides the following * information for each file in the report: FilePath, FileStatus, and * ErrorCode.

*/ inline void SetPath(const Aws::String& value) { m_pathHasBeenSet = true; m_path = value; } /** *

Required if Enabled is set to true. Specifies the * location of the report on the file system's linked S3 data repository. An * absolute path that defines where the completion report will be stored in the * destination location. The Path you provide must be located within * the file system’s ExportPath. An example Path value is * "s3://myBucket/myExportPath/optionalPrefix". The report provides the following * information for each file in the report: FilePath, FileStatus, and * ErrorCode.

*/ inline void SetPath(Aws::String&& value) { m_pathHasBeenSet = true; m_path = std::move(value); } /** *

Required if Enabled is set to true. Specifies the * location of the report on the file system's linked S3 data repository. An * absolute path that defines where the completion report will be stored in the * destination location. The Path you provide must be located within * the file system’s ExportPath. An example Path value is * "s3://myBucket/myExportPath/optionalPrefix". The report provides the following * information for each file in the report: FilePath, FileStatus, and * ErrorCode.

*/ inline void SetPath(const char* value) { m_pathHasBeenSet = true; m_path.assign(value); } /** *

Required if Enabled is set to true. Specifies the * location of the report on the file system's linked S3 data repository. An * absolute path that defines where the completion report will be stored in the * destination location. The Path you provide must be located within * the file system’s ExportPath. An example Path value is * "s3://myBucket/myExportPath/optionalPrefix". The report provides the following * information for each file in the report: FilePath, FileStatus, and * ErrorCode.

*/ inline CompletionReport& WithPath(const Aws::String& value) { SetPath(value); return *this;} /** *

Required if Enabled is set to true. Specifies the * location of the report on the file system's linked S3 data repository. An * absolute path that defines where the completion report will be stored in the * destination location. The Path you provide must be located within * the file system’s ExportPath. An example Path value is * "s3://myBucket/myExportPath/optionalPrefix". The report provides the following * information for each file in the report: FilePath, FileStatus, and * ErrorCode.

*/ inline CompletionReport& WithPath(Aws::String&& value) { SetPath(std::move(value)); return *this;} /** *

Required if Enabled is set to true. Specifies the * location of the report on the file system's linked S3 data repository. An * absolute path that defines where the completion report will be stored in the * destination location. The Path you provide must be located within * the file system’s ExportPath. An example Path value is * "s3://myBucket/myExportPath/optionalPrefix". The report provides the following * information for each file in the report: FilePath, FileStatus, and * ErrorCode.

*/ inline CompletionReport& WithPath(const char* value) { SetPath(value); return *this;} /** *

Required if Enabled is set to true. Specifies the * format of the CompletionReport. REPORT_CSV_20191124 is * the only format currently supported. When Format is set to * REPORT_CSV_20191124, the CompletionReport is provided * in CSV format, and is delivered to {path}/task-{id}/failures.csv. *

*/ inline const ReportFormat& GetFormat() const{ return m_format; } /** *

Required if Enabled is set to true. Specifies the * format of the CompletionReport. REPORT_CSV_20191124 is * the only format currently supported. When Format is set to * REPORT_CSV_20191124, the CompletionReport is provided * in CSV format, and is delivered to {path}/task-{id}/failures.csv. *

*/ inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; } /** *

Required if Enabled is set to true. Specifies the * format of the CompletionReport. REPORT_CSV_20191124 is * the only format currently supported. When Format is set to * REPORT_CSV_20191124, the CompletionReport is provided * in CSV format, and is delivered to {path}/task-{id}/failures.csv. *

*/ inline void SetFormat(const ReportFormat& value) { m_formatHasBeenSet = true; m_format = value; } /** *

Required if Enabled is set to true. Specifies the * format of the CompletionReport. REPORT_CSV_20191124 is * the only format currently supported. When Format is set to * REPORT_CSV_20191124, the CompletionReport is provided * in CSV format, and is delivered to {path}/task-{id}/failures.csv. *

*/ inline void SetFormat(ReportFormat&& value) { m_formatHasBeenSet = true; m_format = std::move(value); } /** *

Required if Enabled is set to true. Specifies the * format of the CompletionReport. REPORT_CSV_20191124 is * the only format currently supported. When Format is set to * REPORT_CSV_20191124, the CompletionReport is provided * in CSV format, and is delivered to {path}/task-{id}/failures.csv. *

*/ inline CompletionReport& WithFormat(const ReportFormat& value) { SetFormat(value); return *this;} /** *

Required if Enabled is set to true. Specifies the * format of the CompletionReport. REPORT_CSV_20191124 is * the only format currently supported. When Format is set to * REPORT_CSV_20191124, the CompletionReport is provided * in CSV format, and is delivered to {path}/task-{id}/failures.csv. *

*/ inline CompletionReport& WithFormat(ReportFormat&& value) { SetFormat(std::move(value)); return *this;} /** *

Required if Enabled is set to true. Specifies the * scope of the CompletionReport; FAILED_FILES_ONLY is * the only scope currently supported. When Scope is set to * FAILED_FILES_ONLY, the CompletionReport only contains * information about files that the data repository task failed to process.

*/ inline const ReportScope& GetScope() const{ return m_scope; } /** *

Required if Enabled is set to true. Specifies the * scope of the CompletionReport; FAILED_FILES_ONLY is * the only scope currently supported. When Scope is set to * FAILED_FILES_ONLY, the CompletionReport only contains * information about files that the data repository task failed to process.

*/ inline bool ScopeHasBeenSet() const { return m_scopeHasBeenSet; } /** *

Required if Enabled is set to true. Specifies the * scope of the CompletionReport; FAILED_FILES_ONLY is * the only scope currently supported. When Scope is set to * FAILED_FILES_ONLY, the CompletionReport only contains * information about files that the data repository task failed to process.

*/ inline void SetScope(const ReportScope& value) { m_scopeHasBeenSet = true; m_scope = value; } /** *

Required if Enabled is set to true. Specifies the * scope of the CompletionReport; FAILED_FILES_ONLY is * the only scope currently supported. When Scope is set to * FAILED_FILES_ONLY, the CompletionReport only contains * information about files that the data repository task failed to process.

*/ inline void SetScope(ReportScope&& value) { m_scopeHasBeenSet = true; m_scope = std::move(value); } /** *

Required if Enabled is set to true. Specifies the * scope of the CompletionReport; FAILED_FILES_ONLY is * the only scope currently supported. When Scope is set to * FAILED_FILES_ONLY, the CompletionReport only contains * information about files that the data repository task failed to process.

*/ inline CompletionReport& WithScope(const ReportScope& value) { SetScope(value); return *this;} /** *

Required if Enabled is set to true. Specifies the * scope of the CompletionReport; FAILED_FILES_ONLY is * the only scope currently supported. When Scope is set to * FAILED_FILES_ONLY, the CompletionReport only contains * information about files that the data repository task failed to process.

*/ inline CompletionReport& WithScope(ReportScope&& value) { SetScope(std::move(value)); return *this;} private: bool m_enabled; bool m_enabledHasBeenSet = false; Aws::String m_path; bool m_pathHasBeenSet = false; ReportFormat m_format; bool m_formatHasBeenSet = false; ReportScope m_scope; bool m_scopeHasBeenSet = false; }; } // namespace Model } // namespace FSx } // namespace Aws