Class CopyImageRequest
- java.lang.Object
-
- software.amazon.awssdk.core.SdkRequest
-
- software.amazon.awssdk.awscore.AwsRequest
-
- software.amazon.awssdk.services.ec2.model.Ec2Request
-
- software.amazon.awssdk.services.ec2.model.CopyImageRequest
-
- All Implemented Interfaces:
SdkPojo
,ToCopyableBuilder<CopyImageRequest.Builder,CopyImageRequest>
@Generated("software.amazon.awssdk:codegen") public final class CopyImageRequest extends Ec2Request implements ToCopyableBuilder<CopyImageRequest.Builder,CopyImageRequest>
Contains the parameters for CopyImage.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
CopyImageRequest.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static CopyImageRequest.Builder
builder()
String
clientToken()
Unique, case-sensitive identifier you provide to ensure idempotency of the request.Boolean
copyImageTags()
Indicates whether to include your user-defined AMI tags when copying the AMI.String
description()
A description for the new AMI in the destination Region.String
destinationOutpostArn()
The Amazon Resource Name (ARN) of the Outpost to which to copy the AMI.Boolean
dryRun()
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response.Boolean
encrypted()
Specifies whether the destination snapshots of the copied image should be encrypted.boolean
equals(Object obj)
boolean
equalsBySdkFields(Object obj)
<T> Optional<T>
getValueForField(String fieldName, Class<T> clazz)
int
hashCode()
String
kmsKeyId()
The identifier of the symmetric Key Management Service (KMS) KMS key to use when creating encrypted volumes.String
name()
The name of the new AMI in the destination Region.List<SdkField<?>>
sdkFields()
static Class<? extends CopyImageRequest.Builder>
serializableBuilderClass()
String
sourceImageId()
The ID of the AMI to copy.String
sourceRegion()
The name of the Region that contains the AMI to copy.CopyImageRequest.Builder
toBuilder()
String
toString()
Returns a string representation of this object.-
Methods inherited from class software.amazon.awssdk.awscore.AwsRequest
overrideConfiguration
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
clientToken
public final String clientToken()
Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.
- Returns:
- Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.
-
description
public final String description()
A description for the new AMI in the destination Region.
- Returns:
- A description for the new AMI in the destination Region.
-
encrypted
public final Boolean encrypted()
Specifies whether the destination snapshots of the copied image should be encrypted. You can encrypt a copy of an unencrypted snapshot, but you cannot create an unencrypted copy of an encrypted snapshot. The default KMS key for Amazon EBS is used unless you specify a non-default Key Management Service (KMS) KMS key using
KmsKeyId
. For more information, see Amazon EBS encryption in the Amazon EC2 User Guide.- Returns:
- Specifies whether the destination snapshots of the copied image should be encrypted. You can encrypt a
copy of an unencrypted snapshot, but you cannot create an unencrypted copy of an encrypted snapshot. The
default KMS key for Amazon EBS is used unless you specify a non-default Key Management Service (KMS) KMS
key using
KmsKeyId
. For more information, see Amazon EBS encryption in the Amazon EC2 User Guide.
-
kmsKeyId
public final String kmsKeyId()
The identifier of the symmetric Key Management Service (KMS) KMS key to use when creating encrypted volumes. If this parameter is not specified, your Amazon Web Services managed KMS key for Amazon EBS is used. If you specify a KMS key, you must also set the encrypted state to
true
.You can specify a KMS key using any of the following:
-
Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.
-
Key alias. For example, alias/ExampleAlias.
-
Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab.
-
Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.
Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an identifier that is not valid, the action can appear to complete, but eventually fails.
The specified KMS key must exist in the destination Region.
Amazon EBS does not support asymmetric KMS keys.
- Returns:
- The identifier of the symmetric Key Management Service (KMS) KMS key to use when creating encrypted
volumes. If this parameter is not specified, your Amazon Web Services managed KMS key for Amazon EBS is
used. If you specify a KMS key, you must also set the encrypted state to
true
.You can specify a KMS key using any of the following:
-
Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.
-
Key alias. For example, alias/ExampleAlias.
-
Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab.
-
Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.
Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an identifier that is not valid, the action can appear to complete, but eventually fails.
The specified KMS key must exist in the destination Region.
Amazon EBS does not support asymmetric KMS keys.
-
-
-
name
public final String name()
The name of the new AMI in the destination Region.
- Returns:
- The name of the new AMI in the destination Region.
-
sourceImageId
public final String sourceImageId()
The ID of the AMI to copy.
- Returns:
- The ID of the AMI to copy.
-
sourceRegion
public final String sourceRegion()
The name of the Region that contains the AMI to copy.
- Returns:
- The name of the Region that contains the AMI to copy.
-
destinationOutpostArn
public final String destinationOutpostArn()
The Amazon Resource Name (ARN) of the Outpost to which to copy the AMI. Only specify this parameter when copying an AMI from an Amazon Web Services Region to an Outpost. The AMI must be in the Region of the destination Outpost. You cannot copy an AMI from an Outpost to a Region, from one Outpost to another, or within the same Outpost.
For more information, see Copy AMIs from an Amazon Web Services Region to an Outpost in the Amazon EC2 User Guide.
- Returns:
- The Amazon Resource Name (ARN) of the Outpost to which to copy the AMI. Only specify this parameter when
copying an AMI from an Amazon Web Services Region to an Outpost. The AMI must be in the Region of the
destination Outpost. You cannot copy an AMI from an Outpost to a Region, from one Outpost to another, or
within the same Outpost.
For more information, see Copy AMIs from an Amazon Web Services Region to an Outpost in the Amazon EC2 User Guide.
-
dryRun
public final Boolean dryRun()
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is
DryRunOperation
. Otherwise, it isUnauthorizedOperation
.- Returns:
- Checks whether you have the required permissions for the action, without actually making the request, and
provides an error response. If you have the required permissions, the error response is
DryRunOperation
. Otherwise, it isUnauthorizedOperation
.
-
copyImageTags
public final Boolean copyImageTags()
Indicates whether to include your user-defined AMI tags when copying the AMI.
The following tags will not be copied:
-
System tags (prefixed with
aws:
) -
For public and shared AMIs, user-defined tags that are attached by other Amazon Web Services accounts
Default: Your user-defined AMI tags are not copied.
- Returns:
- Indicates whether to include your user-defined AMI tags when copying the AMI.
The following tags will not be copied:
-
System tags (prefixed with
aws:
) -
For public and shared AMIs, user-defined tags that are attached by other Amazon Web Services accounts
Default: Your user-defined AMI tags are not copied.
-
-
-
toBuilder
public CopyImageRequest.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<CopyImageRequest.Builder,CopyImageRequest>
- Specified by:
toBuilder
in classEc2Request
-
builder
public static CopyImageRequest.Builder builder()
-
serializableBuilderClass
public static Class<? extends CopyImageRequest.Builder> serializableBuilderClass()
-
hashCode
public final int hashCode()
- Overrides:
hashCode
in classAwsRequest
-
equals
public final boolean equals(Object obj)
- Overrides:
equals
in classAwsRequest
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFields
in interfaceSdkPojo
-
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.
-
getValueForField
public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
- Overrides:
getValueForField
in classSdkRequest
-
-