/** * 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 namespace Aws { namespace Utils { namespace Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace RDS { namespace Model { /** *

Contains the details of a snapshot or cluster export to Amazon S3.

*

This data type is used as a response element in the * DescribeExportTasks action.

See Also:

AWS API * Reference

*/ class ExportTask { public: AWS_RDS_API ExportTask(); AWS_RDS_API ExportTask(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_RDS_API ExportTask& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_RDS_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_RDS_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

A unique identifier for the snapshot or cluster export task. This ID isn't an * identifier for the Amazon S3 bucket where the data is exported.

*/ inline const Aws::String& GetExportTaskIdentifier() const{ return m_exportTaskIdentifier; } /** *

A unique identifier for the snapshot or cluster export task. This ID isn't an * identifier for the Amazon S3 bucket where the data is exported.

*/ inline bool ExportTaskIdentifierHasBeenSet() const { return m_exportTaskIdentifierHasBeenSet; } /** *

A unique identifier for the snapshot or cluster export task. This ID isn't an * identifier for the Amazon S3 bucket where the data is exported.

*/ inline void SetExportTaskIdentifier(const Aws::String& value) { m_exportTaskIdentifierHasBeenSet = true; m_exportTaskIdentifier = value; } /** *

A unique identifier for the snapshot or cluster export task. This ID isn't an * identifier for the Amazon S3 bucket where the data is exported.

*/ inline void SetExportTaskIdentifier(Aws::String&& value) { m_exportTaskIdentifierHasBeenSet = true; m_exportTaskIdentifier = std::move(value); } /** *

A unique identifier for the snapshot or cluster export task. This ID isn't an * identifier for the Amazon S3 bucket where the data is exported.

*/ inline void SetExportTaskIdentifier(const char* value) { m_exportTaskIdentifierHasBeenSet = true; m_exportTaskIdentifier.assign(value); } /** *

A unique identifier for the snapshot or cluster export task. This ID isn't an * identifier for the Amazon S3 bucket where the data is exported.

*/ inline ExportTask& WithExportTaskIdentifier(const Aws::String& value) { SetExportTaskIdentifier(value); return *this;} /** *

A unique identifier for the snapshot or cluster export task. This ID isn't an * identifier for the Amazon S3 bucket where the data is exported.

*/ inline ExportTask& WithExportTaskIdentifier(Aws::String&& value) { SetExportTaskIdentifier(std::move(value)); return *this;} /** *

A unique identifier for the snapshot or cluster export task. This ID isn't an * identifier for the Amazon S3 bucket where the data is exported.

*/ inline ExportTask& WithExportTaskIdentifier(const char* value) { SetExportTaskIdentifier(value); return *this;} /** *

The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon * S3.

*/ inline const Aws::String& GetSourceArn() const{ return m_sourceArn; } /** *

The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon * S3.

*/ inline bool SourceArnHasBeenSet() const { return m_sourceArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon * S3.

*/ inline void SetSourceArn(const Aws::String& value) { m_sourceArnHasBeenSet = true; m_sourceArn = value; } /** *

The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon * S3.

*/ inline void SetSourceArn(Aws::String&& value) { m_sourceArnHasBeenSet = true; m_sourceArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon * S3.

*/ inline void SetSourceArn(const char* value) { m_sourceArnHasBeenSet = true; m_sourceArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon * S3.

*/ inline ExportTask& WithSourceArn(const Aws::String& value) { SetSourceArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon * S3.

*/ inline ExportTask& WithSourceArn(Aws::String&& value) { SetSourceArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon * S3.

*/ inline ExportTask& WithSourceArn(const char* value) { SetSourceArn(value); return *this;} /** *

The data exported from the snapshot or cluster. Valid values are the * following:

  • database - Export all the data from a * specified database.

  • database.table * table-name - Export a table of the snapshot or cluster. This format is * valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • *

    database.schema schema-name - Export a database schema * of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and * Aurora PostgreSQL.

  • database.schema.table * table-name - Export a table of the database schema. This format is valid * only for RDS for PostgreSQL and Aurora PostgreSQL.

*/ inline const Aws::Vector& GetExportOnly() const{ return m_exportOnly; } /** *

The data exported from the snapshot or cluster. Valid values are the * following:

  • database - Export all the data from a * specified database.

  • database.table * table-name - Export a table of the snapshot or cluster. This format is * valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • *

    database.schema schema-name - Export a database schema * of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and * Aurora PostgreSQL.

  • database.schema.table * table-name - Export a table of the database schema. This format is valid * only for RDS for PostgreSQL and Aurora PostgreSQL.

*/ inline bool ExportOnlyHasBeenSet() const { return m_exportOnlyHasBeenSet; } /** *

The data exported from the snapshot or cluster. Valid values are the * following:

  • database - Export all the data from a * specified database.

  • database.table * table-name - Export a table of the snapshot or cluster. This format is * valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • *

    database.schema schema-name - Export a database schema * of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and * Aurora PostgreSQL.

  • database.schema.table * table-name - Export a table of the database schema. This format is valid * only for RDS for PostgreSQL and Aurora PostgreSQL.

*/ inline void SetExportOnly(const Aws::Vector& value) { m_exportOnlyHasBeenSet = true; m_exportOnly = value; } /** *

The data exported from the snapshot or cluster. Valid values are the * following:

  • database - Export all the data from a * specified database.

  • database.table * table-name - Export a table of the snapshot or cluster. This format is * valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • *

    database.schema schema-name - Export a database schema * of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and * Aurora PostgreSQL.

  • database.schema.table * table-name - Export a table of the database schema. This format is valid * only for RDS for PostgreSQL and Aurora PostgreSQL.

*/ inline void SetExportOnly(Aws::Vector&& value) { m_exportOnlyHasBeenSet = true; m_exportOnly = std::move(value); } /** *

The data exported from the snapshot or cluster. Valid values are the * following:

  • database - Export all the data from a * specified database.

  • database.table * table-name - Export a table of the snapshot or cluster. This format is * valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • *

    database.schema schema-name - Export a database schema * of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and * Aurora PostgreSQL.

  • database.schema.table * table-name - Export a table of the database schema. This format is valid * only for RDS for PostgreSQL and Aurora PostgreSQL.

*/ inline ExportTask& WithExportOnly(const Aws::Vector& value) { SetExportOnly(value); return *this;} /** *

The data exported from the snapshot or cluster. Valid values are the * following:

  • database - Export all the data from a * specified database.

  • database.table * table-name - Export a table of the snapshot or cluster. This format is * valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • *

    database.schema schema-name - Export a database schema * of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and * Aurora PostgreSQL.

  • database.schema.table * table-name - Export a table of the database schema. This format is valid * only for RDS for PostgreSQL and Aurora PostgreSQL.

*/ inline ExportTask& WithExportOnly(Aws::Vector&& value) { SetExportOnly(std::move(value)); return *this;} /** *

The data exported from the snapshot or cluster. Valid values are the * following:

  • database - Export all the data from a * specified database.

  • database.table * table-name - Export a table of the snapshot or cluster. This format is * valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • *

    database.schema schema-name - Export a database schema * of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and * Aurora PostgreSQL.

  • database.schema.table * table-name - Export a table of the database schema. This format is valid * only for RDS for PostgreSQL and Aurora PostgreSQL.

*/ inline ExportTask& AddExportOnly(const Aws::String& value) { m_exportOnlyHasBeenSet = true; m_exportOnly.push_back(value); return *this; } /** *

The data exported from the snapshot or cluster. Valid values are the * following:

  • database - Export all the data from a * specified database.

  • database.table * table-name - Export a table of the snapshot or cluster. This format is * valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • *

    database.schema schema-name - Export a database schema * of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and * Aurora PostgreSQL.

  • database.schema.table * table-name - Export a table of the database schema. This format is valid * only for RDS for PostgreSQL and Aurora PostgreSQL.

*/ inline ExportTask& AddExportOnly(Aws::String&& value) { m_exportOnlyHasBeenSet = true; m_exportOnly.push_back(std::move(value)); return *this; } /** *

The data exported from the snapshot or cluster. Valid values are the * following:

  • database - Export all the data from a * specified database.

  • database.table * table-name - Export a table of the snapshot or cluster. This format is * valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.

  • *

    database.schema schema-name - Export a database schema * of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and * Aurora PostgreSQL.

  • database.schema.table * table-name - Export a table of the database schema. This format is valid * only for RDS for PostgreSQL and Aurora PostgreSQL.

*/ inline ExportTask& AddExportOnly(const char* value) { m_exportOnlyHasBeenSet = true; m_exportOnly.push_back(value); return *this; } /** *

The time that the snapshot was created.

*/ inline const Aws::Utils::DateTime& GetSnapshotTime() const{ return m_snapshotTime; } /** *

The time that the snapshot was created.

*/ inline bool SnapshotTimeHasBeenSet() const { return m_snapshotTimeHasBeenSet; } /** *

The time that the snapshot was created.

*/ inline void SetSnapshotTime(const Aws::Utils::DateTime& value) { m_snapshotTimeHasBeenSet = true; m_snapshotTime = value; } /** *

The time that the snapshot was created.

*/ inline void SetSnapshotTime(Aws::Utils::DateTime&& value) { m_snapshotTimeHasBeenSet = true; m_snapshotTime = std::move(value); } /** *

The time that the snapshot was created.

*/ inline ExportTask& WithSnapshotTime(const Aws::Utils::DateTime& value) { SetSnapshotTime(value); return *this;} /** *

The time that the snapshot was created.

*/ inline ExportTask& WithSnapshotTime(Aws::Utils::DateTime&& value) { SetSnapshotTime(std::move(value)); return *this;} /** *

The time that the snapshot or cluster export task started.

*/ inline const Aws::Utils::DateTime& GetTaskStartTime() const{ return m_taskStartTime; } /** *

The time that the snapshot or cluster export task started.

*/ inline bool TaskStartTimeHasBeenSet() const { return m_taskStartTimeHasBeenSet; } /** *

The time that the snapshot or cluster export task started.

*/ inline void SetTaskStartTime(const Aws::Utils::DateTime& value) { m_taskStartTimeHasBeenSet = true; m_taskStartTime = value; } /** *

The time that the snapshot or cluster export task started.

*/ inline void SetTaskStartTime(Aws::Utils::DateTime&& value) { m_taskStartTimeHasBeenSet = true; m_taskStartTime = std::move(value); } /** *

The time that the snapshot or cluster export task started.

*/ inline ExportTask& WithTaskStartTime(const Aws::Utils::DateTime& value) { SetTaskStartTime(value); return *this;} /** *

The time that the snapshot or cluster export task started.

*/ inline ExportTask& WithTaskStartTime(Aws::Utils::DateTime&& value) { SetTaskStartTime(std::move(value)); return *this;} /** *

The time that the snapshot or cluster export task ended.

*/ inline const Aws::Utils::DateTime& GetTaskEndTime() const{ return m_taskEndTime; } /** *

The time that the snapshot or cluster export task ended.

*/ inline bool TaskEndTimeHasBeenSet() const { return m_taskEndTimeHasBeenSet; } /** *

The time that the snapshot or cluster export task ended.

*/ inline void SetTaskEndTime(const Aws::Utils::DateTime& value) { m_taskEndTimeHasBeenSet = true; m_taskEndTime = value; } /** *

The time that the snapshot or cluster export task ended.

*/ inline void SetTaskEndTime(Aws::Utils::DateTime&& value) { m_taskEndTimeHasBeenSet = true; m_taskEndTime = std::move(value); } /** *

The time that the snapshot or cluster export task ended.

*/ inline ExportTask& WithTaskEndTime(const Aws::Utils::DateTime& value) { SetTaskEndTime(value); return *this;} /** *

The time that the snapshot or cluster export task ended.

*/ inline ExportTask& WithTaskEndTime(Aws::Utils::DateTime&& value) { SetTaskEndTime(std::move(value)); return *this;} /** *

The Amazon S3 bucket that the snapshot or cluster is exported to.

*/ inline const Aws::String& GetS3Bucket() const{ return m_s3Bucket; } /** *

The Amazon S3 bucket that the snapshot or cluster is exported to.

*/ inline bool S3BucketHasBeenSet() const { return m_s3BucketHasBeenSet; } /** *

The Amazon S3 bucket that the snapshot or cluster is exported to.

*/ inline void SetS3Bucket(const Aws::String& value) { m_s3BucketHasBeenSet = true; m_s3Bucket = value; } /** *

The Amazon S3 bucket that the snapshot or cluster is exported to.

*/ inline void SetS3Bucket(Aws::String&& value) { m_s3BucketHasBeenSet = true; m_s3Bucket = std::move(value); } /** *

The Amazon S3 bucket that the snapshot or cluster is exported to.

*/ inline void SetS3Bucket(const char* value) { m_s3BucketHasBeenSet = true; m_s3Bucket.assign(value); } /** *

The Amazon S3 bucket that the snapshot or cluster is exported to.

*/ inline ExportTask& WithS3Bucket(const Aws::String& value) { SetS3Bucket(value); return *this;} /** *

The Amazon S3 bucket that the snapshot or cluster is exported to.

*/ inline ExportTask& WithS3Bucket(Aws::String&& value) { SetS3Bucket(std::move(value)); return *this;} /** *

The Amazon S3 bucket that the snapshot or cluster is exported to.

*/ inline ExportTask& WithS3Bucket(const char* value) { SetS3Bucket(value); return *this;} /** *

The Amazon S3 bucket prefix that is the file name and path of the exported * data.

*/ inline const Aws::String& GetS3Prefix() const{ return m_s3Prefix; } /** *

The Amazon S3 bucket prefix that is the file name and path of the exported * data.

*/ inline bool S3PrefixHasBeenSet() const { return m_s3PrefixHasBeenSet; } /** *

The Amazon S3 bucket prefix that is the file name and path of the exported * data.

*/ inline void SetS3Prefix(const Aws::String& value) { m_s3PrefixHasBeenSet = true; m_s3Prefix = value; } /** *

The Amazon S3 bucket prefix that is the file name and path of the exported * data.

*/ inline void SetS3Prefix(Aws::String&& value) { m_s3PrefixHasBeenSet = true; m_s3Prefix = std::move(value); } /** *

The Amazon S3 bucket prefix that is the file name and path of the exported * data.

*/ inline void SetS3Prefix(const char* value) { m_s3PrefixHasBeenSet = true; m_s3Prefix.assign(value); } /** *

The Amazon S3 bucket prefix that is the file name and path of the exported * data.

*/ inline ExportTask& WithS3Prefix(const Aws::String& value) { SetS3Prefix(value); return *this;} /** *

The Amazon S3 bucket prefix that is the file name and path of the exported * data.

*/ inline ExportTask& WithS3Prefix(Aws::String&& value) { SetS3Prefix(std::move(value)); return *this;} /** *

The Amazon S3 bucket prefix that is the file name and path of the exported * data.

*/ inline ExportTask& WithS3Prefix(const char* value) { SetS3Prefix(value); return *this;} /** *

The name of the IAM role that is used to write to Amazon S3 when exporting a * snapshot or cluster.

*/ inline const Aws::String& GetIamRoleArn() const{ return m_iamRoleArn; } /** *

The name of the IAM role that is used to write to Amazon S3 when exporting a * snapshot or cluster.

*/ inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; } /** *

The name of the IAM role that is used to write to Amazon S3 when exporting a * snapshot or cluster.

*/ inline void SetIamRoleArn(const Aws::String& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = value; } /** *

The name of the IAM role that is used to write to Amazon S3 when exporting a * snapshot or cluster.

*/ inline void SetIamRoleArn(Aws::String&& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = std::move(value); } /** *

The name of the IAM role that is used to write to Amazon S3 when exporting a * snapshot or cluster.

*/ inline void SetIamRoleArn(const char* value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn.assign(value); } /** *

The name of the IAM role that is used to write to Amazon S3 when exporting a * snapshot or cluster.

*/ inline ExportTask& WithIamRoleArn(const Aws::String& value) { SetIamRoleArn(value); return *this;} /** *

The name of the IAM role that is used to write to Amazon S3 when exporting a * snapshot or cluster.

*/ inline ExportTask& WithIamRoleArn(Aws::String&& value) { SetIamRoleArn(std::move(value)); return *this;} /** *

The name of the IAM role that is used to write to Amazon S3 when exporting a * snapshot or cluster.

*/ inline ExportTask& WithIamRoleArn(const char* value) { SetIamRoleArn(value); return *this;} /** *

The key identifier of the Amazon Web Services KMS key that is used to encrypt * the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, * key ID, alias ARN, or alias name. The IAM role used for the export must have * encryption and decryption permissions to use this KMS key.

*/ inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; } /** *

The key identifier of the Amazon Web Services KMS key that is used to encrypt * the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, * key ID, alias ARN, or alias name. The IAM role used for the export must have * encryption and decryption permissions to use this KMS key.

*/ inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; } /** *

The key identifier of the Amazon Web Services KMS key that is used to encrypt * the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, * key ID, alias ARN, or alias name. The IAM role used for the export must have * encryption and decryption permissions to use this KMS key.

*/ inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = value; } /** *

The key identifier of the Amazon Web Services KMS key that is used to encrypt * the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, * key ID, alias ARN, or alias name. The IAM role used for the export must have * encryption and decryption permissions to use this KMS key.

*/ inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::move(value); } /** *

The key identifier of the Amazon Web Services KMS key that is used to encrypt * the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, * key ID, alias ARN, or alias name. The IAM role used for the export must have * encryption and decryption permissions to use this KMS key.

*/ inline void SetKmsKeyId(const char* value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId.assign(value); } /** *

The key identifier of the Amazon Web Services KMS key that is used to encrypt * the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, * key ID, alias ARN, or alias name. The IAM role used for the export must have * encryption and decryption permissions to use this KMS key.

*/ inline ExportTask& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;} /** *

The key identifier of the Amazon Web Services KMS key that is used to encrypt * the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, * key ID, alias ARN, or alias name. The IAM role used for the export must have * encryption and decryption permissions to use this KMS key.

*/ inline ExportTask& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;} /** *

The key identifier of the Amazon Web Services KMS key that is used to encrypt * the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, * key ID, alias ARN, or alias name. The IAM role used for the export must have * encryption and decryption permissions to use this KMS key.

*/ inline ExportTask& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;} /** *

The progress status of the export task. The status can be one of the * following:

  • CANCELED

  • * CANCELING

  • COMPLETE

  • *

    FAILED

  • IN_PROGRESS

  • *
  • STARTING

*/ inline const Aws::String& GetStatus() const{ return m_status; } /** *

The progress status of the export task. The status can be one of the * following:

  • CANCELED

  • * CANCELING

  • COMPLETE

  • *

    FAILED

  • IN_PROGRESS

  • *
  • STARTING

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

The progress status of the export task. The status can be one of the * following:

  • CANCELED

  • * CANCELING

  • COMPLETE

  • *

    FAILED

  • IN_PROGRESS

  • *
  • STARTING

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

The progress status of the export task. The status can be one of the * following:

  • CANCELED

  • * CANCELING

  • COMPLETE

  • *

    FAILED

  • IN_PROGRESS

  • *
  • STARTING

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

The progress status of the export task. The status can be one of the * following:

  • CANCELED

  • * CANCELING

  • COMPLETE

  • *

    FAILED

  • IN_PROGRESS

  • *
  • STARTING

*/ inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); } /** *

The progress status of the export task. The status can be one of the * following:

  • CANCELED

  • * CANCELING

  • COMPLETE

  • *

    FAILED

  • IN_PROGRESS

  • *
  • STARTING

*/ inline ExportTask& WithStatus(const Aws::String& value) { SetStatus(value); return *this;} /** *

The progress status of the export task. The status can be one of the * following:

  • CANCELED

  • * CANCELING

  • COMPLETE

  • *

    FAILED

  • IN_PROGRESS

  • *
  • STARTING

*/ inline ExportTask& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;} /** *

The progress status of the export task. The status can be one of the * following:

  • CANCELED

  • * CANCELING

  • COMPLETE

  • *

    FAILED

  • IN_PROGRESS

  • *
  • STARTING

*/ inline ExportTask& WithStatus(const char* value) { SetStatus(value); return *this;} /** *

The progress of the snapshot or cluster export task as a percentage.

*/ inline int GetPercentProgress() const{ return m_percentProgress; } /** *

The progress of the snapshot or cluster export task as a percentage.

*/ inline bool PercentProgressHasBeenSet() const { return m_percentProgressHasBeenSet; } /** *

The progress of the snapshot or cluster export task as a percentage.

*/ inline void SetPercentProgress(int value) { m_percentProgressHasBeenSet = true; m_percentProgress = value; } /** *

The progress of the snapshot or cluster export task as a percentage.

*/ inline ExportTask& WithPercentProgress(int value) { SetPercentProgress(value); return *this;} /** *

The total amount of data exported, in gigabytes.

*/ inline int GetTotalExtractedDataInGB() const{ return m_totalExtractedDataInGB; } /** *

The total amount of data exported, in gigabytes.

*/ inline bool TotalExtractedDataInGBHasBeenSet() const { return m_totalExtractedDataInGBHasBeenSet; } /** *

The total amount of data exported, in gigabytes.

*/ inline void SetTotalExtractedDataInGB(int value) { m_totalExtractedDataInGBHasBeenSet = true; m_totalExtractedDataInGB = value; } /** *

The total amount of data exported, in gigabytes.

*/ inline ExportTask& WithTotalExtractedDataInGB(int value) { SetTotalExtractedDataInGB(value); return *this;} /** *

The reason the export failed, if it failed.

*/ inline const Aws::String& GetFailureCause() const{ return m_failureCause; } /** *

The reason the export failed, if it failed.

*/ inline bool FailureCauseHasBeenSet() const { return m_failureCauseHasBeenSet; } /** *

The reason the export failed, if it failed.

*/ inline void SetFailureCause(const Aws::String& value) { m_failureCauseHasBeenSet = true; m_failureCause = value; } /** *

The reason the export failed, if it failed.

*/ inline void SetFailureCause(Aws::String&& value) { m_failureCauseHasBeenSet = true; m_failureCause = std::move(value); } /** *

The reason the export failed, if it failed.

*/ inline void SetFailureCause(const char* value) { m_failureCauseHasBeenSet = true; m_failureCause.assign(value); } /** *

The reason the export failed, if it failed.

*/ inline ExportTask& WithFailureCause(const Aws::String& value) { SetFailureCause(value); return *this;} /** *

The reason the export failed, if it failed.

*/ inline ExportTask& WithFailureCause(Aws::String&& value) { SetFailureCause(std::move(value)); return *this;} /** *

The reason the export failed, if it failed.

*/ inline ExportTask& WithFailureCause(const char* value) { SetFailureCause(value); return *this;} /** *

A warning about the snapshot or cluster export task.

*/ inline const Aws::String& GetWarningMessage() const{ return m_warningMessage; } /** *

A warning about the snapshot or cluster export task.

*/ inline bool WarningMessageHasBeenSet() const { return m_warningMessageHasBeenSet; } /** *

A warning about the snapshot or cluster export task.

*/ inline void SetWarningMessage(const Aws::String& value) { m_warningMessageHasBeenSet = true; m_warningMessage = value; } /** *

A warning about the snapshot or cluster export task.

*/ inline void SetWarningMessage(Aws::String&& value) { m_warningMessageHasBeenSet = true; m_warningMessage = std::move(value); } /** *

A warning about the snapshot or cluster export task.

*/ inline void SetWarningMessage(const char* value) { m_warningMessageHasBeenSet = true; m_warningMessage.assign(value); } /** *

A warning about the snapshot or cluster export task.

*/ inline ExportTask& WithWarningMessage(const Aws::String& value) { SetWarningMessage(value); return *this;} /** *

A warning about the snapshot or cluster export task.

*/ inline ExportTask& WithWarningMessage(Aws::String&& value) { SetWarningMessage(std::move(value)); return *this;} /** *

A warning about the snapshot or cluster export task.

*/ inline ExportTask& WithWarningMessage(const char* value) { SetWarningMessage(value); return *this;} /** *

The type of source for the export.

*/ inline const ExportSourceType& GetSourceType() const{ return m_sourceType; } /** *

The type of source for the export.

*/ inline bool SourceTypeHasBeenSet() const { return m_sourceTypeHasBeenSet; } /** *

The type of source for the export.

*/ inline void SetSourceType(const ExportSourceType& value) { m_sourceTypeHasBeenSet = true; m_sourceType = value; } /** *

The type of source for the export.

*/ inline void SetSourceType(ExportSourceType&& value) { m_sourceTypeHasBeenSet = true; m_sourceType = std::move(value); } /** *

The type of source for the export.

*/ inline ExportTask& WithSourceType(const ExportSourceType& value) { SetSourceType(value); return *this;} /** *

The type of source for the export.

*/ inline ExportTask& WithSourceType(ExportSourceType&& value) { SetSourceType(std::move(value)); return *this;} inline const ResponseMetadata& GetResponseMetadata() const{ return m_responseMetadata; } inline void SetResponseMetadata(const ResponseMetadata& value) { m_responseMetadata = value; } inline void SetResponseMetadata(ResponseMetadata&& value) { m_responseMetadata = std::move(value); } inline ExportTask& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;} inline ExportTask& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;} private: Aws::String m_exportTaskIdentifier; bool m_exportTaskIdentifierHasBeenSet = false; Aws::String m_sourceArn; bool m_sourceArnHasBeenSet = false; Aws::Vector m_exportOnly; bool m_exportOnlyHasBeenSet = false; Aws::Utils::DateTime m_snapshotTime; bool m_snapshotTimeHasBeenSet = false; Aws::Utils::DateTime m_taskStartTime; bool m_taskStartTimeHasBeenSet = false; Aws::Utils::DateTime m_taskEndTime; bool m_taskEndTimeHasBeenSet = false; Aws::String m_s3Bucket; bool m_s3BucketHasBeenSet = false; Aws::String m_s3Prefix; bool m_s3PrefixHasBeenSet = false; Aws::String m_iamRoleArn; bool m_iamRoleArnHasBeenSet = false; Aws::String m_kmsKeyId; bool m_kmsKeyIdHasBeenSet = false; Aws::String m_status; bool m_statusHasBeenSet = false; int m_percentProgress; bool m_percentProgressHasBeenSet = false; int m_totalExtractedDataInGB; bool m_totalExtractedDataInGBHasBeenSet = false; Aws::String m_failureCause; bool m_failureCauseHasBeenSet = false; Aws::String m_warningMessage; bool m_warningMessageHasBeenSet = false; ExportSourceType m_sourceType; bool m_sourceTypeHasBeenSet = false; ResponseMetadata m_responseMetadata; }; } // namespace Model } // namespace RDS } // namespace Aws