com.aliyun.sdk.service.ecs20140526.models.DescribeInstanceHistoryEventsRequest 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 DescribeInstanceHistoryEventsRequest} extends {@link RequestModel}
*
* DescribeInstanceHistoryEventsRequest
*/
public class DescribeInstanceHistoryEventsRequest extends Request {
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("EventPublishTime")
private EventPublishTime eventPublishTime;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("NotBefore")
private NotBefore notBefore;
@com.aliyun.core.annotation.Host
@com.aliyun.core.annotation.NameInMap("SourceRegionId")
private String sourceRegionId;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("EventCycleStatus")
private String eventCycleStatus;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("EventId")
private java.util.List < String > eventId;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("EventType")
private String eventType;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("ImpactLevel")
private String impactLevel;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("InstanceEventCycleStatus")
private java.util.List < String > instanceEventCycleStatus;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("InstanceEventType")
private java.util.List < String > instanceEventType;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("InstanceId")
private String instanceId;
@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")
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("ResourceId")
private java.util.List < String > resourceId;
@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("ResourceType")
private String resourceType;
@com.aliyun.core.annotation.Query
@com.aliyun.core.annotation.NameInMap("Tag")
private java.util.List < Tag> tag;
private DescribeInstanceHistoryEventsRequest(Builder builder) {
super(builder);
this.eventPublishTime = builder.eventPublishTime;
this.notBefore = builder.notBefore;
this.sourceRegionId = builder.sourceRegionId;
this.eventCycleStatus = builder.eventCycleStatus;
this.eventId = builder.eventId;
this.eventType = builder.eventType;
this.impactLevel = builder.impactLevel;
this.instanceEventCycleStatus = builder.instanceEventCycleStatus;
this.instanceEventType = builder.instanceEventType;
this.instanceId = builder.instanceId;
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.resourceId = builder.resourceId;
this.resourceOwnerAccount = builder.resourceOwnerAccount;
this.resourceOwnerId = builder.resourceOwnerId;
this.resourceType = builder.resourceType;
this.tag = builder.tag;
}
public static Builder builder() {
return new Builder();
}
public static DescribeInstanceHistoryEventsRequest create() {
return builder().build();
}
@Override
public Builder toBuilder() {
return new Builder(this);
}
/**
* @return eventPublishTime
*/
public EventPublishTime getEventPublishTime() {
return this.eventPublishTime;
}
/**
* @return notBefore
*/
public NotBefore getNotBefore() {
return this.notBefore;
}
/**
* @return sourceRegionId
*/
public String getSourceRegionId() {
return this.sourceRegionId;
}
/**
* @return eventCycleStatus
*/
public String getEventCycleStatus() {
return this.eventCycleStatus;
}
/**
* @return eventId
*/
public java.util.List < String > getEventId() {
return this.eventId;
}
/**
* @return eventType
*/
public String getEventType() {
return this.eventType;
}
/**
* @return impactLevel
*/
public String getImpactLevel() {
return this.impactLevel;
}
/**
* @return instanceEventCycleStatus
*/
public java.util.List < String > getInstanceEventCycleStatus() {
return this.instanceEventCycleStatus;
}
/**
* @return instanceEventType
*/
public java.util.List < String > getInstanceEventType() {
return this.instanceEventType;
}
/**
* @return instanceId
*/
public String getInstanceId() {
return this.instanceId;
}
/**
* @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 resourceId
*/
public java.util.List < String > getResourceId() {
return this.resourceId;
}
/**
* @return resourceOwnerAccount
*/
public String getResourceOwnerAccount() {
return this.resourceOwnerAccount;
}
/**
* @return resourceOwnerId
*/
public Long getResourceOwnerId() {
return this.resourceOwnerId;
}
/**
* @return resourceType
*/
public String getResourceType() {
return this.resourceType;
}
/**
* @return tag
*/
public java.util.List < Tag> getTag() {
return this.tag;
}
public static final class Builder extends Request.Builder {
private EventPublishTime eventPublishTime;
private NotBefore notBefore;
private String sourceRegionId;
private String eventCycleStatus;
private java.util.List < String > eventId;
private String eventType;
private String impactLevel;
private java.util.List < String > instanceEventCycleStatus;
private java.util.List < String > instanceEventType;
private String instanceId;
private String ownerAccount;
private Long ownerId;
private Integer pageNumber;
private Integer pageSize;
private String regionId;
private String resourceGroupId;
private java.util.List < String > resourceId;
private String resourceOwnerAccount;
private Long resourceOwnerId;
private String resourceType;
private java.util.List < Tag> tag;
private Builder() {
super();
}
private Builder(DescribeInstanceHistoryEventsRequest request) {
super(request);
this.eventPublishTime = request.eventPublishTime;
this.notBefore = request.notBefore;
this.sourceRegionId = request.sourceRegionId;
this.eventCycleStatus = request.eventCycleStatus;
this.eventId = request.eventId;
this.eventType = request.eventType;
this.impactLevel = request.impactLevel;
this.instanceEventCycleStatus = request.instanceEventCycleStatus;
this.instanceEventType = request.instanceEventType;
this.instanceId = request.instanceId;
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.resourceId = request.resourceId;
this.resourceOwnerAccount = request.resourceOwnerAccount;
this.resourceOwnerId = request.resourceOwnerId;
this.resourceType = request.resourceType;
this.tag = request.tag;
}
/**
* EventPublishTime.
*/
public Builder eventPublishTime(EventPublishTime eventPublishTime) {
this.putQueryParameter("EventPublishTime", eventPublishTime);
this.eventPublishTime = eventPublishTime;
return this;
}
/**
* NotBefore.
*/
public Builder notBefore(NotBefore notBefore) {
this.putQueryParameter("NotBefore", notBefore);
this.notBefore = notBefore;
return this;
}
/**
* SourceRegionId.
*/
public Builder sourceRegionId(String sourceRegionId) {
this.putHostParameter("SourceRegionId", sourceRegionId);
this.sourceRegionId = sourceRegionId;
return this;
}
/**
* The lifecycle state of the system event. This parameter takes effect only when InstanceEventCycleStatus.N is not specified. Valid values:
*
*
* * Scheduled
* * Avoided
* * Executing
* * Executed
* * Canceled
* * Failed
* * Inquiring
*/
public Builder eventCycleStatus(String eventCycleStatus) {
this.putQueryParameter("EventCycleStatus", eventCycleStatus);
this.eventCycleStatus = eventCycleStatus;
return this;
}
/**
* The ID of system event N. Valid values of N: 1 to 100. You can repeat this parameter to pass multiple values.
*/
public Builder eventId(java.util.List < String > eventId) {
this.putQueryParameter("EventId", eventId);
this.eventId = eventId;
return this;
}
/**
* The type of the system event. This parameter takes effect only when InstanceEventType.N is not specified. Valid values:
*
*
* * SystemMaintenance.Reboot: The instance is restarted due to system maintenance.
* * SystemMaintenance.Redeploy: The instance is redeployed due to system maintenance.
* * SystemFailure.Reboot: The instance is restarted due to a system error.
* * SystemFailure.Redeploy: The instance is redeployed due to a system error.
* * SystemFailure.Delete: The instance is released due to an instance creation failure.
* * InstanceFailure.Reboot: The instance is restarted due to an instance error.
* * InstanceExpiration.Stop: The subscription instance is stopped due to expiration.
* * InstanceExpiration.Delete: The subscription instance is released due to expiration.
* * AccountUnbalanced.Stop: The pay-as-you-go instance is stopped due to an overdue payment.
* * AccountUnbalanced.Delete: The pay-as-you-go instance is released due to an overdue payment.
*
* > For more information, see [Overview](~~66574~~). The values of this parameter are applicable only to instance system events, but not to disk system events.
*/
public Builder eventType(String eventType) {
this.putQueryParameter("EventType", eventType);
this.eventType = eventType;
return this;
}
/**
* > This parameter is not publicly available.
*/
public Builder impactLevel(String impactLevel) {
this.putQueryParameter("ImpactLevel", impactLevel);
this.impactLevel = impactLevel;
return this;
}
/**
* The lifecycle state of system event N. Valid values of N: 1 to 7. You can repeat this parameter to pass multiple values. Valid values:
*
*
* * Scheduled
* * Avoided
* * Executing
* * Executed
* * Canceled
* * Failed
* * Inquiring
*/
public Builder instanceEventCycleStatus(java.util.List < String > instanceEventCycleStatus) {
this.putQueryParameter("InstanceEventCycleStatus", instanceEventCycleStatus);
this.instanceEventCycleStatus = instanceEventCycleStatus;
return this;
}
/**
* The type of system event N. Valid values of N: 1 to 30. You can repeat this parameter to pass multiple values. Valid values:
*
*
* * SystemMaintenance.Reboot: The instance is restarted due to system maintenance.
* * SystemMaintenance.Redeploy: The instance is redeployed due to system maintenance.
* * SystemFailure.Reboot: The instance is restarted due to a system error.
* * SystemFailure.Redeploy: The instance is redeployed due to a system error.
* * SystemFailure.Delete: The instance is released due to an instance creation failure.
* * InstanceFailure.Reboot: The instance is restarted due to an instance error.
* * InstanceExpiration.Stop: The subscription instance is stopped due to expiration.
* * InstanceExpiration.Delete: The subscription instance is released due to expiration.
* * AccountUnbalanced.Stop: The pay-as-you-go instance is stopped due to an overdue payment.
* * AccountUnbalanced.Delete: The pay-as-you-go instance is released due to an overdue payment.
*
* > For more information, see [Overview](~~66574~~). The values of this parameter are applicable only to instance system events, but not to disk system events.
*/
public Builder instanceEventType(java.util.List < String > instanceEventType) {
this.putQueryParameter("InstanceEventType", instanceEventType);
this.instanceEventType = instanceEventType;
return this;
}
/**
* The ID of the instance. If this parameter is not specified, the system events of all instances in the specified region are queried.
*/
public Builder instanceId(String instanceId) {
this.putQueryParameter("InstanceId", instanceId);
this.instanceId = instanceId;
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. 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 resource. You can call [DescribeRegions](~~25609~~) 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 resource belongs.
*/
public Builder resourceGroupId(String resourceGroupId) {
this.putQueryParameter("ResourceGroupId", resourceGroupId);
this.resourceGroupId = resourceGroupId;
return this;
}
/**
* The ID of resource N. Valid values of N: 1 to 100. You can repeat this parameter to pass multiple values. Valid values:
*
*
* * When `ResourceType` is set to instance, ResourceId.N specifies the ID of instance N.
* * When `ResourceType` is set to ddh, ResourceId.N specifies the ID of dedicated host N.
* * When `ResourceType` is set to managedhost, ResourceId.N specifies the ID of physical machine N from a smart hosting pool.
*
* If this parameter is not specified, the system events of all resources of the type specified by `ResourceType` in the region specified by `RegionId` are queried.
*
* > We recommend that you use `ResourceId.N` to specify one or more resource IDs. If you specify both `ResourceId.N` and `InstanceId`, `ResourceId.N` takes precedence by default.
*/
public Builder resourceId(java.util.List < String > resourceId) {
this.putQueryParameter("ResourceId", resourceId);
this.resourceId = resourceId;
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 type of the resource. Valid values:
*
*
* * instance: ECS instance
* * ddh: dedicated host
* * managehost: physical machine in a smart hosting pool
*
* Default value: instance.
*/
public Builder resourceType(String resourceType) {
this.putQueryParameter("ResourceType", resourceType);
this.resourceType = resourceType;
return this;
}
/**
* The list of tags.
*/
public Builder tag(java.util.List < Tag> tag) {
this.putQueryParameter("Tag", tag);
this.tag = tag;
return this;
}
@Override
public DescribeInstanceHistoryEventsRequest build() {
return new DescribeInstanceHistoryEventsRequest(this);
}
}
public static class EventPublishTime extends TeaModel {
@com.aliyun.core.annotation.NameInMap("End")
private String end;
@com.aliyun.core.annotation.NameInMap("Start")
private String start;
private EventPublishTime(Builder builder) {
this.end = builder.end;
this.start = builder.start;
}
public static Builder builder() {
return new Builder();
}
public static EventPublishTime create() {
return builder().build();
}
/**
* @return end
*/
public String getEnd() {
return this.end;
}
/**
* @return start
*/
public String getStart() {
return this.start;
}
public static final class Builder {
private String end;
private String start;
/**
* The end of the time range in which to query published system events. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
*/
public Builder end(String end) {
this.end = end;
return this;
}
/**
* The beginning of the time range in which to query published system events. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
*/
public Builder start(String start) {
this.start = start;
return this;
}
public EventPublishTime build() {
return new EventPublishTime(this);
}
}
}
public static class NotBefore extends TeaModel {
@com.aliyun.core.annotation.NameInMap("End")
private String end;
@com.aliyun.core.annotation.NameInMap("Start")
private String start;
private NotBefore(Builder builder) {
this.end = builder.end;
this.start = builder.start;
}
public static Builder builder() {
return new Builder();
}
public static NotBefore create() {
return builder().build();
}
/**
* @return end
*/
public String getEnd() {
return this.end;
}
/**
* @return start
*/
public String getStart() {
return this.start;
}
public static final class Builder {
private String end;
private String start;
/**
* The latest scheduled end time for the system event. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
*/
public Builder end(String end) {
this.end = end;
return this;
}
/**
* The earliest scheduled start time for the system event. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
*/
public Builder start(String start) {
this.start = start;
return this;
}
public NotBefore build() {
return new NotBefore(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 resource.
*/
public Builder key(String key) {
this.key = key;
return this;
}
/**
* The value of tag N of the resource.
*/
public Builder value(String value) {
this.value = value;
return this;
}
public Tag build() {
return new Tag(this);
}
}
}
}