287 lines
8.3 KiB
Java
287 lines
8.3 KiB
Java
package com.muse.dto;
|
|
|
|
import java.net.URI;
|
|
import java.util.Objects;
|
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
|
import com.fasterxml.jackson.annotation.JsonCreator;
|
|
import com.fasterxml.jackson.annotation.JsonValue;
|
|
import com.muse.dto.GrayRulesConfig;
|
|
import org.springframework.lang.Nullable;
|
|
import java.io.Serializable;
|
|
import java.time.OffsetDateTime;
|
|
import jakarta.validation.Valid;
|
|
import jakarta.validation.constraints.*;
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
|
|
|
|
|
import java.util.*;
|
|
import jakarta.annotation.Generated;
|
|
|
|
/**
|
|
* MetaSchemaActivateRequest
|
|
*/
|
|
|
|
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2026-05-24T16:47:40.290595+08:00[Asia/Shanghai]", comments = "Generator version: 7.22.0")
|
|
public class MetaSchemaActivateRequest implements Serializable {
|
|
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
private String commandId;
|
|
|
|
private String reason;
|
|
|
|
/**
|
|
* 激活模式:全量或灰度
|
|
*/
|
|
public enum ActivateModeEnum {
|
|
FULL("full"),
|
|
|
|
GRAY("gray");
|
|
|
|
private final String value;
|
|
|
|
ActivateModeEnum(String value) {
|
|
this.value = value;
|
|
}
|
|
|
|
@JsonValue
|
|
public String getValue() {
|
|
return value;
|
|
}
|
|
|
|
@Override
|
|
public String toString() {
|
|
return String.valueOf(value);
|
|
}
|
|
|
|
@JsonCreator
|
|
public static ActivateModeEnum fromValue(String value) {
|
|
for (ActivateModeEnum b : ActivateModeEnum.values()) {
|
|
if (b.value.equals(value)) {
|
|
return b;
|
|
}
|
|
}
|
|
throw new IllegalArgumentException("Unexpected value '" + value + "'");
|
|
}
|
|
}
|
|
|
|
private ActivateModeEnum activateMode = ActivateModeEnum.FULL;
|
|
|
|
private @Nullable GrayRulesConfig grayRules;
|
|
|
|
private Integer expectedActiveVersion;
|
|
|
|
private String validationResultId;
|
|
|
|
private String impactPreviewId;
|
|
|
|
public MetaSchemaActivateRequest() {
|
|
super();
|
|
}
|
|
|
|
/**
|
|
* Constructor with only required parameters
|
|
*/
|
|
public MetaSchemaActivateRequest(String commandId, String reason, Integer expectedActiveVersion, String validationResultId, String impactPreviewId) {
|
|
this.commandId = commandId;
|
|
this.reason = reason;
|
|
this.expectedActiveVersion = expectedActiveVersion;
|
|
this.validationResultId = validationResultId;
|
|
this.impactPreviewId = impactPreviewId;
|
|
}
|
|
|
|
public MetaSchemaActivateRequest commandId(String commandId) {
|
|
this.commandId = commandId;
|
|
return this;
|
|
}
|
|
|
|
/**
|
|
* 幂等键
|
|
* @return commandId
|
|
*/
|
|
@NotNull
|
|
@Schema(name = "commandId", description = "幂等键", requiredMode = Schema.RequiredMode.REQUIRED)
|
|
@JsonProperty("commandId")
|
|
public String getCommandId() {
|
|
return commandId;
|
|
}
|
|
|
|
@JsonProperty("commandId")
|
|
public void setCommandId(String commandId) {
|
|
this.commandId = commandId;
|
|
}
|
|
|
|
public MetaSchemaActivateRequest reason(String reason) {
|
|
this.reason = reason;
|
|
return this;
|
|
}
|
|
|
|
/**
|
|
* 激活理由
|
|
* @return reason
|
|
*/
|
|
@NotNull
|
|
@Schema(name = "reason", description = "激活理由", requiredMode = Schema.RequiredMode.REQUIRED)
|
|
@JsonProperty("reason")
|
|
public String getReason() {
|
|
return reason;
|
|
}
|
|
|
|
@JsonProperty("reason")
|
|
public void setReason(String reason) {
|
|
this.reason = reason;
|
|
}
|
|
|
|
public MetaSchemaActivateRequest activateMode(ActivateModeEnum activateMode) {
|
|
this.activateMode = activateMode;
|
|
return this;
|
|
}
|
|
|
|
/**
|
|
* 激活模式:全量或灰度
|
|
* @return activateMode
|
|
*/
|
|
|
|
@Schema(name = "activateMode", description = "激活模式:全量或灰度", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
|
@JsonProperty("activateMode")
|
|
public ActivateModeEnum getActivateMode() {
|
|
return activateMode;
|
|
}
|
|
|
|
@JsonProperty("activateMode")
|
|
public void setActivateMode(ActivateModeEnum activateMode) {
|
|
this.activateMode = activateMode;
|
|
}
|
|
|
|
public MetaSchemaActivateRequest grayRules(@Nullable GrayRulesConfig grayRules) {
|
|
this.grayRules = grayRules;
|
|
return this;
|
|
}
|
|
|
|
/**
|
|
* Get grayRules
|
|
* @return grayRules
|
|
*/
|
|
@Valid
|
|
@Schema(name = "grayRules", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
|
|
@JsonProperty("grayRules")
|
|
public @Nullable GrayRulesConfig getGrayRules() {
|
|
return grayRules;
|
|
}
|
|
|
|
@JsonProperty("grayRules")
|
|
public void setGrayRules(@Nullable GrayRulesConfig grayRules) {
|
|
this.grayRules = grayRules;
|
|
}
|
|
|
|
public MetaSchemaActivateRequest expectedActiveVersion(Integer expectedActiveVersion) {
|
|
this.expectedActiveVersion = expectedActiveVersion;
|
|
return this;
|
|
}
|
|
|
|
/**
|
|
* 期望当前激活版本,乐观锁
|
|
* @return expectedActiveVersion
|
|
*/
|
|
@NotNull
|
|
@Schema(name = "expectedActiveVersion", description = "期望当前激活版本,乐观锁", requiredMode = Schema.RequiredMode.REQUIRED)
|
|
@JsonProperty("expectedActiveVersion")
|
|
public Integer getExpectedActiveVersion() {
|
|
return expectedActiveVersion;
|
|
}
|
|
|
|
@JsonProperty("expectedActiveVersion")
|
|
public void setExpectedActiveVersion(Integer expectedActiveVersion) {
|
|
this.expectedActiveVersion = expectedActiveVersion;
|
|
}
|
|
|
|
public MetaSchemaActivateRequest validationResultId(String validationResultId) {
|
|
this.validationResultId = validationResultId;
|
|
return this;
|
|
}
|
|
|
|
/**
|
|
* 激活前校验结果引用 ID
|
|
* @return validationResultId
|
|
*/
|
|
@NotNull
|
|
@Schema(name = "validationResultId", description = "激活前校验结果引用 ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
|
@JsonProperty("validationResultId")
|
|
public String getValidationResultId() {
|
|
return validationResultId;
|
|
}
|
|
|
|
@JsonProperty("validationResultId")
|
|
public void setValidationResultId(String validationResultId) {
|
|
this.validationResultId = validationResultId;
|
|
}
|
|
|
|
public MetaSchemaActivateRequest impactPreviewId(String impactPreviewId) {
|
|
this.impactPreviewId = impactPreviewId;
|
|
return this;
|
|
}
|
|
|
|
/**
|
|
* 激活影响预览引用 ID
|
|
* @return impactPreviewId
|
|
*/
|
|
@NotNull
|
|
@Schema(name = "impactPreviewId", description = "激活影响预览引用 ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
|
@JsonProperty("impactPreviewId")
|
|
public String getImpactPreviewId() {
|
|
return impactPreviewId;
|
|
}
|
|
|
|
@JsonProperty("impactPreviewId")
|
|
public void setImpactPreviewId(String impactPreviewId) {
|
|
this.impactPreviewId = impactPreviewId;
|
|
}
|
|
|
|
@Override
|
|
public boolean equals(Object o) {
|
|
if (this == o) {
|
|
return true;
|
|
}
|
|
if (o == null || getClass() != o.getClass()) {
|
|
return false;
|
|
}
|
|
MetaSchemaActivateRequest metaSchemaActivateRequest = (MetaSchemaActivateRequest) o;
|
|
return Objects.equals(this.commandId, metaSchemaActivateRequest.commandId) &&
|
|
Objects.equals(this.reason, metaSchemaActivateRequest.reason) &&
|
|
Objects.equals(this.activateMode, metaSchemaActivateRequest.activateMode) &&
|
|
Objects.equals(this.grayRules, metaSchemaActivateRequest.grayRules) &&
|
|
Objects.equals(this.expectedActiveVersion, metaSchemaActivateRequest.expectedActiveVersion) &&
|
|
Objects.equals(this.validationResultId, metaSchemaActivateRequest.validationResultId) &&
|
|
Objects.equals(this.impactPreviewId, metaSchemaActivateRequest.impactPreviewId);
|
|
}
|
|
|
|
@Override
|
|
public int hashCode() {
|
|
return Objects.hash(commandId, reason, activateMode, grayRules, expectedActiveVersion, validationResultId, impactPreviewId);
|
|
}
|
|
|
|
@Override
|
|
public String toString() {
|
|
StringBuilder sb = new StringBuilder();
|
|
sb.append("class MetaSchemaActivateRequest {\n");
|
|
sb.append(" commandId: ").append(toIndentedString(commandId)).append("\n");
|
|
sb.append(" reason: ").append(toIndentedString(reason)).append("\n");
|
|
sb.append(" activateMode: ").append(toIndentedString(activateMode)).append("\n");
|
|
sb.append(" grayRules: ").append(toIndentedString(grayRules)).append("\n");
|
|
sb.append(" expectedActiveVersion: ").append(toIndentedString(expectedActiveVersion)).append("\n");
|
|
sb.append(" validationResultId: ").append(toIndentedString(validationResultId)).append("\n");
|
|
sb.append(" impactPreviewId: ").append(toIndentedString(impactPreviewId)).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(@Nullable Object o) {
|
|
return o == null ? "null" : o.toString().replace("\n", "\n ");
|
|
}
|
|
}
|
|
|