@Transactional(readOnly = true) public void validateIgnoringIdAndPessoa(Usuario usuario) { if (usuario == null) { throw new HttpException(EXCEPTION_USUARIO_MUST_NOT_BE_NULL, HttpStatus.NOT_ACCEPTABLE); } if (usuario.getStatus() == null) { throw new HttpException(EXCEPTION_USUARIO_STATUS_MUST_NOT_BE_NULL, HttpStatus.NOT_ACCEPTABLE); } if (StringHelper.isBlank(usuario.getApelido())) { throw new HttpException( EXCEPTION_USUARIO_APELIDO_MUST_NOT_BE_EMPTY, HttpStatus.NOT_ACCEPTABLE); } if (usuario.getApelido().length() > 45) { throw new HttpException( EXCEPTION_USUARIO_APELIDO_MUST_NOT_BE_BIGGER_THAN_45_CHARACTERS, HttpStatus.NOT_ACCEPTABLE); } if (!usuario.getApelido().matches(Constants.TEXT_PATTERN_APELIDO)) { throw new HttpException( EXCEPTION_USUARIO_APELIDO_MUST_CONTAINS_ONLY_LETTERS_NUMBERS_UNDERLINES_DASHES_AND_POINTS, HttpStatus.NOT_ACCEPTABLE); } validateSenha(usuario.getSenha()); if (usuario.getPerfis() != null) { for (int i = 0; i < usuario.getPerfis().size(); i++) { for (int j = 0; j < usuario.getPerfis().size(); j++) { if (j != i) { if (usuario.getPerfis().get(i) == usuario.getPerfis().get(j)) { throw new HttpException( EXCEPTION_USUARIO_MUST_NOT_CONTAINS_DUPLICATED_PERFIS, HttpStatus.NOT_ACCEPTABLE); } } } } } }
public boolean isInPerfis(Usuario usuario, Usuario.Perfil... perfis) { for (Usuario.Perfil usuarioPerfil : perfis) { for (Usuario.Perfil perfil : usuario.getPerfis()) { if (usuarioPerfil == perfil) { return true; } } } return false; }
public static boolean hasPerfil(Usuario usuario, Usuario.Perfil perfil) { // null safe for jsp :-) if (usuario != null) { for (Usuario.Perfil usuarioPerfil : usuario.getPerfis()) { if (usuarioPerfil == perfil) { return true; } } } return false; }