-
Notifications
You must be signed in to change notification settings - Fork 170
/
Copy pathUserEntity.java
107 lines (86 loc) · 2.58 KB
/
UserEntity.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
package org.ohdsi.webapi.shiro.Entities;
import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.Parameter;
import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;
import java.util.LinkedHashSet;
import java.util.Set;
/**
* Created by GMalikov on 24.08.2015.
*/
@Entity(name = "UserEntity")
@Table(name = "SEC_USER")
public class UserEntity implements Serializable{
private static final long serialVersionUID = -2697485161468660016L;
private Long id;
private String login;
private String password;
private String salt;
private String name;
private UserOrigin origin = UserOrigin.SYSTEM;
private Set<UserRoleEntity> userRoles = new LinkedHashSet<>();
private Date lastViewedNotificationsTime;
@Id
@Column(name = "ID")
@GenericGenerator(
name = "sec_user_generator",
strategy = "org.hibernate.id.enhanced.SequenceStyleGenerator",
parameters = {
@Parameter(name = "sequence_name", value = "sec_user_sequence"),
@Parameter(name = "initial_value", value = "1000"),
@Parameter(name = "increment_size", value = "1")
}
)
@GeneratedValue(generator = "sec_user_generator")
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
@Column(name = "LOGIN")
public String getLogin() {
return login;
}
public void setLogin(String login) {
this.login = login;
}
@Column(name = "NAME")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@OneToMany(mappedBy = "user", fetch = FetchType.LAZY, cascade = CascadeType.REMOVE)
public Set<UserRoleEntity> getUserRoles() {
return userRoles;
}
public void setUserRoles(Set<UserRoleEntity> userRoles) {
this.userRoles = userRoles;
}
@Column(name = "last_viewed_notifications_time")
public Date getLastViewedNotificationsTime() {
return lastViewedNotificationsTime;
}
public void setLastViewedNotificationsTime(Date lastViewedNotificationsTime) {
this.lastViewedNotificationsTime = lastViewedNotificationsTime;
}
@Column(name = "origin", nullable = false)
@Enumerated(EnumType.STRING)
public UserOrigin getOrigin() {
return origin;
}
public void setOrigin(UserOrigin origin) {
this.origin = origin;
}
public void addUserRoleEntity(UserRoleEntity userRoleEntity) {
this.userRoles.add(userRoleEntity);
userRoleEntity.setUser(this);
}
public void removeUserRoleEntity(UserRoleEntity userRoleEntity) {
this.userRoles.remove(userRoleEntity);
userRoleEntity.setUser(null);
}
}