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 | 35cb159 | 2020-01-24 11:05:20 +0100 | [diff] [blame] | 3 | import io.quarkus.hibernate.orm.panache.PanacheEntityBase; |
Matthias Andreas Benkard | e3bc3ee | 2023-08-06 16:21:11 +0200 | [diff] [blame^] | 4 | import jakarta.persistence.Column; |
| 5 | import jakarta.persistence.Entity; |
| 6 | import jakarta.persistence.FetchType; |
| 7 | import jakarta.persistence.Id; |
| 8 | import jakarta.persistence.IdClass; |
| 9 | import jakarta.persistence.JoinColumn; |
| 10 | import jakarta.persistence.JoinTable; |
| 11 | import jakarta.persistence.ManyToOne; |
| 12 | import jakarta.persistence.Table; |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 13 | import java.math.BigInteger; |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 14 | |
| 15 | @Entity |
Matthias Andreas Benkard | 57c9a8a | 2020-01-24 19:09:38 +0100 | [diff] [blame] | 16 | @Table(name = "rsa_keys", schema = "benki") |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 17 | @IdClass(RsaKeyPK.class) |
Matthias Andreas Benkard | 35cb159 | 2020-01-24 11:05:20 +0100 | [diff] [blame] | 18 | public class RsaKey extends PanacheEntityBase { |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 19 | |
| 20 | @Id |
| 21 | @Column(name = "modulus", nullable = false, precision = 0) |
Matthias Andreas Benkard | 35cb159 | 2020-01-24 11:05:20 +0100 | [diff] [blame] | 22 | public BigInteger modulus; |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 23 | |
| 24 | @Id |
| 25 | @Column(name = "exponent", nullable = false, precision = 0) |
Matthias Andreas Benkard | 35cb159 | 2020-01-24 11:05:20 +0100 | [diff] [blame] | 26 | public BigInteger exponent; |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 27 | |
Matthias Andreas Benkard | 553de3e | 2020-01-27 05:33:15 +0100 | [diff] [blame] | 28 | @ManyToOne(fetch = FetchType.LAZY) |
| 29 | @JoinTable( |
| 30 | name = "user_rsa_keys", |
| 31 | schema = "benki", |
| 32 | joinColumns = {@JoinColumn(name = "modulus"), @JoinColumn(name = "exponent")}, |
| 33 | inverseJoinColumns = @JoinColumn(name = "user")) |
| 34 | public User user; |
Matthias Andreas Benkard | 734879e | 2020-01-24 10:47:37 +0100 | [diff] [blame] | 35 | } |