Matthias Andreas Benkard | d9b9588 | 2020-01-24 11:42:49 +0100 | [diff] [blame] | 1 | package eu.mulk.mulkcms2.benki.users; |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 2 | |
Matthias Andreas Benkard | d9b9588 | 2020-01-24 11:42:49 +0100 | [diff] [blame] | 3 | import eu.mulk.mulkcms2.benki.accesscontrol.Role; |
Matthias Andreas Benkard | 35cb159 | 2020-01-24 11:05:20 +0100 | [diff] [blame] | 4 | import io.quarkus.hibernate.orm.panache.PanacheEntityBase; |
Matthias Andreas Benkard | e3bc3ee | 2023-08-06 16:21:11 +0200 | [diff] [blame^] | 5 | import jakarta.persistence.Column; |
| 6 | import jakarta.persistence.Entity; |
| 7 | import jakarta.persistence.FetchType; |
| 8 | import jakarta.persistence.Id; |
| 9 | import jakarta.persistence.IdClass; |
| 10 | import jakarta.persistence.JoinColumn; |
| 11 | import jakarta.persistence.ManyToOne; |
| 12 | import jakarta.persistence.Table; |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 13 | |
| 14 | @Entity |
Matthias Andreas Benkard | 57c9a8a | 2020-01-24 19:09:38 +0100 | [diff] [blame] | 15 | @Table(name = "user_roles", schema = "benki") |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 16 | @IdClass(UserRolePK.class) |
Matthias Andreas Benkard | 35cb159 | 2020-01-24 11:05:20 +0100 | [diff] [blame] | 17 | public class UserRole extends PanacheEntityBase { |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 18 | |
| 19 | @Id |
| 20 | @Column(name = "user", nullable = false) |
Matthias Andreas Benkard | 35cb159 | 2020-01-24 11:05:20 +0100 | [diff] [blame] | 21 | public int userId; |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 22 | |
| 23 | @Id |
| 24 | @Column(name = "role", nullable = false) |
Matthias Andreas Benkard | 35cb159 | 2020-01-24 11:05:20 +0100 | [diff] [blame] | 25 | public int roleId; |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 26 | |
Matthias Andreas Benkard | aa75480 | 2020-01-24 11:55:26 +0100 | [diff] [blame] | 27 | @ManyToOne(fetch = FetchType.LAZY) |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 28 | @JoinColumn(name = "user", referencedColumnName = "id", nullable = false) |
Matthias Andreas Benkard | 35cb159 | 2020-01-24 11:05:20 +0100 | [diff] [blame] | 29 | public User user; |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 30 | |
Matthias Andreas Benkard | aa75480 | 2020-01-24 11:55:26 +0100 | [diff] [blame] | 31 | @ManyToOne(fetch = FetchType.LAZY) |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 32 | @JoinColumn(name = "role", referencedColumnName = "id", nullable = false) |
Matthias Andreas Benkard | 35cb159 | 2020-01-24 11:05:20 +0100 | [diff] [blame] | 33 | public Role role; |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 34 | } |