public void saveUserWithRole(String email, String password, Integer roleId) throws BusinessValidationException, UserExistException, EmailException { if (StringUtils.isNull(email) && StringUtils.isNull(password)) { throw new BusinessValidationException("Usuário nulo"); } User userExist = userDAO.findByEmail(email); if (userExist != null) { throw new UserExistException("Usuário existente"); } Role role = roleDAO.find(roleId); if (role == null) { throw new BusinessValidationException("Role não existente"); } User user = createNewUser(email, password); if (user.getRoles() == null) { user.setRoles(new HashSet<Role>()); } user.getRoles().add(role); userDAO.save(user); emailBS.sendEmailConfirmation(user.getEmail(), user.getToken()); }
public User findByEmail(String email) throws BusinessValidationException { if (!StringUtils.isNull(email)) { return userDAO.findByEmail(email); } else { throw new BusinessValidationException("O email não pode ser nulo nem vazio"); } }