Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2016
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.44 KB | None | 0 0
  1. public class ExampleUserDetails extends SocialUser {
  2.  
  3. private Long id;
  4.  
  5. private String firstName;
  6.  
  7. private String lastName;
  8.  
  9. private Role role;
  10.  
  11. private SocialMediaService socialSignInProvider;
  12.  
  13. public ExampleUserDetails(String username, String password, Collection<? extends GrantedAuthority> authorities) {
  14. super(username, password, authorities);
  15. }
  16.  
  17. //Getters are omitted for the sake of clarity.
  18.  
  19. public static class Builder {
  20.  
  21. private Long id;
  22.  
  23. private String username;
  24.  
  25. private String firstName;
  26.  
  27. private String lastName;
  28.  
  29. private String password;
  30.  
  31. private Role role;
  32.  
  33. private SocialMediaService socialSignInProvider;
  34.  
  35. private Set<GrantedAuthority> authorities;
  36.  
  37. public Builder() {
  38. this.authorities = new HashSet<>();
  39. }
  40.  
  41. public Builder firstName(String firstName) {
  42. this.firstName = firstName;
  43. return this;
  44. }
  45.  
  46. public Builder id(Long id) {
  47. this.id = id;
  48. return this;
  49. }
  50.  
  51. public Builder lastName(String lastName) {
  52. this.lastName = lastName;
  53. return this;
  54. }
  55.  
  56. public Builder password(String password) {
  57. if (password == null) {
  58. password = "SocialUser";
  59. }
  60.  
  61. this.password = password;
  62. return this;
  63. }
  64.  
  65. public Builder role(Role role) {
  66. this.role = role;
  67.  
  68. SimpleGrantedAuthority authority = new SimpleGrantedAuthority(role.toString());
  69. this.authorities.add(authority);
  70.  
  71. return this;
  72. }
  73.  
  74. public Builder socialSignInProvider(SocialMediaService socialSignInProvider) {
  75. this.socialSignInProvider = socialSignInProvider;
  76. return this;
  77. }
  78.  
  79. public Builder username(String username) {
  80. this.username = username;
  81. return this;
  82. }
  83.  
  84. public ExampleUserDetails build() {
  85. ExampleUserDetails user = new ExampleUserDetails(username, password, authorities);
  86.  
  87. user.id = id;
  88. user.firstName = firstName;
  89. user.lastName = lastName;
  90. user.role = role;
  91. user.socialSignInProvider = socialSignInProvider;
  92.  
  93. return user;
  94. }
  95. }
  96.  
  97. ExampleUserDetails principal = ExampleUserDetails.getBuilder()
  98. .firstName(user.getFirstName())
  99. .id(user.getId())
  100. .lastName(user.getLastName())
  101. .password(user.getPassword())
  102. .role(user.getRole())
  103. .socialSignInProvider(user.getSignInProvider())
  104. .username(user.getEmail())
  105. .build();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement