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

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

The newest version!
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sdk.service.ecs20140526.models;

import com.aliyun.sdk.gateway.pop.*;
import darabonba.core.*;
import darabonba.core.async.*;
import darabonba.core.sync.*;
import darabonba.core.client.*;
import darabonba.core.RequestModel;
import darabonba.core.TeaModel;
import com.aliyun.sdk.gateway.pop.models.*;

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

ModifyCapacityReservationRequest

*/ public class ModifyCapacityReservationRequest extends Request { @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("PrivatePoolOptions") private PrivatePoolOptions privatePoolOptions; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("Description") private String description; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("EndTime") private String endTime; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("EndTimeType") private String endTimeType; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("InstanceAmount") private Integer instanceAmount; @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("Platform") private String platform; @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("StartTime") private String startTime; private ModifyCapacityReservationRequest(Builder builder) { super(builder); this.privatePoolOptions = builder.privatePoolOptions; this.description = builder.description; this.endTime = builder.endTime; this.endTimeType = builder.endTimeType; this.instanceAmount = builder.instanceAmount; this.ownerAccount = builder.ownerAccount; this.ownerId = builder.ownerId; this.platform = builder.platform; this.regionId = builder.regionId; this.resourceOwnerAccount = builder.resourceOwnerAccount; this.resourceOwnerId = builder.resourceOwnerId; this.startTime = builder.startTime; } public static Builder builder() { return new Builder(); } public static ModifyCapacityReservationRequest create() { return builder().build(); } @Override public Builder toBuilder() { return new Builder(this); } /** * @return privatePoolOptions */ public PrivatePoolOptions getPrivatePoolOptions() { return this.privatePoolOptions; } /** * @return description */ public String getDescription() { return this.description; } /** * @return endTime */ public String getEndTime() { return this.endTime; } /** * @return endTimeType */ public String getEndTimeType() { return this.endTimeType; } /** * @return instanceAmount */ public Integer getInstanceAmount() { return this.instanceAmount; } /** * @return ownerAccount */ public String getOwnerAccount() { return this.ownerAccount; } /** * @return ownerId */ public Long getOwnerId() { return this.ownerId; } /** * @return platform */ public String getPlatform() { return this.platform; } /** * @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 startTime */ public String getStartTime() { return this.startTime; } public static final class Builder extends Request.Builder { private PrivatePoolOptions privatePoolOptions; private String description; private String endTime; private String endTimeType; private Integer instanceAmount; private String ownerAccount; private Long ownerId; private String platform; private String regionId; private String resourceOwnerAccount; private Long resourceOwnerId; private String startTime; private Builder() { super(); } private Builder(ModifyCapacityReservationRequest request) { super(request); this.privatePoolOptions = request.privatePoolOptions; this.description = request.description; this.endTime = request.endTime; this.endTimeType = request.endTimeType; this.instanceAmount = request.instanceAmount; this.ownerAccount = request.ownerAccount; this.ownerId = request.ownerId; this.platform = request.platform; this.regionId = request.regionId; this.resourceOwnerAccount = request.resourceOwnerAccount; this.resourceOwnerId = request.resourceOwnerId; this.startTime = request.startTime; } /** * PrivatePoolOptions. */ public Builder privatePoolOptions(PrivatePoolOptions privatePoolOptions) { this.putQueryParameter("PrivatePoolOptions", privatePoolOptions); this.privatePoolOptions = privatePoolOptions; return this; } /** *

The description of the capacity reservation. The description must be 2 to 256 characters in length. It cannot start with http:// or https://.

* * example: *

This is description.

*/ public Builder description(String description) { this.putQueryParameter("Description", description); this.description = description; return this; } /** *

The expiration time of the capacity reservation. This parameter takes effect only when EndTimeType is set to Limited. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. For more information, see ISO 8601.

* * example: *

2021-10-30T06:32:00Z

*/ public Builder endTime(String endTime) { this.putQueryParameter("EndTime", endTime); this.endTime = endTime; return this; } /** *

The release mode of the capacity reservation. Valid values:

*
    *
  • Limited: The capacity reservation is automatically released at the specified point in time. If you configure this parameter, you must also configure EndTime.
  • *
  • Unlimited: The capacity reservation must be manually released. You can release it anytime.
  • *
* * example: *

Unlimited

*/ public Builder endTimeType(String endTimeType) { this.putQueryParameter("EndTimeType", endTimeType); this.endTimeType = endTimeType; return this; } /** *

The total number of instances for which capacity is reserved. Valid values: the number of used instances to 1000.

*
*

When you increase the number of instances, the increase may fail due to insufficient resources.

*
* * example: *

100

*/ public Builder instanceAmount(Integer instanceAmount) { this.putQueryParameter("InstanceAmount", instanceAmount); this.instanceAmount = instanceAmount; 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 operating system of the image used by the instance. Valid values:

*
    *
  • Windows
  • *
  • Linux
  • *
*
*

This parameter is unavailable.

*
* * example: *

Linux

*/ public Builder platform(String platform) { this.putQueryParameter("Platform", platform); this.platform = platform; return this; } /** *

The region ID of the capacity reservation. You can call the DescribeRegions operation to query the most recent region list.

*

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 mode in which the capacity reservation takes effect. Only immediate capacity reservations are supported. You do not need to specify a value for this parameter.

*
*

If you do not specify a value for this parameter, the capacity reservation immediately takes effect.

*
* * example: *

Now

*/ public Builder startTime(String startTime) { this.putQueryParameter("StartTime", startTime); this.startTime = startTime; return this; } @Override public ModifyCapacityReservationRequest build() { return new ModifyCapacityReservationRequest(this); } } /** * * {@link ModifyCapacityReservationRequest} extends {@link TeaModel} * *

ModifyCapacityReservationRequest

*/ public static class PrivatePoolOptions extends TeaModel { @com.aliyun.core.annotation.NameInMap("Id") @com.aliyun.core.annotation.Validation(required = true) private String id; @com.aliyun.core.annotation.NameInMap("Name") private String name; private PrivatePoolOptions(Builder builder) { this.id = builder.id; this.name = builder.name; } public static Builder builder() { return new Builder(); } public static PrivatePoolOptions create() { return builder().build(); } /** * @return id */ public String getId() { return this.id; } /** * @return name */ public String getName() { return this.name; } public static final class Builder { private String id; private String name; /** *

The capacity reservation ID.

*

This parameter is required.

* * example: *

crp-bp67acfmxazb4****

*/ public Builder id(String id) { this.id = id; return this; } /** *

The name of the capacity reservation. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-).

* * example: *

eapTestName

*/ public Builder name(String name) { this.name = name; return this; } public PrivatePoolOptions build() { return new PrivatePoolOptions(this); } } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy