public void changePassword(String password) {
   userRepository
       .findOneByLogin(SecurityUtils.getCurrentLogin())
       .ifPresent(
           u -> {
             String encryptedPassword = passwordEncoder.encode(password);
             u.setPassword(encryptedPassword);
             userRepository.save(u);
             log.debug("Changed password for User: {}", u);
           });
 }
 public void updateUserInformation(
     String firstName, String lastName, String email, String langKey) {
   userRepository
       .findOneByLogin(SecurityUtils.getCurrentLogin())
       .ifPresent(
           u -> {
             u.setFirstName(firstName);
             u.setLastName(lastName);
             u.setEmail(email);
             u.setLangKey(langKey);
             userRepository.save(u);
             log.debug("Changed Information for User: {}", u);
           });
 }
 public User getUserWithAuthorities() {
   User currentUser = userRepository.findOneByLogin(SecurityUtils.getCurrentLogin()).get();
   currentUser.getAuthorities().size(); // eagerly load the association
   return currentUser;
 }