| margaretha | 08bdabe | 2017-10-17 14:38:49 +0200 | [diff] [blame] | 1 | package de.ids_mannheim.korap.entity; |
| 2 | |
| margaretha | bf11d8d | 2017-10-24 19:31:44 +0200 | [diff] [blame] | 3 | import javax.persistence.Entity; |
| 4 | import javax.persistence.EnumType; |
| 5 | import javax.persistence.Enumerated; |
| margaretha | b42b963 | 2017-10-25 18:34:12 +0200 | [diff] [blame] | 6 | import javax.persistence.FetchType; |
| 7 | import javax.persistence.GeneratedValue; |
| 8 | import javax.persistence.GenerationType; |
| margaretha | bf11d8d | 2017-10-24 19:31:44 +0200 | [diff] [blame] | 9 | import javax.persistence.Id; |
| 10 | import javax.persistence.JoinColumn; |
| 11 | import javax.persistence.ManyToOne; |
| 12 | import javax.persistence.Table; |
| 13 | |
| margaretha | f438c59 | 2017-10-25 15:23:50 +0200 | [diff] [blame] | 14 | import de.ids_mannheim.korap.constant.PrivilegeType; |
| margaretha | b42b963 | 2017-10-25 18:34:12 +0200 | [diff] [blame] | 15 | import lombok.Getter; |
| 16 | import lombok.Setter; |
| margaretha | bf11d8d | 2017-10-24 19:31:44 +0200 | [diff] [blame] | 17 | |
| margaretha | 398f472 | 2019-01-09 19:07:20 +0100 | [diff] [blame] | 18 | /** |
| 19 | * Describes privilege table listing users and their roles. |
| margaretha | 08bdabe | 2017-10-17 14:38:49 +0200 | [diff] [blame] | 20 | * |
| 21 | * @author margaretha |
| 22 | * |
| 23 | */ |
| margaretha | b42b963 | 2017-10-25 18:34:12 +0200 | [diff] [blame] | 24 | @Getter |
| 25 | @Setter |
| margaretha | bf11d8d | 2017-10-24 19:31:44 +0200 | [diff] [blame] | 26 | @Entity |
| margaretha | 398f472 | 2019-01-09 19:07:20 +0100 | [diff] [blame] | 27 | @Table(name = "privilege") |
| margaretha | bf11d8d | 2017-10-24 19:31:44 +0200 | [diff] [blame] | 28 | public class Privilege { |
| margaretha | b42b963 | 2017-10-25 18:34:12 +0200 | [diff] [blame] | 29 | |
| margaretha | bf11d8d | 2017-10-24 19:31:44 +0200 | [diff] [blame] | 30 | @Id |
| margaretha | b42b963 | 2017-10-25 18:34:12 +0200 | [diff] [blame] | 31 | @GeneratedValue(strategy = GenerationType.IDENTITY) |
| 32 | private int id; |
| margaretha | bf11d8d | 2017-10-24 19:31:44 +0200 | [diff] [blame] | 33 | @Enumerated(EnumType.STRING) |
| margaretha | b42b963 | 2017-10-25 18:34:12 +0200 | [diff] [blame] | 34 | private PrivilegeType name; |
| margaretha | 398f472 | 2019-01-09 19:07:20 +0100 | [diff] [blame] | 35 | @ManyToOne(fetch = FetchType.LAZY) |
| margaretha | b42b963 | 2017-10-25 18:34:12 +0200 | [diff] [blame] | 36 | @JoinColumn(name = "role_id", referencedColumnName = "id") |
| margaretha | bf11d8d | 2017-10-24 19:31:44 +0200 | [diff] [blame] | 37 | private Role role; |
| margaretha | b42b963 | 2017-10-25 18:34:12 +0200 | [diff] [blame] | 38 | |
| 39 | public Privilege () {} |
| margaretha | 398f472 | 2019-01-09 19:07:20 +0100 | [diff] [blame] | 40 | |
| margaretha | b42b963 | 2017-10-25 18:34:12 +0200 | [diff] [blame] | 41 | public Privilege (PrivilegeType name, Role role) { |
| 42 | this.name = name; |
| 43 | this.role = role; |
| 44 | } |
| 45 | |
| margaretha | bf11d8d | 2017-10-24 19:31:44 +0200 | [diff] [blame] | 46 | public String toString () { |
| margaretha | b42b963 | 2017-10-25 18:34:12 +0200 | [diff] [blame] | 47 | return "id=" + id + ", name=" + name + ", role=" + role; |
| margaretha | bf11d8d | 2017-10-24 19:31:44 +0200 | [diff] [blame] | 48 | } |
| margaretha | 08bdabe | 2017-10-17 14:38:49 +0200 | [diff] [blame] | 49 | } |