public void updateUser(String username, AppUser userShell) { AppUser userEntity = getUserByUsername(username); String oldEmailAddress = userEntity.getEmailAddress(); String oldPassword = userEntity.getPassword(); copyProperties(userShell, userEntity); String newEmailAddress = userEntity.getEmailAddress(); String newPassword = userEntity.getPassword(); if (changed(oldPassword, newPassword)) { validatePassword(newPassword); hashPassword(userEntity); } validateEntity(userEntity); if (changed(oldEmailAddress, newEmailAddress)) { checkEmailAddressIsNotRegistered(newEmailAddress); updateCurrentPrincipal(userEntity, newEmailAddress); } userDao.merge(userEntity); }
public boolean enableUserByValidationKey(String emailValidationKey) { AppUser user = userDao.findByEmailValidationKey(emailValidationKey); boolean emailKeyExists = user != null; if (emailKeyExists) { user.setEnabled(true); user.setEmailValidationKey(null); userDao.merge(user); } return emailKeyExists; }