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.JsonTypeName; import java.time.OffsetDateTime; import org.springframework.format.annotation.DateTimeFormat; 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; /** * CreateKBPublishSnapshot201ResponseAllOfData */ @JsonTypeName("createKBPublishSnapshot_201_response_allOf_data") @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 CreateKBPublishSnapshot201ResponseAllOfData implements Serializable { private static final long serialVersionUID = 1L; private @Nullable String snapshotId; private @Nullable Integer version; private @Nullable String packageHash; @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) private @Nullable OffsetDateTime expiresAt; public CreateKBPublishSnapshot201ResponseAllOfData snapshotId(@Nullable String snapshotId) { this.snapshotId = snapshotId; return this; } /** * Get snapshotId * @return snapshotId */ @Schema(name = "snapshotId", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("snapshotId") public @Nullable String getSnapshotId() { return snapshotId; } @JsonProperty("snapshotId") public void setSnapshotId(@Nullable String snapshotId) { this.snapshotId = snapshotId; } public CreateKBPublishSnapshot201ResponseAllOfData version(@Nullable Integer version) { this.version = version; return this; } /** * Get version * @return version */ @Schema(name = "version", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("version") public @Nullable Integer getVersion() { return version; } @JsonProperty("version") public void setVersion(@Nullable Integer version) { this.version = version; } public CreateKBPublishSnapshot201ResponseAllOfData packageHash(@Nullable String packageHash) { this.packageHash = packageHash; return this; } /** * Get packageHash * @return packageHash */ @Schema(name = "packageHash", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("packageHash") public @Nullable String getPackageHash() { return packageHash; } @JsonProperty("packageHash") public void setPackageHash(@Nullable String packageHash) { this.packageHash = packageHash; } public CreateKBPublishSnapshot201ResponseAllOfData expiresAt(@Nullable OffsetDateTime expiresAt) { this.expiresAt = expiresAt; return this; } /** * Get expiresAt * @return expiresAt */ @Valid @Schema(name = "expiresAt", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("expiresAt") public @Nullable OffsetDateTime getExpiresAt() { return expiresAt; } @JsonProperty("expiresAt") public void setExpiresAt(@Nullable OffsetDateTime expiresAt) { this.expiresAt = expiresAt; } @Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } CreateKBPublishSnapshot201ResponseAllOfData createKBPublishSnapshot201ResponseAllOfData = (CreateKBPublishSnapshot201ResponseAllOfData) o; return Objects.equals(this.snapshotId, createKBPublishSnapshot201ResponseAllOfData.snapshotId) && Objects.equals(this.version, createKBPublishSnapshot201ResponseAllOfData.version) && Objects.equals(this.packageHash, createKBPublishSnapshot201ResponseAllOfData.packageHash) && Objects.equals(this.expiresAt, createKBPublishSnapshot201ResponseAllOfData.expiresAt); } @Override public int hashCode() { return Objects.hash(snapshotId, version, packageHash, expiresAt); } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class CreateKBPublishSnapshot201ResponseAllOfData {\n"); sb.append(" snapshotId: ").append(toIndentedString(snapshotId)).append("\n"); sb.append(" version: ").append(toIndentedString(version)).append("\n"); sb.append(" packageHash: ").append(toIndentedString(packageHash)).append("\n"); sb.append(" expiresAt: ").append(toIndentedString(expiresAt)).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 "); } }