com.huaweicloud.sdk.er.v3.model.AttachmentDetails Maven / Gradle / Ivy
package com.huaweicloud.sdk.er.v3.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.time.OffsetDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.function.Consumer;
/**
* AttachmentDetails
*/
public class AttachmentDetails {
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "id")
private String id;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "name")
private String name;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "description")
private String description;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "state")
private String state;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "created_at")
private OffsetDateTime createdAt;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "updated_at")
private OffsetDateTime updatedAt;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "tags")
private List tags = null;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "project_id")
private String projectId;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "er_id")
private String erId;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "resource_id")
private String resourceId;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "resource_type")
private String resourceType;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "resource_project_id")
private String resourceProjectId;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "associated")
private Boolean associated;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "route_table_id")
private String routeTableId;
public AttachmentDetails withId(String id) {
this.id = id;
return this;
}
/**
* 连接ID
* @return id
*/
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public AttachmentDetails withName(String name) {
this.name = name;
return this;
}
/**
* 连接名字
* @return name
*/
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public AttachmentDetails withDescription(String description) {
this.description = description;
return this;
}
/**
* 描述信息
* @return description
*/
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public AttachmentDetails withState(String state) {
this.state = state;
return this;
}
/**
* 连接状态:pending|available|modifying|deleting|deleted|failed|pending_acceptance|rejected|initiating_request|freezed
* @return state
*/
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
public AttachmentDetails withCreatedAt(OffsetDateTime createdAt) {
this.createdAt = createdAt;
return this;
}
/**
* 创建时间
* @return createdAt
*/
public OffsetDateTime getCreatedAt() {
return createdAt;
}
public void setCreatedAt(OffsetDateTime createdAt) {
this.createdAt = createdAt;
}
public AttachmentDetails withUpdatedAt(OffsetDateTime updatedAt) {
this.updatedAt = updatedAt;
return this;
}
/**
* 更新时间
* @return updatedAt
*/
public OffsetDateTime getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(OffsetDateTime updatedAt) {
this.updatedAt = updatedAt;
}
public AttachmentDetails withTags(List tags) {
this.tags = tags;
return this;
}
public AttachmentDetails addTagsItem(Tag tagsItem) {
if (this.tags == null) {
this.tags = new ArrayList<>();
}
this.tags.add(tagsItem);
return this;
}
public AttachmentDetails withTags(Consumer> tagsSetter) {
if (this.tags == null) {
this.tags = new ArrayList<>();
}
tagsSetter.accept(this.tags);
return this;
}
/**
* 企业路由器关联tag
* @return tags
*/
public List getTags() {
return tags;
}
public void setTags(List tags) {
this.tags = tags;
}
public AttachmentDetails withProjectId(String projectId) {
this.projectId = projectId;
return this;
}
/**
* 项目ID
* @return projectId
*/
public String getProjectId() {
return projectId;
}
public void setProjectId(String projectId) {
this.projectId = projectId;
}
public AttachmentDetails withErId(String erId) {
this.erId = erId;
return this;
}
/**
* er id
* @return erId
*/
public String getErId() {
return erId;
}
public void setErId(String erId) {
this.erId = erId;
}
public AttachmentDetails withResourceId(String resourceId) {
this.resourceId = resourceId;
return this;
}
/**
* 内部连接关联的资源ID
* @return resourceId
*/
public String getResourceId() {
return resourceId;
}
public void setResourceId(String resourceId) {
this.resourceId = resourceId;
}
public AttachmentDetails withResourceType(String resourceType) {
this.resourceType = resourceType;
return this;
}
/**
* 内部连接关联的资源类型: - vgw:云专线的虚拟网关 - vpn:vpn网关 - - peering:对等连接,通过云连接CC加载不同区域的企业路由器来创建“对等连接(Peering)”连接 - - - vpc:虚拟私有云 -
* @return resourceType
*/
public String getResourceType() {
return resourceType;
}
public void setResourceType(String resourceType) {
this.resourceType = resourceType;
}
public AttachmentDetails withResourceProjectId(String resourceProjectId) {
this.resourceProjectId = resourceProjectId;
return this;
}
/**
* 资源所属项目ID
* @return resourceProjectId
*/
public String getResourceProjectId() {
return resourceProjectId;
}
public void setResourceProjectId(String resourceProjectId) {
this.resourceProjectId = resourceProjectId;
}
public AttachmentDetails withAssociated(Boolean associated) {
this.associated = associated;
return this;
}
/**
* 表示此连接是否被关联
* @return associated
*/
public Boolean getAssociated() {
return associated;
}
public void setAssociated(Boolean associated) {
this.associated = associated;
}
public AttachmentDetails withRouteTableId(String routeTableId) {
this.routeTableId = routeTableId;
return this;
}
/**
* 关联路由表id
* @return routeTableId
*/
public String getRouteTableId() {
return routeTableId;
}
public void setRouteTableId(String routeTableId) {
this.routeTableId = routeTableId;
}
@Override
public boolean equals(java.lang.Object obj) {
if (this == obj) {
return true;
}
if (obj == null || getClass() != obj.getClass()) {
return false;
}
AttachmentDetails that = (AttachmentDetails) obj;
return Objects.equals(this.id, that.id) && Objects.equals(this.name, that.name)
&& Objects.equals(this.description, that.description) && Objects.equals(this.state, that.state)
&& Objects.equals(this.createdAt, that.createdAt) && Objects.equals(this.updatedAt, that.updatedAt)
&& Objects.equals(this.tags, that.tags) && Objects.equals(this.projectId, that.projectId)
&& Objects.equals(this.erId, that.erId) && Objects.equals(this.resourceId, that.resourceId)
&& Objects.equals(this.resourceType, that.resourceType)
&& Objects.equals(this.resourceProjectId, that.resourceProjectId)
&& Objects.equals(this.associated, that.associated) && Objects.equals(this.routeTableId, that.routeTableId);
}
@Override
public int hashCode() {
return Objects.hash(id,
name,
description,
state,
createdAt,
updatedAt,
tags,
projectId,
erId,
resourceId,
resourceType,
resourceProjectId,
associated,
routeTableId);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class AttachmentDetails {\n");
sb.append(" id: ").append(toIndentedString(id)).append("\n");
sb.append(" name: ").append(toIndentedString(name)).append("\n");
sb.append(" description: ").append(toIndentedString(description)).append("\n");
sb.append(" state: ").append(toIndentedString(state)).append("\n");
sb.append(" createdAt: ").append(toIndentedString(createdAt)).append("\n");
sb.append(" updatedAt: ").append(toIndentedString(updatedAt)).append("\n");
sb.append(" tags: ").append(toIndentedString(tags)).append("\n");
sb.append(" projectId: ").append(toIndentedString(projectId)).append("\n");
sb.append(" erId: ").append(toIndentedString(erId)).append("\n");
sb.append(" resourceId: ").append(toIndentedString(resourceId)).append("\n");
sb.append(" resourceType: ").append(toIndentedString(resourceType)).append("\n");
sb.append(" resourceProjectId: ").append(toIndentedString(resourceProjectId)).append("\n");
sb.append(" associated: ").append(toIndentedString(associated)).append("\n");
sb.append(" routeTableId: ").append(toIndentedString(routeTableId)).append("\n");
sb.append("}");
return sb.toString();
}
/**
* Convert the given object to string with each line indented by 4 spaces
* (except the first line).
*/
private String toIndentedString(java.lang.Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
}