com.aliyun.sdk.service.ecs20140526.models.ModifyInstanceVpcAttributeRequest Maven / Gradle / Ivy
Show all versions of alibabacloud-ecs20140526 Show documentation
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sdk.service.ecs20140526.models;
import darabonba.core.RequestModel;
import darabonba.core.TeaModel;
import com.aliyun.sdk.gateway.pop.models.*;
/**
* {@link ModifyInstanceVpcAttributeRequest} extends {@link RequestModel}
*
* ModifyInstanceVpcAttributeRequest
*/
public class ModifyInstanceVpcAttributeRequest extends Request {
@com.aliyun.core.annotation.Host
@com.aliyun.core.annotation.NameInMap("SourceRegionId")
private String sourceRegionId;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("InstanceId")
@com.aliyun.core.annotation.Validation(required = true)
private String instanceId;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("OwnerAccount")
private String ownerAccount;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("OwnerId")
private Long ownerId;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("PrivateIpAddress")
private String privateIpAddress;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("ResourceOwnerAccount")
private String resourceOwnerAccount;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("ResourceOwnerId")
private Long resourceOwnerId;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("SecurityGroupId")
private java.util.List < String > securityGroupId;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("VSwitchId")
@com.aliyun.core.annotation.Validation(required = true)
private String vSwitchId;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("VpcId")
private String vpcId;
private ModifyInstanceVpcAttributeRequest(Builder builder) {
super(builder);
this.sourceRegionId = builder.sourceRegionId;
this.instanceId = builder.instanceId;
this.ownerAccount = builder.ownerAccount;
this.ownerId = builder.ownerId;
this.privateIpAddress = builder.privateIpAddress;
this.resourceOwnerAccount = builder.resourceOwnerAccount;
this.resourceOwnerId = builder.resourceOwnerId;
this.securityGroupId = builder.securityGroupId;
this.vSwitchId = builder.vSwitchId;
this.vpcId = builder.vpcId;
}
public static Builder builder() {
return new Builder();
}
public static ModifyInstanceVpcAttributeRequest create() {
return builder().build();
}
@Override
public Builder toBuilder() {
return new Builder(this);
}
/**
* @return sourceRegionId
*/
public String getSourceRegionId() {
return this.sourceRegionId;
}
/**
* @return instanceId
*/
public String getInstanceId() {
return this.instanceId;
}
/**
* @return ownerAccount
*/
public String getOwnerAccount() {
return this.ownerAccount;
}
/**
* @return ownerId
*/
public Long getOwnerId() {
return this.ownerId;
}
/**
* @return privateIpAddress
*/
public String getPrivateIpAddress() {
return this.privateIpAddress;
}
/**
* @return resourceOwnerAccount
*/
public String getResourceOwnerAccount() {
return this.resourceOwnerAccount;
}
/**
* @return resourceOwnerId
*/
public Long getResourceOwnerId() {
return this.resourceOwnerId;
}
/**
* @return securityGroupId
*/
public java.util.List < String > getSecurityGroupId() {
return this.securityGroupId;
}
/**
* @return vSwitchId
*/
public String getVSwitchId() {
return this.vSwitchId;
}
/**
* @return vpcId
*/
public String getVpcId() {
return this.vpcId;
}
public static final class Builder extends Request.Builder {
private String sourceRegionId;
private String instanceId;
private String ownerAccount;
private Long ownerId;
private String privateIpAddress;
private String resourceOwnerAccount;
private Long resourceOwnerId;
private java.util.List < String > securityGroupId;
private String vSwitchId;
private String vpcId;
private Builder() {
super();
}
private Builder(ModifyInstanceVpcAttributeRequest request) {
super(request);
this.sourceRegionId = request.sourceRegionId;
this.instanceId = request.instanceId;
this.ownerAccount = request.ownerAccount;
this.ownerId = request.ownerId;
this.privateIpAddress = request.privateIpAddress;
this.resourceOwnerAccount = request.resourceOwnerAccount;
this.resourceOwnerId = request.resourceOwnerId;
this.securityGroupId = request.securityGroupId;
this.vSwitchId = request.vSwitchId;
this.vpcId = request.vpcId;
}
/**
* SourceRegionId.
*/
public Builder sourceRegionId(String sourceRegionId) {
this.putHostParameter("SourceRegionId", sourceRegionId);
this.sourceRegionId = sourceRegionId;
return this;
}
/**
* The ID of the instance.
*/
public Builder instanceId(String instanceId) {
this.putQueryParameter("InstanceId", instanceId);
this.instanceId = instanceId;
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 new private IP address of the instance.
*
*
* > The value of `PrivateIpAddress` depends on the value of `VSwitchId`. The specified IP address must be within the CIDR block of the specified vSwitch.
*
* By default, if this parameter is not specified, a private IP address is randomly assigned from the CIDR block of the specified vSwitch.
*/
public Builder privateIpAddress(String privateIpAddress) {
this.putQueryParameter("PrivateIpAddress", privateIpAddress);
this.privateIpAddress = privateIpAddress;
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 ID of security group N to which the instance belongs after the VPC is changed. This parameter is required only when the `VpcId` parameter is specified.
*
*
* * The specified security groups must be of the same type.
* * You can specify one or more security groups. The valid values of N depend on the maximum number of security groups to which an instance can belong. For more information, see [Limits](~~25412~~).
* * The specified security groups must belong to the VPC specified by the `VpcId` parameter.
*/
public Builder securityGroupId(java.util.List < String > securityGroupId) {
this.putQueryParameter("SecurityGroupId", securityGroupId);
this.securityGroupId = securityGroupId;
return this;
}
/**
* The ID of the vSwitch.
*
*
* * If this parameter is set to the ID of the current vSwitch, the vSwitch of the instance remains unchanged.
* * If this parameter is set to the ID of a different vSwitch and the `VpcId` parameter is not specified, the new vSwitch must belong to the same zone and VPC as the current vSwitch.
* * If the `VpcId` parameter is specified, the vSwitch specified by this parameter must belong to the specified VPC and the same zone as the current vSwitch.
*/
public Builder vSwitchId(String vSwitchId) {
this.putQueryParameter("VSwitchId", vSwitchId);
this.vSwitchId = vSwitchId;
return this;
}
/**
* The ID of the new VPC.
*/
public Builder vpcId(String vpcId) {
this.putQueryParameter("VpcId", vpcId);
this.vpcId = vpcId;
return this;
}
@Override
public ModifyInstanceVpcAttributeRequest build() {
return new ModifyInstanceVpcAttributeRequest(this);
}
}
}