diff --git a/src/org/kar/archidata/model/GenericTiming.java b/src/org/kar/archidata/model/GenericTiming.java index 7d8d91c..39dc9b6 100644 --- a/src/org/kar/archidata/model/GenericTiming.java +++ b/src/org/kar/archidata/model/GenericTiming.java @@ -7,6 +7,7 @@ import org.kar.archidata.annotation.DataNotRead; import org.kar.archidata.annotation.UpdateTimestamp; import org.kar.archidata.annotation.apiGenerator.ApiAccessLimitation; import org.kar.archidata.annotation.apiGenerator.ApiGenerationMode; +import org.kar.archidata.annotation.checker.ReadOnlyField; import com.fasterxml.jackson.annotation.JsonFormat; @@ -22,6 +23,7 @@ public class GenericTiming { @Schema(description = "Create time of the object", example = "2000-01-23T01:23:45.678+01:00") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX") @Nullable + @ReadOnlyField @ApiAccessLimitation(creatable = false, updatable = false) public Date createdAt = null; @DataNotRead @@ -30,6 +32,7 @@ public class GenericTiming { @Schema(description = "When update the object", example = "2000-01-23T00:23:45.678Z") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX") @Nullable + @ReadOnlyField @ApiAccessLimitation(creatable = false, updatable = false) public Date updatedAt = null; } diff --git a/src/org/kar/archidata/model/UUIDGenericData.java b/src/org/kar/archidata/model/UUIDGenericData.java index c6f2a5d..f6c9c9e 100644 --- a/src/org/kar/archidata/model/UUIDGenericData.java +++ b/src/org/kar/archidata/model/UUIDGenericData.java @@ -4,11 +4,11 @@ import java.util.UUID; import org.kar.archidata.annotation.apiGenerator.ApiAccessLimitation; import org.kar.archidata.annotation.apiGenerator.ApiGenerationMode; +import org.kar.archidata.annotation.checker.ReadOnlyField; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.persistence.Column; import jakarta.persistence.Id; -import jakarta.validation.constraints.NotNull; import jakarta.ws.rs.DefaultValue; @ApiGenerationMode(create = true, update = true) @@ -17,7 +17,7 @@ public class UUIDGenericData extends GenericTiming { @DefaultValue("(UUID_TO_BIN(UUID(), TRUE))") @Column(nullable = false, unique = true) @Schema(description = "Unique UUID of the object", example = "e6b33c1c-d24d-11ee-b616-02420a030102") - @NotNull + @ReadOnlyField @ApiAccessLimitation(creatable = false, updatable = false) public UUID uuid = null; } diff --git a/src/org/kar/archidata/model/UUIDGenericDataSoftDelete.java b/src/org/kar/archidata/model/UUIDGenericDataSoftDelete.java index 2b6a82f..226f2d2 100644 --- a/src/org/kar/archidata/model/UUIDGenericDataSoftDelete.java +++ b/src/org/kar/archidata/model/UUIDGenericDataSoftDelete.java @@ -4,6 +4,7 @@ import org.kar.archidata.annotation.DataDeleted; import org.kar.archidata.annotation.DataNotRead; import org.kar.archidata.annotation.apiGenerator.ApiAccessLimitation; import org.kar.archidata.annotation.apiGenerator.ApiGenerationMode; +import org.kar.archidata.annotation.checker.ReadOnlyField; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.annotation.Nullable; @@ -18,6 +19,7 @@ public class UUIDGenericDataSoftDelete extends UUIDGenericData { @DataDeleted @Schema(description = "Deleted state", hidden = true) @Nullable + @ReadOnlyField @ApiAccessLimitation(creatable = false, updatable = false) public Boolean deleted = null; }