From e536d11fc121f32215d3d7aaafda2ef6f87efa48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Al=C5=BEbeta=20Hajn=C3=A1?= <xhajna@fi.muni.cz> Date: Sun, 16 Apr 2023 16:46:33 +0200 Subject: [PATCH] feat(core): validaion annotations --- .../java/cz/muni/pa165/data/model/CarComponent.java | 5 ++++- .../java/cz/muni/pa165/data/model/Department.java | 3 ++- .../main/java/cz/muni/pa165/data/model/Driver.java | 13 ++++++++++--- .../java/cz/muni/pa165/data/model/Engineer.java | 5 +++-- 4 files changed, 19 insertions(+), 7 deletions(-) diff --git a/core/src/main/java/cz/muni/pa165/data/model/CarComponent.java b/core/src/main/java/cz/muni/pa165/data/model/CarComponent.java index 8876317..f5641c0 100644 --- a/core/src/main/java/cz/muni/pa165/data/model/CarComponent.java +++ b/core/src/main/java/cz/muni/pa165/data/model/CarComponent.java @@ -4,6 +4,8 @@ import cz.muni.pa165.data.enums.ComponentTypeEnum; import jakarta.annotation.Nonnull; import jakarta.annotation.Nullable; import jakarta.persistence.*; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.Positive; import java.io.Serializable; import java.util.Objects; @@ -18,9 +20,10 @@ public class CarComponent extends DomainObject implements Serializable { private ComponentTypeEnum componentType; @Nonnull + @Positive private Double weight; - @Nonnull + @NotEmpty private String information; @ManyToOne(fetch = FetchType.LAZY) diff --git a/core/src/main/java/cz/muni/pa165/data/model/Department.java b/core/src/main/java/cz/muni/pa165/data/model/Department.java index 9e2726f..6914da6 100644 --- a/core/src/main/java/cz/muni/pa165/data/model/Department.java +++ b/core/src/main/java/cz/muni/pa165/data/model/Department.java @@ -3,6 +3,7 @@ package cz.muni.pa165.data.model; import jakarta.annotation.Nonnull; import jakarta.annotation.Nullable; import jakarta.persistence.*; +import jakarta.validation.constraints.NotEmpty; import java.io.Serializable; import java.util.Objects; @@ -12,7 +13,7 @@ import java.util.Set; @Table(name = "department") public class Department extends DomainObject implements Serializable { - @Nonnull + @NotEmpty private String specialization; @OneToMany(fetch = FetchType.LAZY, diff --git a/core/src/main/java/cz/muni/pa165/data/model/Driver.java b/core/src/main/java/cz/muni/pa165/data/model/Driver.java index d5058f4..efa7bad 100644 --- a/core/src/main/java/cz/muni/pa165/data/model/Driver.java +++ b/core/src/main/java/cz/muni/pa165/data/model/Driver.java @@ -4,6 +4,10 @@ import cz.muni.pa165.data.enums.CharacteristicsEnum; import jakarta.annotation.Nonnull; import jakarta.annotation.Nullable; import jakarta.persistence.*; +import jakarta.validation.constraints.Max; +import jakarta.validation.constraints.Min; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.Past; import java.io.Serializable; import java.time.LocalDate; @@ -14,19 +18,22 @@ import java.util.Set; @Table(name = "driver") public class Driver extends DomainObject implements Serializable { - @Nonnull + @NotEmpty private String name; - @Nonnull + @NotEmpty private String surname; @Nullable + @Min(100) + @Max(300) private Integer height; @Nullable + @Past private LocalDate birthday; - @Nonnull + @NotEmpty private String nationality; @ElementCollection(targetClass = CharacteristicsEnum.class) diff --git a/core/src/main/java/cz/muni/pa165/data/model/Engineer.java b/core/src/main/java/cz/muni/pa165/data/model/Engineer.java index 050f88c..b427f07 100644 --- a/core/src/main/java/cz/muni/pa165/data/model/Engineer.java +++ b/core/src/main/java/cz/muni/pa165/data/model/Engineer.java @@ -3,6 +3,7 @@ package cz.muni.pa165.data.model; import jakarta.annotation.Nonnull; import jakarta.annotation.Nullable; import jakarta.persistence.*; +import jakarta.validation.constraints.NotEmpty; import java.io.Serializable; import java.util.Objects; @@ -11,10 +12,10 @@ import java.util.Objects; @Table(name = "engineer") public class Engineer extends DomainObject implements Serializable { - @Nonnull + @NotEmpty private String name; - @Nonnull + @NotEmpty private String surname; @ManyToOne(fetch = FetchType.LAZY) -- GitLab