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

com.aliyun.sdk.service.ecs20140526.models.DescribeReservedInstancesRequest 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 DescribeReservedInstancesRequest} extends {@link RequestModel}
 *
 * 

DescribeReservedInstancesRequest

*/ public class DescribeReservedInstancesRequest extends Request { @Query @NameInMap("AllocationType") private String allocationType; @Query @NameInMap("InstanceType") private String instanceType; @Query @NameInMap("InstanceTypeFamily") private String instanceTypeFamily; @Query @NameInMap("LockReason") private String lockReason; @Query @NameInMap("OfferingType") private String offeringType; @Query @NameInMap("OwnerAccount") private String ownerAccount; @Query @NameInMap("OwnerId") private Long ownerId; @Query @NameInMap("PageNumber") private Integer pageNumber; @Query @NameInMap("PageSize") @Validation(maximum = 100, minimum = 1) private Integer pageSize; @Query @NameInMap("RegionId") @Validation(required = true) private String regionId; @Query @NameInMap("ReservedInstanceId") private java.util.List < String > reservedInstanceId; @Query @NameInMap("ReservedInstanceName") private String reservedInstanceName; @Query @NameInMap("ResourceOwnerAccount") private String resourceOwnerAccount; @Query @NameInMap("ResourceOwnerId") private Long resourceOwnerId; @Query @NameInMap("Scope") private String scope; @Query @NameInMap("Status") private java.util.List < String > status; @Query @NameInMap("Tag") private java.util.List < Tag> tag; @Query @NameInMap("ZoneId") private String zoneId; private DescribeReservedInstancesRequest(Builder builder) { super(builder); this.allocationType = builder.allocationType; this.instanceType = builder.instanceType; this.instanceTypeFamily = builder.instanceTypeFamily; this.lockReason = builder.lockReason; this.offeringType = builder.offeringType; this.ownerAccount = builder.ownerAccount; this.ownerId = builder.ownerId; this.pageNumber = builder.pageNumber; this.pageSize = builder.pageSize; this.regionId = builder.regionId; this.reservedInstanceId = builder.reservedInstanceId; this.reservedInstanceName = builder.reservedInstanceName; this.resourceOwnerAccount = builder.resourceOwnerAccount; this.resourceOwnerId = builder.resourceOwnerId; this.scope = builder.scope; this.status = builder.status; this.tag = builder.tag; this.zoneId = builder.zoneId; } public static Builder builder() { return new Builder(); } public static DescribeReservedInstancesRequest create() { return builder().build(); } @Override public Builder toBuilder() { return new Builder(this); } /** * @return allocationType */ public String getAllocationType() { return this.allocationType; } /** * @return instanceType */ public String getInstanceType() { return this.instanceType; } /** * @return instanceTypeFamily */ public String getInstanceTypeFamily() { return this.instanceTypeFamily; } /** * @return lockReason */ public String getLockReason() { return this.lockReason; } /** * @return offeringType */ public String getOfferingType() { return this.offeringType; } /** * @return ownerAccount */ public String getOwnerAccount() { return this.ownerAccount; } /** * @return ownerId */ public Long getOwnerId() { return this.ownerId; } /** * @return pageNumber */ public Integer getPageNumber() { return this.pageNumber; } /** * @return pageSize */ public Integer getPageSize() { return this.pageSize; } /** * @return regionId */ public String getRegionId() { return this.regionId; } /** * @return reservedInstanceId */ public java.util.List < String > getReservedInstanceId() { return this.reservedInstanceId; } /** * @return reservedInstanceName */ public String getReservedInstanceName() { return this.reservedInstanceName; } /** * @return resourceOwnerAccount */ public String getResourceOwnerAccount() { return this.resourceOwnerAccount; } /** * @return resourceOwnerId */ public Long getResourceOwnerId() { return this.resourceOwnerId; } /** * @return scope */ public String getScope() { return this.scope; } /** * @return status */ public java.util.List < String > getStatus() { return this.status; } /** * @return tag */ public java.util.List < Tag> getTag() { return this.tag; } /** * @return zoneId */ public String getZoneId() { return this.zoneId; } public static final class Builder extends Request.Builder { private String allocationType; private String instanceType; private String instanceTypeFamily; private String lockReason; private String offeringType; private String ownerAccount; private Long ownerId; private Integer pageNumber; private Integer pageSize; private String regionId; private java.util.List < String > reservedInstanceId; private String reservedInstanceName; private String resourceOwnerAccount; private Long resourceOwnerId; private String scope; private java.util.List < String > status; private java.util.List < Tag> tag; private String zoneId; private Builder() { super(); } private Builder(DescribeReservedInstancesRequest request) { super(request); this.allocationType = request.allocationType; this.instanceType = request.instanceType; this.instanceTypeFamily = request.instanceTypeFamily; this.lockReason = request.lockReason; this.offeringType = request.offeringType; this.ownerAccount = request.ownerAccount; this.ownerId = request.ownerId; this.pageNumber = request.pageNumber; this.pageSize = request.pageSize; this.regionId = request.regionId; this.reservedInstanceId = request.reservedInstanceId; this.reservedInstanceName = request.reservedInstanceName; this.resourceOwnerAccount = request.resourceOwnerAccount; this.resourceOwnerId = request.resourceOwnerId; this.scope = request.scope; this.status = request.status; this.tag = request.tag; this.zoneId = request.zoneId; } /** * The allocation type. Valid values: *

* * * Normal: queries all reserved instances that belong to the current account. * * Shared: queries reserved instances that are shared between the main account and linked accounts. * * Default value: Normal. */ public Builder allocationType(String allocationType) { this.putQueryParameter("AllocationType", allocationType); this.allocationType = allocationType; return this; } /** * The instance type. For more information, see [Instance families](~~25378~~). */ public Builder instanceType(String instanceType) { this.putQueryParameter("InstanceType", instanceType); this.instanceType = instanceType; return this; } /** * The instance family. For more information, see [Instance families](~~25378~~). */ public Builder instanceTypeFamily(String instanceTypeFamily) { this.putQueryParameter("InstanceTypeFamily", instanceTypeFamily); this.instanceTypeFamily = instanceTypeFamily; return this; } /** * The reason why the instance is locked. Valid values: *

* * * financial: You have an overdue payment in your account, or the reserved instance has expired. * * security: The reserved instance is locked for security reasons. */ public Builder lockReason(String lockReason) { this.putQueryParameter("LockReason", lockReason); this.lockReason = lockReason; return this; } /** * The payment option of the reserved instances. Valid values: *

* * * No Upfront * * Partial Upfront * * All Upfront */ public Builder offeringType(String offeringType) { this.putQueryParameter("OfferingType", offeringType); this.offeringType = offeringType; 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 page number. Pages start from page 1. *

* * Default value: 1. */ public Builder pageNumber(Integer pageNumber) { this.putQueryParameter("PageNumber", pageNumber); this.pageNumber = pageNumber; return this; } /** * The number of entries per page. Maximum value: 100. *

* * Default value: 10. */ public Builder pageSize(Integer pageSize) { this.putQueryParameter("PageSize", pageSize); this.pageSize = pageSize; return this; } /** * The region ID of the instances. 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 reserved instance N. Valid values of N: 1 to 100. */ public Builder reservedInstanceId(java.util.List < String > reservedInstanceId) { this.putQueryParameter("ReservedInstanceId", reservedInstanceId); this.reservedInstanceId = reservedInstanceId; return this; } /** * The name of the reserved instance. */ public Builder reservedInstanceName(String reservedInstanceName) { this.putQueryParameter("ReservedInstanceName", reservedInstanceName); this.reservedInstanceName = reservedInstanceName; 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 scope of the reserved instances. Valid values: *

* * * Region * * Zone * * Default value: Region. */ public Builder scope(String scope) { this.putQueryParameter("Scope", scope); this.scope = scope; return this; } /** * The status of reserved instance N. Valid values of N: 1 to 100. Valid values: *

* * * Creating * * Active * * Expired * * Updating */ public Builder status(java.util.List < String > status) { this.putQueryParameter("Status", status); this.status = status; return this; } /** * The tags to add to the instances. */ public Builder tag(java.util.List < Tag> tag) { this.putQueryParameter("Tag", tag); this.tag = tag; return this; } /** * The zone ID of the reserved instances. This parameter is required when Scope is set to Zone. You can call the [DescribeZones](~~25610~~) operation to query the most recent zone list. */ public Builder zoneId(String zoneId) { this.putQueryParameter("ZoneId", zoneId); this.zoneId = zoneId; return this; } @Override public DescribeReservedInstancesRequest build() { return new DescribeReservedInstancesRequest(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 to add to the reserved instance. 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://](http://https://。). The tag key cannot start with acs: or aliyun. *

* * Up to 1,000 resources with the specified tags can be returned in the response. To query more than 1,000 resources with the specified tags, call the [ListTagResources](~~110425~~) operation. */ public Builder key(String key) { this.key = key; return this; } /** * The value of tag N to add to the reserved instance. 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 contain [http:// or https://](http://https://。). The tag value cannot start with acs:. */ public Builder value(String value) { this.value = value; return this; } public Tag build() { return new Tag(this); } } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy