com.aliyun.sdk.service.ecs20140526.models.DescribeDedicatedHostsRequest 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 DescribeDedicatedHostsRequest} extends {@link RequestModel}
*
* DescribeDedicatedHostsRequest
*/
public class DescribeDedicatedHostsRequest 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("DedicatedHostClusterId")
private String dedicatedHostClusterId;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("DedicatedHostIds")
private String dedicatedHostIds;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("DedicatedHostName")
private String dedicatedHostName;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("DedicatedHostType")
private String dedicatedHostType;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("LockReason")
private String lockReason;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("MaxResults")
@com.aliyun.core.annotation.Validation(maximum = 100, minimum = 1)
private Integer maxResults;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("NextToken")
private String nextToken;
@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("PageNumber")
private Integer pageNumber;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("PageSize")
@com.aliyun.core.annotation.Validation(maximum = 100, minimum = 1)
private Integer pageSize;
@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("ResourceGroupId")
private String resourceGroupId;
@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("SocketDetails")
private String socketDetails;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("Status")
private String status;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("Tag")
private java.util.List < Tag> tag;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("ZoneId")
private String zoneId;
private DescribeDedicatedHostsRequest(Builder builder) {
super(builder);
this.sourceRegionId = builder.sourceRegionId;
this.dedicatedHostClusterId = builder.dedicatedHostClusterId;
this.dedicatedHostIds = builder.dedicatedHostIds;
this.dedicatedHostName = builder.dedicatedHostName;
this.dedicatedHostType = builder.dedicatedHostType;
this.lockReason = builder.lockReason;
this.maxResults = builder.maxResults;
this.nextToken = builder.nextToken;
this.ownerAccount = builder.ownerAccount;
this.ownerId = builder.ownerId;
this.pageNumber = builder.pageNumber;
this.pageSize = builder.pageSize;
this.regionId = builder.regionId;
this.resourceGroupId = builder.resourceGroupId;
this.resourceOwnerAccount = builder.resourceOwnerAccount;
this.resourceOwnerId = builder.resourceOwnerId;
this.socketDetails = builder.socketDetails;
this.status = builder.status;
this.tag = builder.tag;
this.zoneId = builder.zoneId;
}
public static Builder builder() {
return new Builder();
}
public static DescribeDedicatedHostsRequest create() {
return builder().build();
}
@Override
public Builder toBuilder() {
return new Builder(this);
}
/**
* @return sourceRegionId
*/
public String getSourceRegionId() {
return this.sourceRegionId;
}
/**
* @return dedicatedHostClusterId
*/
public String getDedicatedHostClusterId() {
return this.dedicatedHostClusterId;
}
/**
* @return dedicatedHostIds
*/
public String getDedicatedHostIds() {
return this.dedicatedHostIds;
}
/**
* @return dedicatedHostName
*/
public String getDedicatedHostName() {
return this.dedicatedHostName;
}
/**
* @return dedicatedHostType
*/
public String getDedicatedHostType() {
return this.dedicatedHostType;
}
/**
* @return lockReason
*/
public String getLockReason() {
return this.lockReason;
}
/**
* @return maxResults
*/
public Integer getMaxResults() {
return this.maxResults;
}
/**
* @return nextToken
*/
public String getNextToken() {
return this.nextToken;
}
/**
* @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 resourceGroupId
*/
public String getResourceGroupId() {
return this.resourceGroupId;
}
/**
* @return resourceOwnerAccount
*/
public String getResourceOwnerAccount() {
return this.resourceOwnerAccount;
}
/**
* @return resourceOwnerId
*/
public Long getResourceOwnerId() {
return this.resourceOwnerId;
}
/**
* @return socketDetails
*/
public String getSocketDetails() {
return this.socketDetails;
}
/**
* @return status
*/
public 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 sourceRegionId;
private String dedicatedHostClusterId;
private String dedicatedHostIds;
private String dedicatedHostName;
private String dedicatedHostType;
private String lockReason;
private Integer maxResults;
private String nextToken;
private String ownerAccount;
private Long ownerId;
private Integer pageNumber;
private Integer pageSize;
private String regionId;
private String resourceGroupId;
private String resourceOwnerAccount;
private Long resourceOwnerId;
private String socketDetails;
private String status;
private java.util.List < Tag> tag;
private String zoneId;
private Builder() {
super();
}
private Builder(DescribeDedicatedHostsRequest request) {
super(request);
this.sourceRegionId = request.sourceRegionId;
this.dedicatedHostClusterId = request.dedicatedHostClusterId;
this.dedicatedHostIds = request.dedicatedHostIds;
this.dedicatedHostName = request.dedicatedHostName;
this.dedicatedHostType = request.dedicatedHostType;
this.lockReason = request.lockReason;
this.maxResults = request.maxResults;
this.nextToken = request.nextToken;
this.ownerAccount = request.ownerAccount;
this.ownerId = request.ownerId;
this.pageNumber = request.pageNumber;
this.pageSize = request.pageSize;
this.regionId = request.regionId;
this.resourceGroupId = request.resourceGroupId;
this.resourceOwnerAccount = request.resourceOwnerAccount;
this.resourceOwnerId = request.resourceOwnerId;
this.socketDetails = request.socketDetails;
this.status = request.status;
this.tag = request.tag;
this.zoneId = request.zoneId;
}
/**
* SourceRegionId.
*/
public Builder sourceRegionId(String sourceRegionId) {
this.putHostParameter("SourceRegionId", sourceRegionId);
this.sourceRegionId = sourceRegionId;
return this;
}
/**
* The ID of the dedicated host cluster.
*/
public Builder dedicatedHostClusterId(String dedicatedHostClusterId) {
this.putQueryParameter("DedicatedHostClusterId", dedicatedHostClusterId);
this.dedicatedHostClusterId = dedicatedHostClusterId;
return this;
}
/**
* The IDs of dedicated hosts. You can specify up to 100 dedicated host IDs in a single request. Separate the IDs with commas (,).
*/
public Builder dedicatedHostIds(String dedicatedHostIds) {
this.putQueryParameter("DedicatedHostIds", dedicatedHostIds);
this.dedicatedHostIds = dedicatedHostIds;
return this;
}
/**
* The name of the dedicated host.
*/
public Builder dedicatedHostName(String dedicatedHostName) {
this.putQueryParameter("DedicatedHostName", dedicatedHostName);
this.dedicatedHostName = dedicatedHostName;
return this;
}
/**
* The dedicated host type. You can call the [DescribeDedicatedHostTypes](~~134240~~) operation to query the most recent list of dedicated host types.
*/
public Builder dedicatedHostType(String dedicatedHostType) {
this.putQueryParameter("DedicatedHostType", dedicatedHostType);
this.dedicatedHostType = dedicatedHostType;
return this;
}
/**
* The reason why the dedicated host is locked. Valid values:
*
*
* * financial: The dedicated host is locked due to overdue payments.
* * security: The dedicated host is locked due to security reasons.
*/
public Builder lockReason(String lockReason) {
this.putQueryParameter("LockReason", lockReason);
this.lockReason = lockReason;
return this;
}
/**
* The maximum number of entries per page. If you specify this parameter, both MaxResults and NextToken are used for a paged query.
*
*
* Valid values: 1 to 100.
*
* Default value: 10.
*/
public Builder maxResults(Integer maxResults) {
this.putQueryParameter("MaxResults", maxResults);
this.maxResults = maxResults;
return this;
}
/**
* The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.
*/
public Builder nextToken(String nextToken) {
this.putQueryParameter("NextToken", nextToken);
this.nextToken = nextToken;
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 number of entries per page.
*
*
* Default value: 1.
*/
public Builder pageNumber(Integer pageNumber) {
this.putQueryParameter("PageNumber", pageNumber);
this.pageNumber = pageNumber;
return this;
}
/**
* The number of entries per page.
*
*
* Valid values: 1 to 100.
*
* Default value: 10.
*/
public Builder pageSize(Integer pageSize) {
this.putQueryParameter("PageSize", pageSize);
this.pageSize = pageSize;
return this;
}
/**
* The region ID of the dedicated host. 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 the resource group to which the dedicated host belongs. When this parameter is specified to query resources, up to 1,000 resources that belong to the specified resource group can be displayed in the response.
*
*
* > Resources in the default resource group are displayed in the response regardless of how this parameter is set.
*/
public Builder resourceGroupId(String resourceGroupId) {
this.putQueryParameter("ResourceGroupId", resourceGroupId);
this.resourceGroupId = resourceGroupId;
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;
}
/**
* Specifies whether to display socket information. Valid values:
*
*
* * true
* * false
*/
public Builder socketDetails(String socketDetails) {
this.putQueryParameter("SocketDetails", socketDetails);
this.socketDetails = socketDetails;
return this;
}
/**
* The service state of the dedicated host. Valid values:
*
*
* * Available: The dedicated host is running normally.
* * UnderAssessment: The dedicated host is available but has potential risks that may cause the ECS instances on the dedicated host to fail.
* * PermanentFailure: The dedicated host encounters permanent failures and is unavailable.
* * TempUnavailable: The dedicated host is temporarily unavailable.
* * Redeploying: The dedicated host is being restored.
*
* Default value: Available.
*/
public Builder status(String status) {
this.putQueryParameter("Status", status);
this.status = status;
return this;
}
/**
* The tags of the dedicated host.
*/
public Builder tag(java.util.List < Tag> tag) {
this.putQueryParameter("Tag", tag);
this.tag = tag;
return this;
}
/**
* The zone ID of the dedicated host. 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 DescribeDedicatedHostsRequest build() {
return new DescribeDedicatedHostsRequest(this);
}
}
public static class Tag extends TeaModel {
@com.aliyun.core.annotation.NameInMap("Key")
private String key;
@com.aliyun.core.annotation.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 of the dedicated host. 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://`. The tag key cannot start with `acs:` or `aliyun`.
*/
public Builder key(String key) {
this.key = key;
return this;
}
/**
* The value of tag N of the dedicated host. 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://`.
*/
public Builder value(String value) {
this.value = value;
return this;
}
public Tag build() {
return new Tag(this);
}
}
}
}