diff --git a/src/main/java/org/dependencytrack/model/AffectedVersionAttribution.java b/src/main/java/org/dependencytrack/model/AffectedVersionAttribution.java index 4f9d59cfe6..781a6324f9 100644 --- a/src/main/java/org/dependencytrack/model/AffectedVersionAttribution.java +++ b/src/main/java/org/dependencytrack/model/AffectedVersionAttribution.java @@ -20,6 +20,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.v3.oas.annotations.media.Schema; import org.dependencytrack.model.Vulnerability.Source; import javax.jdo.annotations.Column; @@ -64,10 +65,12 @@ public class AffectedVersionAttribution implements Serializable { @Persistent @Column(name = "FIRST_SEEN", allowsNull = "false") + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date firstSeen; @Persistent @Column(name = "LAST_SEEN", allowsNull = "false") + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date lastSeen; @Persistent diff --git a/src/main/java/org/dependencytrack/model/AnalysisComment.java b/src/main/java/org/dependencytrack/model/AnalysisComment.java index 19627b8981..74d3286a46 100644 --- a/src/main/java/org/dependencytrack/model/AnalysisComment.java +++ b/src/main/java/org/dependencytrack/model/AnalysisComment.java @@ -22,6 +22,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import io.swagger.v3.oas.annotations.media.Schema; import javax.jdo.annotations.Column; import javax.jdo.annotations.IdGeneratorStrategy; @@ -57,6 +58,7 @@ public class AnalysisComment implements Serializable { @Persistent(defaultFetchGroup = "true") @Column(name = "TIMESTAMP", allowsNull = "false") @NotNull + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date timestamp; @Persistent(defaultFetchGroup = "true") diff --git a/src/main/java/org/dependencytrack/model/Bom.java b/src/main/java/org/dependencytrack/model/Bom.java index 437a02fe2f..1103298e8f 100644 --- a/src/main/java/org/dependencytrack/model/Bom.java +++ b/src/main/java/org/dependencytrack/model/Bom.java @@ -20,6 +20,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.v3.oas.annotations.media.Schema; import javax.jdo.annotations.Column; import javax.jdo.annotations.IdGeneratorStrategy; @@ -73,6 +74,7 @@ public String getFormatLongName() { @Persistent @Column(name = "IMPORTED", allowsNull = "false") @NotNull + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date imported; @Persistent diff --git a/src/main/java/org/dependencytrack/model/DependencyMetrics.java b/src/main/java/org/dependencytrack/model/DependencyMetrics.java index f92d224808..ce0e0d3a80 100644 --- a/src/main/java/org/dependencytrack/model/DependencyMetrics.java +++ b/src/main/java/org/dependencytrack/model/DependencyMetrics.java @@ -20,6 +20,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.v3.oas.annotations.media.Schema; import javax.jdo.annotations.Column; import javax.jdo.annotations.IdGeneratorStrategy; @@ -61,18 +62,22 @@ public class DependencyMetrics implements Serializable { @Persistent @Column(name = "CRITICAL") + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int critical; @Persistent @Column(name = "HIGH") + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int high; @Persistent @Column(name = "MEDIUM") + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int medium; @Persistent @Column(name = "LOW") + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int low; @Persistent @@ -167,12 +172,14 @@ public class DependencyMetrics implements Serializable { @Column(name = "FIRST_OCCURRENCE", allowsNull = "false") @NotNull @Index(name = "DEPENDENCYMETRICS_FIRST_OCCURRENCE_IDX") + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date firstOccurrence; @Persistent @Column(name = "LAST_OCCURRENCE", allowsNull = "false") @NotNull @Index(name = "DEPENDENCYMETRICS_LAST_OCCURRENCE_IDX") + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date lastOccurrence; public long getId() { diff --git a/src/main/java/org/dependencytrack/model/FindingAttribution.java b/src/main/java/org/dependencytrack/model/FindingAttribution.java index f5e6a25559..202b9f3378 100644 --- a/src/main/java/org/dependencytrack/model/FindingAttribution.java +++ b/src/main/java/org/dependencytrack/model/FindingAttribution.java @@ -20,6 +20,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.v3.oas.annotations.media.Schema; import org.dependencytrack.tasks.scanners.AnalyzerIdentity; import javax.jdo.annotations.Column; @@ -55,6 +56,7 @@ public class FindingAttribution implements Serializable { @Persistent @Column(name = "ATTRIBUTED_ON", allowsNull = "false") @NotNull + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date attributedOn; @Persistent diff --git a/src/main/java/org/dependencytrack/model/PolicyViolation.java b/src/main/java/org/dependencytrack/model/PolicyViolation.java index 7a2b1614a5..4758286d71 100644 --- a/src/main/java/org/dependencytrack/model/PolicyViolation.java +++ b/src/main/java/org/dependencytrack/model/PolicyViolation.java @@ -22,6 +22,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.v3.oas.annotations.media.Schema; import javax.jdo.annotations.Column; import javax.jdo.annotations.IdGeneratorStrategy; @@ -79,6 +80,7 @@ public enum Type { @Persistent @Column(name = "TIMESTAMP", allowsNull = "false") + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date timestamp; @Persistent diff --git a/src/main/java/org/dependencytrack/model/PortfolioMetrics.java b/src/main/java/org/dependencytrack/model/PortfolioMetrics.java index 4136e56b2c..2e0a9b5287 100644 --- a/src/main/java/org/dependencytrack/model/PortfolioMetrics.java +++ b/src/main/java/org/dependencytrack/model/PortfolioMetrics.java @@ -52,22 +52,22 @@ public class PortfolioMetrics implements Serializable { @Persistent @Column(name = "CRITICAL") - @Schema(required = true) + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int critical; @Persistent @Column(name = "HIGH") - @Schema(required = true) + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int high; @Persistent @Column(name = "MEDIUM") - @Schema(required = true) + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int medium; @Persistent @Column(name = "LOW") - @Schema(required = true) + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int low; @Persistent @@ -178,14 +178,14 @@ public class PortfolioMetrics implements Serializable { @Column(name = "FIRST_OCCURRENCE", allowsNull = "false") @NotNull @Index(name = "PORTFOLIOMETRICS_FIRST_OCCURRENCE_IDX") - @Schema(requiredMode = Schema.RequiredMode.REQUIRED, type = "number") + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date firstOccurrence; @Persistent @Column(name = "LAST_OCCURRENCE", allowsNull = "false") @NotNull @Index(name = "PORTFOLIOMETRICS_LAST_OCCURRENCE_IDX") - @Schema(requiredMode = Schema.RequiredMode.REQUIRED, type = "number") + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date lastOccurrence; public long getId() { diff --git a/src/main/java/org/dependencytrack/model/Project.java b/src/main/java/org/dependencytrack/model/Project.java index f8fcae99d5..6a073a0946 100644 --- a/src/main/java/org/dependencytrack/model/Project.java +++ b/src/main/java/org/dependencytrack/model/Project.java @@ -244,6 +244,7 @@ public enum FetchGroup { @Persistent @Index(name = "PROJECT_LASTBOMIMPORT_IDX") @Column(name = "LAST_BOM_IMPORTED") + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date lastBomImport; /** diff --git a/src/main/java/org/dependencytrack/model/ProjectMetrics.java b/src/main/java/org/dependencytrack/model/ProjectMetrics.java index e6272824d3..22780f9655 100644 --- a/src/main/java/org/dependencytrack/model/ProjectMetrics.java +++ b/src/main/java/org/dependencytrack/model/ProjectMetrics.java @@ -51,27 +51,28 @@ public class ProjectMetrics implements Serializable { @Persistent @Column(name = "PROJECT_ID", allowsNull = "false") - @Schema(required = true) + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private Project project; @Persistent @Column(name = "CRITICAL") - @Schema(required = true) + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int critical; @Persistent @Column(name = "HIGH") - @Schema(required = true) + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int high; @Persistent @Column(name = "MEDIUM") - @Schema(required = true) + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int medium; @Persistent @Column(name = "LOW") @NotNull + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private int low; @Persistent @@ -174,14 +175,14 @@ public class ProjectMetrics implements Serializable { @Column(name = "FIRST_OCCURRENCE", allowsNull = "false") @NotNull @Index(name = "PROJECTMETRICS_FIRST_OCCURRENCE_IDX") - @Schema(requiredMode = Schema.RequiredMode.REQUIRED, type = "number") + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date firstOccurrence; @Persistent @Column(name = "LAST_OCCURRENCE", allowsNull = "false") @NotNull @Index(name = "PROJECTMETRICS_LAST_OCCURRENCE_IDX") - @Schema(requiredMode = Schema.RequiredMode.REQUIRED, type = "number") + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date lastOccurrence; public long getId() { diff --git a/src/main/java/org/dependencytrack/model/RepositoryMetaComponent.java b/src/main/java/org/dependencytrack/model/RepositoryMetaComponent.java index af0268f39c..4081bc5555 100644 --- a/src/main/java/org/dependencytrack/model/RepositoryMetaComponent.java +++ b/src/main/java/org/dependencytrack/model/RepositoryMetaComponent.java @@ -20,6 +20,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.v3.oas.annotations.media.Schema; import javax.jdo.annotations.Column; import javax.jdo.annotations.IdGeneratorStrategy; @@ -85,6 +86,7 @@ public class RepositoryMetaComponent implements Serializable { */ @Persistent @Column(name = "PUBLISHED") + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date published; /** @@ -94,6 +96,7 @@ public class RepositoryMetaComponent implements Serializable { @Column(name = "LAST_CHECK", allowsNull = "false") @Index(name = "REPOSITORY_META_COMPONENT_LASTCHECK_IDX") @NotNull + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date lastCheck; diff --git a/src/main/java/org/dependencytrack/model/Vex.java b/src/main/java/org/dependencytrack/model/Vex.java index f75ed84eaa..55a1d8b147 100644 --- a/src/main/java/org/dependencytrack/model/Vex.java +++ b/src/main/java/org/dependencytrack/model/Vex.java @@ -20,6 +20,8 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.v3.oas.annotations.media.Schema; + import javax.jdo.annotations.Column; import javax.jdo.annotations.IdGeneratorStrategy; import javax.jdo.annotations.PersistenceCapable; @@ -71,6 +73,7 @@ public String getFormatLongName() { @Persistent @Column(name = "IMPORTED", allowsNull = "false") @NotNull + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date imported; @Persistent diff --git a/src/main/java/org/dependencytrack/model/ViolationAnalysisComment.java b/src/main/java/org/dependencytrack/model/ViolationAnalysisComment.java index 63e78fa4eb..16d642eb45 100644 --- a/src/main/java/org/dependencytrack/model/ViolationAnalysisComment.java +++ b/src/main/java/org/dependencytrack/model/ViolationAnalysisComment.java @@ -22,6 +22,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import io.swagger.v3.oas.annotations.media.Schema; import javax.jdo.annotations.Column; import javax.jdo.annotations.IdGeneratorStrategy; @@ -57,6 +58,7 @@ public class ViolationAnalysisComment implements Serializable { @Persistent(defaultFetchGroup = "true") @Column(name = "TIMESTAMP", allowsNull = "false") @NotNull + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date timestamp; @Persistent(defaultFetchGroup = "true") diff --git a/src/main/java/org/dependencytrack/model/VulnerabilityMetrics.java b/src/main/java/org/dependencytrack/model/VulnerabilityMetrics.java index 413ceee95f..25658e770a 100644 --- a/src/main/java/org/dependencytrack/model/VulnerabilityMetrics.java +++ b/src/main/java/org/dependencytrack/model/VulnerabilityMetrics.java @@ -20,6 +20,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.v3.oas.annotations.media.Schema; import javax.jdo.annotations.Column; import javax.jdo.annotations.IdGeneratorStrategy; @@ -62,6 +63,7 @@ public class VulnerabilityMetrics implements Serializable { @Persistent @Column(name = "MEASURED_AT", allowsNull = "false") @NotNull + @Schema(type = "integer", format = "int64", requiredMode = Schema.RequiredMode.REQUIRED, description = "UNIX epoch timestamp in milliseconds") private Date measuredAt; public long getId() { diff --git a/src/main/java/org/dependencytrack/resources/v1/problems/ProblemDetails.java b/src/main/java/org/dependencytrack/resources/v1/problems/ProblemDetails.java index f5c1391965..eabf4a9021 100644 --- a/src/main/java/org/dependencytrack/resources/v1/problems/ProblemDetails.java +++ b/src/main/java/org/dependencytrack/resources/v1/problems/ProblemDetails.java @@ -45,21 +45,21 @@ public class ProblemDetails { @Schema( description = "HTTP status code generated by the origin server for this occurrence of the problem", example = "400", - required = true + requiredMode = Schema.RequiredMode.REQUIRED ) private Integer status; @Schema( description = "Short, human-readable summary of the problem type", example = "Example title", - required = true + requiredMode = Schema.RequiredMode.REQUIRED ) private String title; @Schema( description = "Human-readable explanation specific to this occurrence of the problem", example = "Example detail", - required = true + requiredMode = Schema.RequiredMode.REQUIRED ) private String detail; diff --git a/src/main/java/org/dependencytrack/resources/v1/vo/IsTokenBeingProcessedResponse.java b/src/main/java/org/dependencytrack/resources/v1/vo/IsTokenBeingProcessedResponse.java index 4e354c936d..1aae286d3c 100644 --- a/src/main/java/org/dependencytrack/resources/v1/vo/IsTokenBeingProcessedResponse.java +++ b/src/main/java/org/dependencytrack/resources/v1/vo/IsTokenBeingProcessedResponse.java @@ -26,7 +26,7 @@ public class IsTokenBeingProcessedResponse implements Serializable { private static final long serialVersionUID = -7592468766586686855L; - @Schema(required = true) + @Schema(requiredMode = Schema.RequiredMode.REQUIRED) private Boolean processing; public void setProcessing(Boolean processing) {