Advertisement
Guest User

Untitled

a guest
Jun 7th, 2016
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.00 KB | None | 0 0
  1. package pl.edu.agh.tai.model;
  2.  
  3. import org.springframework.data.annotation.Id;
  4. import org.springframework.data.mongodb.core.mapping.Document;
  5. import org.springframework.security.core.GrantedAuthority;
  6. import org.springframework.security.core.authority.SimpleGrantedAuthority;
  7. import org.springframework.security.core.userdetails.UserDetails;
  8. import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
  9. import org.springframework.security.crypto.password.PasswordEncoder;
  10. import org.springframework.social.security.SocialUserDetails;
  11. import pl.edu.agh.tai.model.enums.SignInProvider;
  12.  
  13. import java.util.ArrayList;
  14. import java.util.Collection;
  15. import java.util.List;
  16.  
  17. @Document(collection = "users")
  18. public class User implements UserDetails,SocialUserDetails {
  19.  
  20.     private static PasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
  21.  
  22.     @Id
  23.     private String id;
  24.     private String username;
  25.     private String password;
  26.     private String firstName;
  27.     private String lastName;
  28.     private String email;
  29.     private int role;
  30.     private boolean accountNonExpired;
  31.     private boolean accountNonLocked;
  32.     private boolean credentialsNonExpired;
  33.     private boolean enabled;
  34.     private SignInProvider signInProvider;
  35.  
  36.     public User() {
  37.     }
  38.  
  39.     public int getRole() {
  40.         return role;
  41.     }
  42.  
  43.     public void setRole(int role) {
  44.         this.role = role;
  45.     }
  46.  
  47.     public User(String id, String username, String password, String firstName,
  48.                 String lastName,SignInProvider signInProvider) {
  49.         this.id = id;
  50.         this.username = username;
  51.         this.password = passwordEncoder.encode(password);
  52.         this.firstName = firstName;
  53.         this.lastName = lastName;
  54.         this.signInProvider = signInProvider;
  55.         accountNonExpired = true;
  56.         accountNonLocked = true;
  57.         credentialsNonExpired = true;
  58.         enabled = true;
  59.     }
  60.  
  61.     public String getUsername() {
  62.         return username;
  63.     }
  64.  
  65.     @Override
  66.     public boolean isAccountNonExpired() {
  67.         return accountNonExpired;
  68.     }
  69.  
  70.     @Override
  71.     public boolean isAccountNonLocked() {
  72.         return accountNonLocked;
  73.     }
  74.  
  75.     @Override
  76.     public boolean isCredentialsNonExpired() {
  77.         return credentialsNonExpired;
  78.     }
  79.  
  80.     @Override
  81.     public boolean isEnabled() {
  82.         return enabled;
  83.     }
  84.  
  85.     public void setUsername(String username) {
  86.         this.username = username;
  87.     }
  88.  
  89.     @Override
  90.     public Collection<? extends GrantedAuthority> getAuthorities() {
  91.         List<GrantedAuthority> authList = new ArrayList<GrantedAuthority>();
  92.         if (role == 1) {
  93.             authList.add(new SimpleGrantedAuthority("ROLE_USER"));
  94.             authList.add(new SimpleGrantedAuthority("ROLE_ADMIN"));
  95.         } else if (role == 2) {
  96.             authList.add(new SimpleGrantedAuthority("ROLE_USER"));
  97.         }
  98.         return authList;
  99.     }
  100.  
  101.     public String getPassword() {
  102.         return password;
  103.     }
  104.  
  105.     public void setPassword(String password) {
  106.         this.password = password;
  107.     }
  108.  
  109.     public String getFirstName() {
  110.         return firstName;
  111.     }
  112.  
  113.     public void setFirstName(String firstName) {
  114.         this.firstName = firstName;
  115.     }
  116.  
  117.     public String getLastName() {
  118.         return lastName;
  119.     }
  120.  
  121.     public void setLastName(String lastName) {
  122.         this.lastName = lastName;
  123.     }
  124.  
  125.     public String getEmail() {
  126.         return email;
  127.     }
  128.  
  129.     public void setEmail(String email) {
  130.         this.email = email;
  131.     }
  132.  
  133.     public SignInProvider getSignInProvider() {
  134.         return signInProvider;
  135.     }
  136.  
  137.     public void setSignInProvider(SignInProvider signInProvider) {
  138.         this.signInProvider = signInProvider;
  139.     }
  140.  
  141.     @Override
  142.     public String getUserId() {
  143.         return id;
  144.     }
  145.  
  146.     @Override
  147.     public String toString() {
  148.         return "First Name:" + this.firstName + " Last Name:" + this.lastName + " Username:" + this.username;
  149.     }
  150.  
  151.  
  152. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement