All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.aliyun.sdk.service.ecs20140526.models.CopyImageRequest Maven / Gradle / Ivy

There is a newer version: 5.0.29
Show newest version
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sdk.service.ecs20140526.models;

import com.aliyun.core.annotation.*;
import darabonba.core.RequestModel;
import darabonba.core.TeaModel;
import com.aliyun.sdk.gateway.pop.models.*;

/**
 * {@link CopyImageRequest} extends {@link RequestModel}
 *
 * 

CopyImageRequest

*/ public class CopyImageRequest extends Request { @Host @NameInMap("SourceRegionId") private String sourceRegionId; @Query @NameInMap("DestinationDescription") private String destinationDescription; @Query @NameInMap("DestinationImageName") private String destinationImageName; @Query @NameInMap("DestinationRegionId") private String destinationRegionId; @Query @NameInMap("EncryptAlgorithm") private String encryptAlgorithm; @Query @NameInMap("Encrypted") private Boolean encrypted; @Query @NameInMap("ImageId") @Validation(required = true) private String imageId; @Query @NameInMap("KMSKeyId") private String KMSKeyId; @Query @NameInMap("OwnerAccount") private String ownerAccount; @Query @NameInMap("OwnerId") private Long ownerId; @Query @NameInMap("RegionId") @Validation(required = true) private String regionId; @Query @NameInMap("ResourceGroupId") private String resourceGroupId; @Query @NameInMap("ResourceOwnerAccount") private String resourceOwnerAccount; @Query @NameInMap("ResourceOwnerId") private Long resourceOwnerId; @Query @NameInMap("Tag") private java.util.List < Tag> tag; private CopyImageRequest(Builder builder) { super(builder); this.sourceRegionId = builder.sourceRegionId; this.destinationDescription = builder.destinationDescription; this.destinationImageName = builder.destinationImageName; this.destinationRegionId = builder.destinationRegionId; this.encryptAlgorithm = builder.encryptAlgorithm; this.encrypted = builder.encrypted; this.imageId = builder.imageId; this.KMSKeyId = builder.KMSKeyId; this.ownerAccount = builder.ownerAccount; this.ownerId = builder.ownerId; this.regionId = builder.regionId; this.resourceGroupId = builder.resourceGroupId; this.resourceOwnerAccount = builder.resourceOwnerAccount; this.resourceOwnerId = builder.resourceOwnerId; this.tag = builder.tag; } public static Builder builder() { return new Builder(); } public static CopyImageRequest create() { return builder().build(); } @Override public Builder toBuilder() { return new Builder(this); } /** * @return sourceRegionId */ public String getSourceRegionId() { return this.sourceRegionId; } /** * @return destinationDescription */ public String getDestinationDescription() { return this.destinationDescription; } /** * @return destinationImageName */ public String getDestinationImageName() { return this.destinationImageName; } /** * @return destinationRegionId */ public String getDestinationRegionId() { return this.destinationRegionId; } /** * @return encryptAlgorithm */ public String getEncryptAlgorithm() { return this.encryptAlgorithm; } /** * @return encrypted */ public Boolean getEncrypted() { return this.encrypted; } /** * @return imageId */ public String getImageId() { return this.imageId; } /** * @return KMSKeyId */ public String getKMSKeyId() { return this.KMSKeyId; } /** * @return ownerAccount */ public String getOwnerAccount() { return this.ownerAccount; } /** * @return ownerId */ public Long getOwnerId() { return this.ownerId; } /** * @return regionId */ public String getRegionId() { return this.regionId; } /** * @return resourceGroupId */ public String getResourceGroupId() { return this.resourceGroupId; } /** * @return resourceOwnerAccount */ public String getResourceOwnerAccount() { return this.resourceOwnerAccount; } /** * @return resourceOwnerId */ public Long getResourceOwnerId() { return this.resourceOwnerId; } /** * @return tag */ public java.util.List < Tag> getTag() { return this.tag; } public static final class Builder extends Request.Builder { private String sourceRegionId; private String destinationDescription; private String destinationImageName; private String destinationRegionId; private String encryptAlgorithm; private Boolean encrypted; private String imageId; private String KMSKeyId; private String ownerAccount; private Long ownerId; private String regionId; private String resourceGroupId; private String resourceOwnerAccount; private Long resourceOwnerId; private java.util.List < Tag> tag; private Builder() { super(); } private Builder(CopyImageRequest request) { super(request); this.sourceRegionId = request.sourceRegionId; this.destinationDescription = request.destinationDescription; this.destinationImageName = request.destinationImageName; this.destinationRegionId = request.destinationRegionId; this.encryptAlgorithm = request.encryptAlgorithm; this.encrypted = request.encrypted; this.imageId = request.imageId; this.KMSKeyId = request.KMSKeyId; this.ownerAccount = request.ownerAccount; this.ownerId = request.ownerId; this.regionId = request.regionId; this.resourceGroupId = request.resourceGroupId; this.resourceOwnerAccount = request.resourceOwnerAccount; this.resourceOwnerId = request.resourceOwnerId; this.tag = request.tag; } /** * SourceRegionId. */ public Builder sourceRegionId(String sourceRegionId) { this.putHostParameter("SourceRegionId", sourceRegionId); this.sourceRegionId = sourceRegionId; return this; } /** * The description of the image copy. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`. */ public Builder destinationDescription(String destinationDescription) { this.putQueryParameter("DestinationDescription", destinationDescription); this.destinationDescription = destinationDescription; return this; } /** * The name of the image copy. The name must be 2 to 128 characters in length. The name must start with a letter and cannot start with `acs:` or `aliyun`. The name cannot contain `http://` or `https://`. The name can contain letters, digits, periods (.), colons (:), underscores (\_), and hyphens (-). */ public Builder destinationImageName(String destinationImageName) { this.putQueryParameter("DestinationImageName", destinationImageName); this.destinationImageName = destinationImageName; return this; } /** * The ID of the destination region to which the source custom image is copied. */ public Builder destinationRegionId(String destinationRegionId) { this.putQueryParameter("DestinationRegionId", destinationRegionId); this.destinationRegionId = destinationRegionId; return this; } /** * > This parameter is unavailable. */ public Builder encryptAlgorithm(String encryptAlgorithm) { this.putQueryParameter("EncryptAlgorithm", encryptAlgorithm); this.encryptAlgorithm = encryptAlgorithm; return this; } /** * Specifies whether to encrypt the image copy. *

* * Default value: false. */ public Builder encrypted(Boolean encrypted) { this.putQueryParameter("Encrypted", encrypted); this.encrypted = encrypted; return this; } /** * The ID of the source custom image. */ public Builder imageId(String imageId) { this.putQueryParameter("ImageId", imageId); this.imageId = imageId; return this; } /** * The ID of the key used to encrypt the image copy. */ public Builder KMSKeyId(String KMSKeyId) { this.putQueryParameter("KMSKeyId", KMSKeyId); this.KMSKeyId = KMSKeyId; return this; } /** * OwnerAccount. */ public Builder ownerAccount(String ownerAccount) { this.putQueryParameter("OwnerAccount", ownerAccount); this.ownerAccount = ownerAccount; return this; } /** * OwnerId. */ public Builder ownerId(Long ownerId) { this.putQueryParameter("OwnerId", ownerId); this.ownerId = ownerId; return this; } /** * The region ID of the source custom image. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list. */ public Builder regionId(String regionId) { this.putQueryParameter("RegionId", regionId); this.regionId = regionId; return this; } /** * The ID of the resource group to which the image copy belongs. If you do not specify this parameter, the image copy belongs to the default resource group. *

* * > If you call the CopyImage operation as a Resource Access Management (RAM) user who is not authorized to manage the default resource group and do not specify the `ResourceGroupId` parameter, the `Forbidden: User not authorized to operate on the specified resource` error message is returned. You must specify the ID of a resource group that the RAM user is authorized to manage or authorize the RAM user to manage the default resource group before you call the CreateImage operation again. */ public Builder resourceGroupId(String resourceGroupId) { this.putQueryParameter("ResourceGroupId", resourceGroupId); this.resourceGroupId = resourceGroupId; return this; } /** * ResourceOwnerAccount. */ public Builder resourceOwnerAccount(String resourceOwnerAccount) { this.putQueryParameter("ResourceOwnerAccount", resourceOwnerAccount); this.resourceOwnerAccount = resourceOwnerAccount; return this; } /** * ResourceOwnerId. */ public Builder resourceOwnerId(Long resourceOwnerId) { this.putQueryParameter("ResourceOwnerId", resourceOwnerId); this.resourceOwnerId = resourceOwnerId; return this; } /** * The list of tags. */ public Builder tag(java.util.List < Tag> tag) { this.putQueryParameter("Tag", tag); this.tag = tag; return this; } @Override public CopyImageRequest build() { return new CopyImageRequest(this); } } public static class Tag extends TeaModel { @NameInMap("Key") private String key; @NameInMap("Value") private String value; private Tag(Builder builder) { this.key = builder.key; this.value = builder.value; } public static Builder builder() { return new Builder(); } public static Tag create() { return builder().build(); } /** * @return key */ public String getKey() { return this.key; } /** * @return value */ public String getValue() { return this.value; } public static final class Builder { private String key; private String value; /** * The key of tag N of the image copy. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot contain `http://` or `https://`. The tag key cannot start with `aliyun` or `acs:`. */ public Builder key(String key) { this.key = key; return this; } /** * The value of tag N of the image copy. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot start with `acs:`. It cannot contain `http://` or `https://`. */ public Builder value(String value) { this.value = value; return this; } public Tag build() { return new Tag(this); } } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy