
com.aliyun.sdk.service.cbn20170912.models.UpdateTransitRouterVpcAttachmentAttributeRequest Maven / Gradle / Ivy
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sdk.service.cbn20170912.models;
import darabonba.core.RequestModel;
import darabonba.core.TeaModel;
import com.aliyun.sdk.gateway.pop.models.*;
/**
* {@link UpdateTransitRouterVpcAttachmentAttributeRequest} extends {@link RequestModel}
*
* UpdateTransitRouterVpcAttachmentAttributeRequest
*/
public class UpdateTransitRouterVpcAttachmentAttributeRequest extends Request {
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("AutoPublishRouteEnabled")
private Boolean autoPublishRouteEnabled;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("ClientToken")
private String clientToken;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("DryRun")
private Boolean dryRun;
@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("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("TransitRouterAttachmentDescription")
private String transitRouterAttachmentDescription;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("TransitRouterAttachmentId")
@com.aliyun.core.annotation.Validation(required = true)
private String transitRouterAttachmentId;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("TransitRouterAttachmentName")
private String transitRouterAttachmentName;
private UpdateTransitRouterVpcAttachmentAttributeRequest(Builder builder) {
super(builder);
this.autoPublishRouteEnabled = builder.autoPublishRouteEnabled;
this.clientToken = builder.clientToken;
this.dryRun = builder.dryRun;
this.ownerAccount = builder.ownerAccount;
this.ownerId = builder.ownerId;
this.resourceOwnerAccount = builder.resourceOwnerAccount;
this.resourceOwnerId = builder.resourceOwnerId;
this.transitRouterAttachmentDescription = builder.transitRouterAttachmentDescription;
this.transitRouterAttachmentId = builder.transitRouterAttachmentId;
this.transitRouterAttachmentName = builder.transitRouterAttachmentName;
}
public static Builder builder() {
return new Builder();
}
public static UpdateTransitRouterVpcAttachmentAttributeRequest create() {
return builder().build();
}
@Override
public Builder toBuilder() {
return new Builder(this);
}
/**
* @return autoPublishRouteEnabled
*/
public Boolean getAutoPublishRouteEnabled() {
return this.autoPublishRouteEnabled;
}
/**
* @return clientToken
*/
public String getClientToken() {
return this.clientToken;
}
/**
* @return dryRun
*/
public Boolean getDryRun() {
return this.dryRun;
}
/**
* @return ownerAccount
*/
public String getOwnerAccount() {
return this.ownerAccount;
}
/**
* @return ownerId
*/
public Long getOwnerId() {
return this.ownerId;
}
/**
* @return resourceOwnerAccount
*/
public String getResourceOwnerAccount() {
return this.resourceOwnerAccount;
}
/**
* @return resourceOwnerId
*/
public Long getResourceOwnerId() {
return this.resourceOwnerId;
}
/**
* @return transitRouterAttachmentDescription
*/
public String getTransitRouterAttachmentDescription() {
return this.transitRouterAttachmentDescription;
}
/**
* @return transitRouterAttachmentId
*/
public String getTransitRouterAttachmentId() {
return this.transitRouterAttachmentId;
}
/**
* @return transitRouterAttachmentName
*/
public String getTransitRouterAttachmentName() {
return this.transitRouterAttachmentName;
}
public static final class Builder extends Request.Builder {
private Boolean autoPublishRouteEnabled;
private String clientToken;
private Boolean dryRun;
private String ownerAccount;
private Long ownerId;
private String resourceOwnerAccount;
private Long resourceOwnerId;
private String transitRouterAttachmentDescription;
private String transitRouterAttachmentId;
private String transitRouterAttachmentName;
private Builder() {
super();
}
private Builder(UpdateTransitRouterVpcAttachmentAttributeRequest request) {
super(request);
this.autoPublishRouteEnabled = request.autoPublishRouteEnabled;
this.clientToken = request.clientToken;
this.dryRun = request.dryRun;
this.ownerAccount = request.ownerAccount;
this.ownerId = request.ownerId;
this.resourceOwnerAccount = request.resourceOwnerAccount;
this.resourceOwnerId = request.resourceOwnerId;
this.transitRouterAttachmentDescription = request.transitRouterAttachmentDescription;
this.transitRouterAttachmentId = request.transitRouterAttachmentId;
this.transitRouterAttachmentName = request.transitRouterAttachmentName;
}
/**
* Specifies whether to allow the Enterprise Edition transit router to advertise routes to the VPC. Valid values:
*
*
* * **false:** (default)
* * **true**
*/
public Builder autoPublishRouteEnabled(Boolean autoPublishRouteEnabled) {
this.putQueryParameter("AutoPublishRouteEnabled", autoPublishRouteEnabled);
this.autoPublishRouteEnabled = autoPublishRouteEnabled;
return this;
}
/**
* The client token that is used to ensure the idempotence of the request.
*
*
* You can use the client to generate the token, but you must make sure that the token is unique among all requests. The token can contain only ASCII characters.
*
* > If you do not set this parameter, **ClientToken** is set to the value of **RequestId**. The value of **RequestId** for each API request may be different.
*/
public Builder clientToken(String clientToken) {
this.putQueryParameter("ClientToken", clientToken);
this.clientToken = clientToken;
return this;
}
/**
* Specifies whether to perform a dry run. Default values:
*
*
* * **false** (default): performs a dry run and sends the request.
* * **true**: performs a dry run. The system checks the required parameters and request syntax. If the request fails the dry run, an error message is returned. If the request passes the dry run, the system returns the ID of the request.
*/
public Builder dryRun(Boolean dryRun) {
this.putQueryParameter("DryRun", dryRun);
this.dryRun = dryRun;
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;
}
/**
* 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 description of the VPC connection.
*
*
* The description must be 2 to 256 characters in length. The description must start with a letter but cannot start with `http://` or `https://`.
*/
public Builder transitRouterAttachmentDescription(String transitRouterAttachmentDescription) {
this.putQueryParameter("TransitRouterAttachmentDescription", transitRouterAttachmentDescription);
this.transitRouterAttachmentDescription = transitRouterAttachmentDescription;
return this;
}
/**
* The ID of the VPC connection.
*/
public Builder transitRouterAttachmentId(String transitRouterAttachmentId) {
this.putQueryParameter("TransitRouterAttachmentId", transitRouterAttachmentId);
this.transitRouterAttachmentId = transitRouterAttachmentId;
return this;
}
/**
* The name of the VPC connection.
*
*
* The name must be 2 to 128 characters in length, and can contain letters, digits, underscores (\_), and hyphens (-). It must start with a letter.
*/
public Builder transitRouterAttachmentName(String transitRouterAttachmentName) {
this.putQueryParameter("TransitRouterAttachmentName", transitRouterAttachmentName);
this.transitRouterAttachmentName = transitRouterAttachmentName;
return this;
}
@Override
public UpdateTransitRouterVpcAttachmentAttributeRequest build() {
return new UpdateTransitRouterVpcAttachmentAttributeRequest(this);
}
}
}