@Generated(value="software.amazon.awssdk:codegen") public final class CopySnapshotRequest extends Ec2Request implements ToCopyableBuilder<CopySnapshotRequest.Builder,CopySnapshotRequest>
Contains the parameters for CopySnapshot.
Modifier and Type | Class and Description |
---|---|
static interface |
CopySnapshotRequest.Builder |
Modifier and Type | Method and Description |
---|---|
static CopySnapshotRequest.Builder |
builder() |
String |
description()
A description for the EBS snapshot.
|
String |
destinationRegion()
The destination region to use in the
PresignedUrl parameter of a snapshot copy operation. |
Boolean |
encrypted()
Specifies whether the destination snapshot should be encrypted.
|
boolean |
equals(Object obj) |
<T> Optional<T> |
getValueForField(String fieldName,
Class<T> clazz)
Used to retrieve the value of a field from any class that extends
SdkRequest . |
int |
hashCode() |
String |
kmsKeyId()
The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when creating the snapshot copy.
|
String |
presignedUrl()
The pre-signed URL that facilitates copying an encrypted snapshot.
|
static Class<? extends CopySnapshotRequest.Builder> |
serializableBuilderClass() |
String |
sourceRegion()
The ID of the region that contains the snapshot to be copied.
|
String |
sourceSnapshotId()
The ID of the EBS snapshot to copy.
|
CopySnapshotRequest.Builder |
toBuilder()
Take this object and create a builder that contains all of the current property values of this object.
|
String |
toString() |
overrideConfiguration
copy
public String description()
A description for the EBS snapshot.
public String destinationRegion()
The destination region to use in the PresignedUrl
parameter of a snapshot copy operation. This
parameter is only valid for specifying the destination region in a PresignedUrl
parameter, where it
is required.
CopySnapshot
sends the snapshot copy to the regional endpoint that you send the HTTP request to,
such as ec2.us-east-1.amazonaws.com
(in the AWS CLI, this is specified with the
--region
parameter or the default region in your AWS configuration file).
PresignedUrl
parameter of a snapshot copy operation.
This parameter is only valid for specifying the destination region in a PresignedUrl
parameter, where it is required.
CopySnapshot
sends the snapshot copy to the regional endpoint that you send the HTTP request
to, such as ec2.us-east-1.amazonaws.com
(in the AWS CLI, this is specified with the
--region
parameter or the default region in your AWS configuration file).
public Boolean encrypted()
Specifies whether the destination snapshot should be encrypted. You can encrypt a copy of an unencrypted snapshot
using this flag, but you cannot use it to create an unencrypted copy from an encrypted snapshot. Your default CMK
for EBS is used unless a non-default AWS Key Management Service (AWS KMS) CMK is specified with
KmsKeyId
. For more information, see Amazon EBS Encryption in the
Amazon Elastic Compute Cloud User Guide.
KmsKeyId
. For more information, see Amazon EBS Encryption in
the Amazon Elastic Compute Cloud User Guide.public String kmsKeyId()
The full ARN of the AWS Key Management Service (AWS KMS) CMK to use when creating the snapshot copy. This
parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default
CMK for EBS is used. The ARN contains the arn:aws:kms
namespace, followed by the region of the CMK,
the AWS account ID of the CMK owner, the key
namespace, and then the CMK ID. For example,
arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. The specified
CMK must exist in the region that the snapshot is being copied to. If a KmsKeyId
is specified, the
Encrypted
flag must also be set.
arn:aws:kms
namespace, followed by the
region of the CMK, the AWS account ID of the CMK owner, the key
namespace, and then the CMK
ID. For example,
arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. The
specified CMK must exist in the region that the snapshot is being copied to. If a KmsKeyId
is specified, the Encrypted
flag must also be set.public String presignedUrl()
The pre-signed URL that facilitates copying an encrypted snapshot. This parameter is only required when copying
an encrypted snapshot with the Amazon EC2 Query API; it is available as an optional parameter in all other cases.
The PresignedUrl
should use the snapshot source endpoint, the CopySnapshot
action, and
include the SourceRegion
, SourceSnapshotId
, and DestinationRegion
parameters. The PresignedUrl
must be signed using AWS Signature Version 4. Because EBS snapshots are
stored in Amazon S3, the signing algorithm for this parameter uses the same logic that is described in Authenticating Requests by
Using Query Parameters (AWS Signature Version 4) in the Amazon Simple Storage Service API Reference.
An invalid or improperly signed PresignedUrl
will cause the copy operation to fail asynchronously,
and the snapshot will move to an error
state.
PresignedUrl
should use the snapshot source endpoint, the
CopySnapshot
action, and include the SourceRegion
,
SourceSnapshotId
, and DestinationRegion
parameters. The
PresignedUrl
must be signed using AWS Signature Version 4. Because EBS snapshots are stored
in Amazon S3, the signing algorithm for this parameter uses the same logic that is described in Authenticating
Requests by Using Query Parameters (AWS Signature Version 4) in the Amazon Simple Storage Service
API Reference. An invalid or improperly signed PresignedUrl
will cause the copy
operation to fail asynchronously, and the snapshot will move to an error
state.public String sourceRegion()
The ID of the region that contains the snapshot to be copied.
public String sourceSnapshotId()
The ID of the EBS snapshot to copy.
public CopySnapshotRequest.Builder toBuilder()
ToCopyableBuilder
toBuilder
in interface ToCopyableBuilder<CopySnapshotRequest.Builder,CopySnapshotRequest>
toBuilder
in class Ec2Request
public static CopySnapshotRequest.Builder builder()
public static Class<? extends CopySnapshotRequest.Builder> serializableBuilderClass()
public <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
SdkRequest
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.getValueForField
in class SdkRequest
fieldName
- The name of the member to be retrieved.clazz
- The class to cast the returned object to.Copyright © 2017 Amazon Web Services, Inc. All Rights Reserved.