@Override
    public Usuario salvar(Usuario entidade) throws ValidacaoException {

        if (entidade == null) {
            throw new IllegalArgumentException("'usuario' não pode ser nulo");
        }

        for (Usuario usuario : obterTodos()) {
            if (usuario.getUsuarioId() == entidade.getUsuarioId()) {
                continue;
            }

            if (usuario.getLogin().equals(entidade.getLogin())) {
                throw new ValidacaoException(String.format("O Login '%s' já está em uso", usuario.getLogin()));
            }
        }

        return super.salvar(entidade);
    }