diff --git a/core/src/main/java/cz/muni/pa165/data/model/Car.java b/core/src/main/java/cz/muni/pa165/data/model/Car.java index cfd36d0e767f35be14f300ccdc7a8271e7e4168e..26bd28b436b3549c42ae944ee8608c6c31f11abc 100644 --- a/core/src/main/java/cz/muni/pa165/data/model/Car.java +++ b/core/src/main/java/cz/muni/pa165/data/model/Car.java @@ -11,7 +11,7 @@ import java.util.Set; @Entity @Table(name = "car") -public class Car extends DomainObject implements Serializable { +public class Car extends DomainObject<Long> implements Serializable { @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "driver_id") @Nullable 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 f5641c0d22840e9cd6737e45d1d9e8ca716fa621..866127df8807a86635ed95a0a510d6197bf04a94 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 @@ -12,7 +12,7 @@ import java.util.Objects; @Entity @Table(name = "car_component") -public class CarComponent extends DomainObject implements Serializable { +public class CarComponent extends DomainObject<Long> implements Serializable { @Column(name = "component_type") @Enumerated(EnumType.STRING) 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 ca27780d3ef0eb0a4a98055a5e5b18a4a43db1c7..8d4ce31ad8a5df7aa1a3df657d8baed3a5254032 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 @@ -10,7 +10,7 @@ import java.util.Set; @Entity @Table(name = "department") -public class Department extends DomainObject implements Serializable { +public class Department extends DomainObject<Long> implements Serializable { @NotEmpty private String specialization; diff --git a/core/src/main/java/cz/muni/pa165/data/model/DomainObject.java b/core/src/main/java/cz/muni/pa165/data/model/DomainObject.java index 1fa12590cf56406a08fb1a554ecef9e94b484014..7071f57d04baa00e3b7fda2e2f2af36deac209c6 100644 --- a/core/src/main/java/cz/muni/pa165/data/model/DomainObject.java +++ b/core/src/main/java/cz/muni/pa165/data/model/DomainObject.java @@ -6,20 +6,22 @@ import jakarta.persistence.GenerationType; import jakarta.persistence.Id; import jakarta.persistence.MappedSuperclass; +import java.io.Serializable; + /** * @author Michal Badin */ @MappedSuperclass -public abstract class DomainObject { +public abstract class DomainObject<PK extends Serializable> implements Serializable { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - private Long id; + private PK id; - public Long getId() { + public PK getId() { return id; } - public void setId(Long id) { + public void setId(PK id) { this.id = id; } } 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 efa7bad06caf0c425cf334b18f929505357dd926..6d401bf117203f4389c7969f46cf046dab681c80 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 @@ -16,7 +16,7 @@ import java.util.Set; @Entity @Table(name = "driver") -public class Driver extends DomainObject implements Serializable { +public class Driver extends DomainObject<Long> implements Serializable { @NotEmpty private String name; 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 7fa3623617173ca276db256d65cde8716efa63c8..ca2551ed8d6d298249a4617ddc15f15cb190eb83 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 @@ -9,7 +9,7 @@ import java.util.Objects; @Entity @Table(name = "engineer") -public class Engineer extends DomainObject implements Serializable { +public class Engineer extends DomainObject<Long> implements Serializable { @NotEmpty private String name;