@Override
    public void desinscrireMembre(Session session,
        MembreDTO membreDTO) throws InvalidHibernateSessionException,
        InvalidDTOException,
        InvalidCriterionException,
        InvalidSortByPropertyException,
        ServiceException {
        if(session == null) {
            throw new InvalidHibernateSessionException("La session ne peut être null");
        }

        final List<PretDTO> prets = new ArrayList<>(membreDTO.getPrets());
        try {
            if(!prets.isEmpty()) {
                throw new ExistingLoanException("Le membre "
                    + membreDTO.getNom()
                    + " (ID de membre : "
                    + membreDTO.getIdMembre()
                    + ") a encore des prêts");
            }
        } catch(ExistingLoanException ex) {
            throw new ServiceException(ex);
        }

        deleteMembre(session,
            membreDTO);
    }