blob: a12377a6fd8aa84253276797c6a1c3e50f1e519a [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 Benkarde3bc3ee2023-08-06 16:21:11 +02005import jakarta.persistence.Column;
6import jakarta.persistence.Entity;
7import jakarta.persistence.FetchType;
8import jakarta.persistence.Id;
9import jakarta.persistence.IdClass;
10import jakarta.persistence.JoinColumn;
11import jakarta.persistence.ManyToOne;
12import jakarta.persistence.Table;
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010013
14@Entity
Matthias Andreas Benkard57c9a8a2020-01-24 19:09:38 +010015@Table(name = "user_roles", schema = "benki")
Matthias Andreas Benkard734879e2020-01-24 10:47:37 +010016@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}