com.g42cloud.sdk.er.v3.model.Propagation Maven / Gradle / Ivy
The newest version!
package com.g42cloud.sdk.er.v3.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.time.OffsetDateTime;
import java.util.Objects;
import java.util.function.Consumer;
/**
* 传播详情
*/
public class Propagation {
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "id")
private String id;
@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 = "route_table_id")
private String routeTableId;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "attachment_id")
private String attachmentId;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "resource_type")
private String resourceType;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "resource_id")
private String resourceId;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "route_policy")
private ImportRoutePolicy routePolicy;
@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;
public Propagation withId(String id) {
this.id = id;
return this;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Propagation withProjectId(String projectId) {
this.projectId = projectId;
return this;
}
public String getProjectId() {
return projectId;
}
public void setProjectId(String projectId) {
this.projectId = projectId;
}
public Propagation withErId(String erId) {
this.erId = erId;
return this;
}
public String getErId() {
return erId;
}
public void setErId(String erId) {
this.erId = erId;
}
public Propagation withRouteTableId(String routeTableId) {
this.routeTableId = routeTableId;
return this;
}
public String getRouteTableId() {
return routeTableId;
}
public void setRouteTableId(String routeTableId) {
this.routeTableId = routeTableId;
}
public Propagation withAttachmentId(String attachmentId) {
this.attachmentId = attachmentId;
return this;
}
public String getAttachmentId() {
return attachmentId;
}
public void setAttachmentId(String attachmentId) {
this.attachmentId = attachmentId;
}
public Propagation withResourceType(String resourceType) {
this.resourceType = resourceType;
return this;
}
public String getResourceType() {
return resourceType;
}
public void setResourceType(String resourceType) {
this.resourceType = resourceType;
}
public Propagation withResourceId(String resourceId) {
this.resourceId = resourceId;
return this;
}
public String getResourceId() {
return resourceId;
}
public void setResourceId(String resourceId) {
this.resourceId = resourceId;
}
public Propagation withRoutePolicy(ImportRoutePolicy routePolicy) {
this.routePolicy = routePolicy;
return this;
}
public Propagation withRoutePolicy(Consumer routePolicySetter) {
if (this.routePolicy == null) {
this.routePolicy = new ImportRoutePolicy();
routePolicySetter.accept(this.routePolicy);
}
return this;
}
public ImportRoutePolicy getRoutePolicy() {
return routePolicy;
}
public void setRoutePolicy(ImportRoutePolicy routePolicy) {
this.routePolicy = routePolicy;
}
public Propagation withState(String state) {
this.state = state;
return this;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
public Propagation withCreatedAt(OffsetDateTime createdAt) {
this.createdAt = createdAt;
return this;
}
public OffsetDateTime getCreatedAt() {
return createdAt;
}
public void setCreatedAt(OffsetDateTime createdAt) {
this.createdAt = createdAt;
}
public Propagation withUpdatedAt(OffsetDateTime updatedAt) {
this.updatedAt = updatedAt;
return this;
}
public OffsetDateTime getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(OffsetDateTime updatedAt) {
this.updatedAt = updatedAt;
}
@Override
public boolean equals(java.lang.Object obj) {
if (this == obj) {
return true;
}
if (obj == null || getClass() != obj.getClass()) {
return false;
}
Propagation that = (Propagation) obj;
return Objects.equals(this.id, that.id) && Objects.equals(this.projectId, that.projectId)
&& Objects.equals(this.erId, that.erId) && Objects.equals(this.routeTableId, that.routeTableId)
&& Objects.equals(this.attachmentId, that.attachmentId)
&& Objects.equals(this.resourceType, that.resourceType) && Objects.equals(this.resourceId, that.resourceId)
&& Objects.equals(this.routePolicy, that.routePolicy) && Objects.equals(this.state, that.state)
&& Objects.equals(this.createdAt, that.createdAt) && Objects.equals(this.updatedAt, that.updatedAt);
}
@Override
public int hashCode() {
return Objects.hash(id,
projectId,
erId,
routeTableId,
attachmentId,
resourceType,
resourceId,
routePolicy,
state,
createdAt,
updatedAt);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class Propagation {\n");
sb.append(" id: ").append(toIndentedString(id)).append("\n");
sb.append(" projectId: ").append(toIndentedString(projectId)).append("\n");
sb.append(" erId: ").append(toIndentedString(erId)).append("\n");
sb.append(" routeTableId: ").append(toIndentedString(routeTableId)).append("\n");
sb.append(" attachmentId: ").append(toIndentedString(attachmentId)).append("\n");
sb.append(" resourceType: ").append(toIndentedString(resourceType)).append("\n");
sb.append(" resourceId: ").append(toIndentedString(resourceId)).append("\n");
sb.append(" routePolicy: ").append(toIndentedString(routePolicy)).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("}");
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 ");
}
}