Class StartExportTaskRequest

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<StartExportTaskRequest.Builder,StartExportTaskRequest>

@Generated("software.amazon.awssdk:codegen") public final class StartExportTaskRequest extends RdsRequest implements ToCopyableBuilder<StartExportTaskRequest.Builder,StartExportTaskRequest>
  • Method Details

    • exportTaskIdentifier

      public final String exportTaskIdentifier()

      A unique identifier for the export task. This ID isn't an identifier for the Amazon S3 bucket where the data is to be exported.

      Returns:
      A unique identifier for the export task. This ID isn't an identifier for the Amazon S3 bucket where the data is to be exported.
    • sourceArn

      public final String sourceArn()

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

      Returns:
      The Amazon Resource Name (ARN) of the snapshot or cluster to export to Amazon S3.
    • s3BucketName

      public final String s3BucketName()

      The name of the Amazon S3 bucket to export the snapshot or cluster data to.

      Returns:
      The name of the Amazon S3 bucket to export the snapshot or cluster data to.
    • iamRoleArn

      public final String iamRoleArn()

      The name of the IAM role to use for writing to the Amazon S3 bucket when exporting a snapshot or cluster.

      In the IAM policy attached to your IAM role, include the following required actions to allow the transfer of files from Amazon RDS or Amazon Aurora to an S3 bucket:

      • s3:PutObject*

      • s3:GetObject*

      • s3:ListBucket

      • s3:DeleteObject*

      • s3:GetBucketLocation

      In the policy, include the resources to identify the S3 bucket and objects in the bucket. The following list of resources shows the Amazon Resource Name (ARN) format for accessing S3:

      • arn:aws:s3:::your-s3-bucket

      • arn:aws:s3:::your-s3-bucket/*

      Returns:
      The name of the IAM role to use for writing to the Amazon S3 bucket when exporting a snapshot or cluster.

      In the IAM policy attached to your IAM role, include the following required actions to allow the transfer of files from Amazon RDS or Amazon Aurora to an S3 bucket:

      • s3:PutObject*

      • s3:GetObject*

      • s3:ListBucket

      • s3:DeleteObject*

      • s3:GetBucketLocation

      In the policy, include the resources to identify the S3 bucket and objects in the bucket. The following list of resources shows the Amazon Resource Name (ARN) format for accessing S3:

      • arn:aws:s3:::your-s3-bucket

      • arn:aws:s3:::your-s3-bucket/*

    • kmsKeyId

      public final String kmsKeyId()

      The ID of the Amazon Web Services KMS key to use to encrypt the data exported to Amazon S3. The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. The caller of this operation must be authorized to run the following operations. These can be set in the Amazon Web Services KMS key policy:

      • kms:Encrypt

      • kms:Decrypt

      • kms:GenerateDataKey

      • kms:GenerateDataKeyWithoutPlaintext

      • kms:ReEncryptFrom

      • kms:ReEncryptTo

      • kms:CreateGrant

      • kms:DescribeKey

      • kms:RetireGrant

      Returns:
      The ID of the Amazon Web Services KMS key to use to encrypt the data exported to Amazon S3. The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. The caller of this operation must be authorized to run the following operations. These can be set in the Amazon Web Services KMS key policy:

      • kms:Encrypt

      • kms:Decrypt

      • kms:GenerateDataKey

      • kms:GenerateDataKeyWithoutPlaintext

      • kms:ReEncryptFrom

      • kms:ReEncryptTo

      • kms:CreateGrant

      • kms:DescribeKey

      • kms:RetireGrant

    • s3Prefix

      public final String s3Prefix()

      The Amazon S3 bucket prefix to use as the file name and path of the exported data.

      Returns:
      The Amazon S3 bucket prefix to use as the file name and path of the exported data.
    • hasExportOnly

      public final boolean hasExportOnly()
      For responses, this returns true if the service returned a value for the ExportOnly property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • exportOnly

      public final List<String> exportOnly()

      The data to be exported from the snapshot or cluster. If this parameter isn't provided, all of the data is exported.

      Valid Values:

      • 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.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasExportOnly() method.

      Returns:
      The data to be exported from the snapshot or cluster. If this parameter isn't provided, all of the data is exported.

      Valid Values:

      • 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.

    • toBuilder

      public StartExportTaskRequest.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<StartExportTaskRequest.Builder,StartExportTaskRequest>
      Specified by:
      toBuilder in class RdsRequest
      Returns:
      a builder for type T
    • builder

      public static StartExportTaskRequest.Builder builder()
    • serializableBuilderClass

      public static Class<? extends StartExportTaskRequest.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class AwsRequest
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class AwsRequest
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
      Description copied from class: SdkRequest
      Used to retrieve the value of a field from any class that extends SdkRequest. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkRequest
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.