blob: d4c10bd814a4d8fa0a6463df0a586f3d9cebed90 [file] [log] [blame]
Matthias Andreas Benkardd9b95882020-01-24 11:42:49 +01001package eu.mulk.mulkcms2.benki.users;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +01002
Matthias Andreas Benkardd9b95882020-01-24 11:42:49 +01003import eu.mulk.mulkcms2.benki.accesscontrol.Role;
Matthias Andreas Benkard35cb1592020-01-24 11:05:20 +01004import io.quarkus.hibernate.orm.panache.PanacheEntityBase;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +01005import javax.persistence.Column;
6import javax.persistence.Entity;
7import javax.persistence.Id;
8import javax.persistence.IdClass;
9import javax.persistence.JoinColumn;
10import javax.persistence.ManyToOne;
11import javax.persistence.Table;
12
13@Entity
14@Table(name = "user_roles", schema = "public", catalog = "benki")
15@IdClass(UserRolePK.class)
Matthias Andreas Benkard35cb1592020-01-24 11:05:20 +010016public class UserRole extends PanacheEntityBase {
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010017
18 @Id
19 @Column(name = "user", nullable = false)
Matthias Andreas Benkard35cb1592020-01-24 11:05:20 +010020 public int userId;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010021
22 @Id
23 @Column(name = "role", nullable = false)
Matthias Andreas Benkard35cb1592020-01-24 11:05:20 +010024 public int roleId;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010025
26 @ManyToOne
27 @JoinColumn(name = "user", referencedColumnName = "id", nullable = false)
Matthias Andreas Benkard35cb1592020-01-24 11:05:20 +010028 public User user;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010029
30 @ManyToOne
31 @JoinColumn(name = "role", referencedColumnName = "id", nullable = false)
Matthias Andreas Benkard35cb1592020-01-24 11:05:20 +010032 public Role role;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010033}