blob: 7d48b642e8cb9b3987bcbbfbe5b6220fb66ee418 [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;
Matthias Andreas Benkardaa754802020-01-24 11:55:26 +01007import javax.persistence.FetchType;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +01008import javax.persistence.Id;
9import javax.persistence.IdClass;
10import javax.persistence.JoinColumn;
11import javax.persistence.ManyToOne;
12import javax.persistence.Table;
13
14@Entity
15@Table(name = "user_roles", schema = "public", catalog = "benki")
16@IdClass(UserRolePK.class)
Matthias Andreas Benkard35cb1592020-01-24 11:05:20 +010017public class UserRole extends PanacheEntityBase {
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010018
19 @Id
20 @Column(name = "user", nullable = false)
Matthias Andreas Benkard35cb1592020-01-24 11:05:20 +010021 public int userId;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010022
23 @Id
24 @Column(name = "role", nullable = false)
Matthias Andreas Benkard35cb1592020-01-24 11:05:20 +010025 public int roleId;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010026
Matthias Andreas Benkardaa754802020-01-24 11:55:26 +010027 @ManyToOne(fetch = FetchType.LAZY)
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010028 @JoinColumn(name = "user", referencedColumnName = "id", nullable = false)
Matthias Andreas Benkard35cb1592020-01-24 11:05:20 +010029 public User user;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010030
Matthias Andreas Benkardaa754802020-01-24 11:55:26 +010031 @ManyToOne(fetch = FetchType.LAZY)
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010032 @JoinColumn(name = "role", referencedColumnName = "id", nullable = false)
Matthias Andreas Benkard35cb1592020-01-24 11:05:20 +010033 public Role role;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010034}