Guest User

Untitled

a guest
Jul 19th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.72 KB | None | 0 0
  1. public String save() {
  2.  
  3. boolean isDatavalid = validateData();
  4.  
  5. if (isDatavalid) {
  6.  
  7. //clearRoles remove all user roles
  8. userService.clearRoles(selectedUser);
  9. List<UserRole> roles= userService.assignRolesToUser(selectedUser, rolesToAdd);
  10. selectedUser.setRoles(roles);
  11. userService.updateUser(selectedUser);
  12. manageFormsVisibility(true, false, false);
  13. }
  14.  
  15. return null;
  16. }
  17.  
  18. public List<UserRole> assignRolesToUser(User user, List<Role> roles) {
  19. List<UserRole> userRoles = new ArrayList<UserRole>();
  20.  
  21. for(Role r:roles){
  22.  
  23. UserRole role = new UserRole(user, r);
  24. userRoles.add(role);
  25. em.persist(role);
  26. }
  27. return userRoles;
  28.  
  29. }
  30.  
  31. @Entity
  32. public class User implements Serializable {
  33. //other properties
  34.  
  35. private List<UserRole> roles = new ArrayList<UserRole>();
  36.  
  37. @OneToMany(mappedBy = "user", cascade = CascadeType.REMOVE)
  38. public List<UserRole> getRoles() {
  39. roles.size();
  40. return roles;
  41. }
  42. }
  43.  
  44. @Entity
  45. public class Role implements Serializable {
  46. //other properties
  47.  
  48. private List<UserRole> users = new ArrayList<UserRole>();
  49.  
  50. @OneToMany(mappedBy = "role", cascade = CascadeType.REMOVE)
  51. public List<UserRole> getUsers() {
  52. users.size();
  53. return users;
  54. }
  55. }
  56.  
  57. @Entity
  58. @Table(name="User_Role")
  59.  
  60. public class UserRole implements Serializable {
  61.  
  62. private IdUserRole idUserRole = new IdUserRole();
  63. private Date activationDate;
  64. private Date deactivationDate;
  65. private User user;
  66. private Role role;
  67. private static final long serialVersionUID = 1L;
  68.  
  69. public UserRole() {
  70. super();
  71. }
  72.  
  73. @EmbeddedId
  74. public IdUserRole getIdUserRole() {
  75. return this.idUserRole;
  76. }
  77.  
  78. public void setIdUserRole(IdUserRole idUserRole) {
  79. this.idUserRole = idUserRole;
  80. }
  81.  
  82. @Temporal(TemporalType.DATE)
  83. public Date getActivationDate() {
  84. return this.activationDate;
  85. }
  86.  
  87. public void setActivationDate(Date activationDate) {
  88. this.activationDate = activationDate;
  89. }
  90.  
  91. @Temporal(TemporalType.DATE)
  92. public Date getDeactivationDate() {
  93. return this.deactivationDate;
  94. }
  95.  
  96. public void setDeactivationDate(Date deactivationDate) {
  97. this.deactivationDate = deactivationDate;
  98. }
  99.  
  100. public void setUser(User user) {
  101. this.user = user;
  102. }
  103.  
  104. @ManyToOne
  105. @JoinColumn(name = "user_id", insertable = false, updatable = false)
  106. public User getUser() {
  107. return user;
  108. }
  109.  
  110. public void setRole(Role role) {
  111. this.role = role;
  112. }
  113.  
  114. @ManyToOne
  115. @JoinColumn(name = "role_id", insertable = false, updatable = false)
  116. public Role getRole() {
  117. return role;
  118. }
  119.  
  120. public UserRole(User user, Role role) {
  121. getIdUserRole().setRoleId(role.getRoleId());
  122. getIdUserRole().setUserId(user.getUserId());
  123. this.setUser(user);
  124. this.setRole(role);
  125. user.getRoles().add(this);
  126. role.getUsers().add(this);
  127. }
  128. }
Add Comment
Please, Sign In to add comment