Advertisement
Guest User

Untitled

a guest
Oct 13th, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.28 KB | None | 0 0
  1. @Service("userService")
  2. public class UserServiceImpl implements UserDetailsService, UserService {
  3.  
  4. @Autowired
  5. private UserRepository userRepository;
  6.  
  7. @Autowired
  8. private PasswordEncoder passwordEncoder;
  9.  
  10. @Override
  11. public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
  12. return this.userRepository.findByUsername(username).orElseThrow(() -> new UsernameNotFoundException("username not found:" + username));
  13. }
  14.  
  15. @Override
  16. public List<User> getAll() {
  17. return this.userRepository.findAll();
  18. }
  19.  
  20. @Override
  21. public User getById(String id) {
  22. return this.userRepository.findById(id).orElseThrow(() -> new UsernameNotFoundException("user not found by id:" + id));
  23. }
  24.  
  25. @Override
  26. public User getByUsername(String username) {
  27. return this.userRepository.findByUsername(username).orElseThrow(() -> new UsernameNotFoundException("user not found by id:" + username));
  28. }
  29.  
  30. @Override
  31. public User signUp(User user) {
  32. User newUser =
  33. User
  34. .copyFrom(user)
  35. .authorities("USER")
  36. .passwordEncoderFunction(passwordEncoder::encode)
  37. .build();
  38.  
  39. return this.userRepository.save(newUser);
  40. }
  41.  
  42. @Override
  43. public List<User> createAll(List<User> users) {
  44. List<User> newUsers =
  45. users
  46. .stream()
  47. .map(user ->
  48. User
  49. .copyFrom(user)
  50. .passwordEncoderFunction(passwordEncoder::encode)
  51. .build())
  52. .collect(Collectors.toList());
  53.  
  54. return this.userRepository.saveAll(newUsers);
  55. }
  56.  
  57. @Override
  58. public List<User> updateAll(List<User> users) {
  59. if (users.stream().anyMatch(user -> user.getUsername() == null)) {
  60. throw new MissingIdException("Some username is missing for bulk users update.");
  61. }
  62.  
  63. return this.userRepository.findAndUpdateByUsernames(users);
  64. }
  65.  
  66. @Override
  67. public boolean deleteById(String id) {
  68. this.userRepository.deleteById(id);
  69. return true;
  70. }
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement