com.aliyun.sdk.service.ecs20140526.models.CreateDeploymentSetRequest 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 CreateDeploymentSetRequest} extends {@link RequestModel}
*
* CreateDeploymentSetRequest
*/
public class CreateDeploymentSetRequest 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("ClientToken")
private String clientToken;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("DeploymentSetName")
private String deploymentSetName;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("Description")
private String description;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("Domain")
private String domain;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("Granularity")
private String granularity;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("GroupCount")
private Long groupCount;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("OnUnableToRedeployFailedInstance")
private String onUnableToRedeployFailedInstance;
@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("RegionId")
@com.aliyun.core.annotation.Validation(required = true)
private String regionId;
@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("Strategy")
private String strategy;
private CreateDeploymentSetRequest(Builder builder) {
super(builder);
this.sourceRegionId = builder.sourceRegionId;
this.clientToken = builder.clientToken;
this.deploymentSetName = builder.deploymentSetName;
this.description = builder.description;
this.domain = builder.domain;
this.granularity = builder.granularity;
this.groupCount = builder.groupCount;
this.onUnableToRedeployFailedInstance = builder.onUnableToRedeployFailedInstance;
this.ownerAccount = builder.ownerAccount;
this.ownerId = builder.ownerId;
this.regionId = builder.regionId;
this.resourceOwnerAccount = builder.resourceOwnerAccount;
this.resourceOwnerId = builder.resourceOwnerId;
this.strategy = builder.strategy;
}
public static Builder builder() {
return new Builder();
}
public static CreateDeploymentSetRequest create() {
return builder().build();
}
@Override
public Builder toBuilder() {
return new Builder(this);
}
/**
* @return sourceRegionId
*/
public String getSourceRegionId() {
return this.sourceRegionId;
}
/**
* @return clientToken
*/
public String getClientToken() {
return this.clientToken;
}
/**
* @return deploymentSetName
*/
public String getDeploymentSetName() {
return this.deploymentSetName;
}
/**
* @return description
*/
public String getDescription() {
return this.description;
}
/**
* @return domain
*/
public String getDomain() {
return this.domain;
}
/**
* @return granularity
*/
public String getGranularity() {
return this.granularity;
}
/**
* @return groupCount
*/
public Long getGroupCount() {
return this.groupCount;
}
/**
* @return onUnableToRedeployFailedInstance
*/
public String getOnUnableToRedeployFailedInstance() {
return this.onUnableToRedeployFailedInstance;
}
/**
* @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 resourceOwnerAccount
*/
public String getResourceOwnerAccount() {
return this.resourceOwnerAccount;
}
/**
* @return resourceOwnerId
*/
public Long getResourceOwnerId() {
return this.resourceOwnerId;
}
/**
* @return strategy
*/
public String getStrategy() {
return this.strategy;
}
public static final class Builder extends Request.Builder {
private String sourceRegionId;
private String clientToken;
private String deploymentSetName;
private String description;
private String domain;
private String granularity;
private Long groupCount;
private String onUnableToRedeployFailedInstance;
private String ownerAccount;
private Long ownerId;
private String regionId;
private String resourceOwnerAccount;
private Long resourceOwnerId;
private String strategy;
private Builder() {
super();
}
private Builder(CreateDeploymentSetRequest request) {
super(request);
this.sourceRegionId = request.sourceRegionId;
this.clientToken = request.clientToken;
this.deploymentSetName = request.deploymentSetName;
this.description = request.description;
this.domain = request.domain;
this.granularity = request.granularity;
this.groupCount = request.groupCount;
this.onUnableToRedeployFailedInstance = request.onUnableToRedeployFailedInstance;
this.ownerAccount = request.ownerAccount;
this.ownerId = request.ownerId;
this.regionId = request.regionId;
this.resourceOwnerAccount = request.resourceOwnerAccount;
this.resourceOwnerId = request.resourceOwnerId;
this.strategy = request.strategy;
}
/**
* SourceRegionId.
*/
public Builder sourceRegionId(String sourceRegionId) {
this.putHostParameter("SourceRegionId", sourceRegionId);
this.sourceRegionId = sourceRegionId;
return this;
}
/**
* The description of the deployment set. The description must be 2 to 256 characters in length and cannot start with http://
or https://
.
*
* example:
* 123e4567-e89b-12d3-a456-426655440000
*/
public Builder clientToken(String clientToken) {
this.putQueryParameter("ClientToken", clientToken);
this.clientToken = clientToken;
return this;
}
/**
* The name of the deployment set. The name must be 2 to 128 characters in length. The name must start with a letter and cannot start with http://
or https://
. The name can contain digits, letters, colons (:), underscores (_), and hyphens (-).
*
* example:
* testDeploymentSetName
*/
public Builder deploymentSetName(String deploymentSetName) {
this.putQueryParameter("DeploymentSetName", deploymentSetName);
this.deploymentSetName = deploymentSetName;
return this;
}
/**
* The emergency solution to use in the situation where instances in the deployment set cannot be evenly distributed to different zones due to resource insufficiency after the instances failover. Valid values:
*
* - CancelMembershipAndStart: removes the instances from the deployment set and starts the instances immediately after they are failed over.
* - KeepStopped: leaves the instances in the Stopped state and starts them after resources are replenished.
*
* Default value: CancelMembershipAndStart.
*
* example:
* testDescription
*/
public Builder description(String description) {
this.putQueryParameter("Description", description);
this.description = description;
return this;
}
/**
*
* This parameter is deprecated.
*
*
* example:
* Default
*/
public Builder domain(String domain) {
this.putQueryParameter("Domain", domain);
this.domain = domain;
return this;
}
/**
*
* This parameter is deprecated.
*
*
* example:
* host
*/
public Builder granularity(String granularity) {
this.putQueryParameter("Granularity", granularity);
this.granularity = granularity;
return this;
}
/**
* The deployment strategy. Valid values:
*
* - Availability: high availability strategy.
* - AvailabilityGroup: high availability group strategy.
*
* Default value: Availability.
*
* example:
* 1
*/
public Builder groupCount(Long groupCount) {
this.putQueryParameter("GroupCount", groupCount);
this.groupCount = groupCount;
return this;
}
/**
* The region ID of the deployment set. You can call the DescribeRegions operation to query the most recent list of regions.
*
* example:
* CancelMembershipAndStart
*/
public Builder onUnableToRedeployFailedInstance(String onUnableToRedeployFailedInstance) {
this.putQueryParameter("OnUnableToRedeployFailedInstance", onUnableToRedeployFailedInstance);
this.onUnableToRedeployFailedInstance = onUnableToRedeployFailedInstance;
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;
}
/**
* Creates a deployment set in a specific region.
* This parameter is required.
*
* example:
* cn-hangzhou
*/
public Builder regionId(String regionId) {
this.putQueryParameter("RegionId", regionId);
this.regionId = regionId;
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 deployment strategy. Valid values:
*
* - Availability: high availability strategy
* - AvailabilityGroup: high availability group strategy
* - LowLatency: low latency strategy
*
* Default value: Availability.
*
* example:
* Availability
*/
public Builder strategy(String strategy) {
this.putQueryParameter("Strategy", strategy);
this.strategy = strategy;
return this;
}
@Override
public CreateDeploymentSetRequest build() {
return new CreateDeploymentSetRequest(this);
}
}
}