@Override synchronized public Job getNextJob() {
        if(ite==null){
            if(jobs==null) throw new IllegalStateException("ListJobRunner must be feed with a list first");
            ite = jobs.iterator();
        } 
        if(ite.hasNext()){
            goUp();
            Job j = ite.next();
            j.setRunner(this);
            return j;
        } 
        else{
            return null;
        } 
    }