/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.dynamodbv2.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** * * @see AWS * API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class ExportTableToPointInTimeRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *

* The Amazon Resource Name (ARN) associated with the table to export. *

*/ private String tableArn; /** *

* Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. The table * export will be a snapshot of the table's state at this point in time. *

*/ private java.util.Date exportTime; /** *

* Providing a ClientToken makes the call to ExportTableToPointInTimeInput idempotent, * meaning that multiple identical calls have the same effect as one single call. *

*

* A client token is valid for 8 hours after the first request that uses it is completed. After 8 hours, any request * with the same client token is treated as a new request. Do not resubmit the same request with the same client * token for more than 8 hours, or the result might not be idempotent. *

*

* If you submit a request with the same client token but a change in other parameters within the 8-hour idempotency * window, DynamoDB returns an ImportConflictException. *

*/ private String clientToken; /** *

* The name of the Amazon S3 bucket to export the snapshot to. *

*/ private String s3Bucket; /** *

* The ID of the Amazon Web Services account that owns the bucket the export will be stored in. *

*/ private String s3BucketOwner; /** *

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

*/ private String s3Prefix; /** *

* Type of encryption used on the bucket where export data will be stored. Valid values for * S3SseAlgorithm are: *

* */ private String s3SseAlgorithm; /** *

* The ID of the KMS managed key used to encrypt the S3 bucket where export data will be stored (if applicable). *

*/ private String s3SseKmsKeyId; /** *

* The format for the exported data. Valid values for ExportFormat are DYNAMODB_JSON or * ION. *

*/ private String exportFormat; /** *

* The Amazon Resource Name (ARN) associated with the table to export. *

* * @param tableArn * The Amazon Resource Name (ARN) associated with the table to export. */ public void setTableArn(String tableArn) { this.tableArn = tableArn; } /** *

* The Amazon Resource Name (ARN) associated with the table to export. *

* * @return The Amazon Resource Name (ARN) associated with the table to export. */ public String getTableArn() { return this.tableArn; } /** *

* The Amazon Resource Name (ARN) associated with the table to export. *

* * @param tableArn * The Amazon Resource Name (ARN) associated with the table to export. * @return Returns a reference to this object so that method calls can be chained together. */ public ExportTableToPointInTimeRequest withTableArn(String tableArn) { setTableArn(tableArn); return this; } /** *

* Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. The table * export will be a snapshot of the table's state at this point in time. *

* * @param exportTime * Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. The * table export will be a snapshot of the table's state at this point in time. */ public void setExportTime(java.util.Date exportTime) { this.exportTime = exportTime; } /** *

* Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. The table * export will be a snapshot of the table's state at this point in time. *

* * @return Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. * The table export will be a snapshot of the table's state at this point in time. */ public java.util.Date getExportTime() { return this.exportTime; } /** *

* Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. The table * export will be a snapshot of the table's state at this point in time. *

* * @param exportTime * Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. The * table export will be a snapshot of the table's state at this point in time. * @return Returns a reference to this object so that method calls can be chained together. */ public ExportTableToPointInTimeRequest withExportTime(java.util.Date exportTime) { setExportTime(exportTime); return this; } /** *

* Providing a ClientToken makes the call to ExportTableToPointInTimeInput idempotent, * meaning that multiple identical calls have the same effect as one single call. *

*

* A client token is valid for 8 hours after the first request that uses it is completed. After 8 hours, any request * with the same client token is treated as a new request. Do not resubmit the same request with the same client * token for more than 8 hours, or the result might not be idempotent. *

*

* If you submit a request with the same client token but a change in other parameters within the 8-hour idempotency * window, DynamoDB returns an ImportConflictException. *

* * @param clientToken * Providing a ClientToken makes the call to ExportTableToPointInTimeInput * idempotent, meaning that multiple identical calls have the same effect as one single call.

*

* A client token is valid for 8 hours after the first request that uses it is completed. After 8 hours, any * request with the same client token is treated as a new request. Do not resubmit the same request with the * same client token for more than 8 hours, or the result might not be idempotent. *

*

* If you submit a request with the same client token but a change in other parameters within the 8-hour * idempotency window, DynamoDB returns an ImportConflictException. */ public void setClientToken(String clientToken) { this.clientToken = clientToken; } /** *

* Providing a ClientToken makes the call to ExportTableToPointInTimeInput idempotent, * meaning that multiple identical calls have the same effect as one single call. *

*

* A client token is valid for 8 hours after the first request that uses it is completed. After 8 hours, any request * with the same client token is treated as a new request. Do not resubmit the same request with the same client * token for more than 8 hours, or the result might not be idempotent. *

*

* If you submit a request with the same client token but a change in other parameters within the 8-hour idempotency * window, DynamoDB returns an ImportConflictException. *

* * @return Providing a ClientToken makes the call to ExportTableToPointInTimeInput * idempotent, meaning that multiple identical calls have the same effect as one single call.

*

* A client token is valid for 8 hours after the first request that uses it is completed. After 8 hours, any * request with the same client token is treated as a new request. Do not resubmit the same request with the * same client token for more than 8 hours, or the result might not be idempotent. *

*

* If you submit a request with the same client token but a change in other parameters within the 8-hour * idempotency window, DynamoDB returns an ImportConflictException. */ public String getClientToken() { return this.clientToken; } /** *

* Providing a ClientToken makes the call to ExportTableToPointInTimeInput idempotent, * meaning that multiple identical calls have the same effect as one single call. *

*

* A client token is valid for 8 hours after the first request that uses it is completed. After 8 hours, any request * with the same client token is treated as a new request. Do not resubmit the same request with the same client * token for more than 8 hours, or the result might not be idempotent. *

*

* If you submit a request with the same client token but a change in other parameters within the 8-hour idempotency * window, DynamoDB returns an ImportConflictException. *

* * @param clientToken * Providing a ClientToken makes the call to ExportTableToPointInTimeInput * idempotent, meaning that multiple identical calls have the same effect as one single call.

*

* A client token is valid for 8 hours after the first request that uses it is completed. After 8 hours, any * request with the same client token is treated as a new request. Do not resubmit the same request with the * same client token for more than 8 hours, or the result might not be idempotent. *

*

* If you submit a request with the same client token but a change in other parameters within the 8-hour * idempotency window, DynamoDB returns an ImportConflictException. * @return Returns a reference to this object so that method calls can be chained together. */ public ExportTableToPointInTimeRequest withClientToken(String clientToken) { setClientToken(clientToken); return this; } /** *

* The name of the Amazon S3 bucket to export the snapshot to. *

* * @param s3Bucket * The name of the Amazon S3 bucket to export the snapshot to. */ public void setS3Bucket(String s3Bucket) { this.s3Bucket = s3Bucket; } /** *

* The name of the Amazon S3 bucket to export the snapshot to. *

* * @return The name of the Amazon S3 bucket to export the snapshot to. */ public String getS3Bucket() { return this.s3Bucket; } /** *

* The name of the Amazon S3 bucket to export the snapshot to. *

* * @param s3Bucket * The name of the Amazon S3 bucket to export the snapshot to. * @return Returns a reference to this object so that method calls can be chained together. */ public ExportTableToPointInTimeRequest withS3Bucket(String s3Bucket) { setS3Bucket(s3Bucket); return this; } /** *

* The ID of the Amazon Web Services account that owns the bucket the export will be stored in. *

* * @param s3BucketOwner * The ID of the Amazon Web Services account that owns the bucket the export will be stored in. */ public void setS3BucketOwner(String s3BucketOwner) { this.s3BucketOwner = s3BucketOwner; } /** *

* The ID of the Amazon Web Services account that owns the bucket the export will be stored in. *

* * @return The ID of the Amazon Web Services account that owns the bucket the export will be stored in. */ public String getS3BucketOwner() { return this.s3BucketOwner; } /** *

* The ID of the Amazon Web Services account that owns the bucket the export will be stored in. *

* * @param s3BucketOwner * The ID of the Amazon Web Services account that owns the bucket the export will be stored in. * @return Returns a reference to this object so that method calls can be chained together. */ public ExportTableToPointInTimeRequest withS3BucketOwner(String s3BucketOwner) { setS3BucketOwner(s3BucketOwner); return this; } /** *

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

* * @param s3Prefix * The Amazon S3 bucket prefix to use as the file name and path of the exported snapshot. */ public void setS3Prefix(String s3Prefix) { this.s3Prefix = s3Prefix; } /** *

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

* * @return The Amazon S3 bucket prefix to use as the file name and path of the exported snapshot. */ public String getS3Prefix() { return this.s3Prefix; } /** *

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

* * @param s3Prefix * The Amazon S3 bucket prefix to use as the file name and path of the exported snapshot. * @return Returns a reference to this object so that method calls can be chained together. */ public ExportTableToPointInTimeRequest withS3Prefix(String s3Prefix) { setS3Prefix(s3Prefix); return this; } /** *

* Type of encryption used on the bucket where export data will be stored. Valid values for * S3SseAlgorithm are: *

* * * @param s3SseAlgorithm * Type of encryption used on the bucket where export data will be stored. Valid values for * S3SseAlgorithm are:

*