@Override
    protected void searchStep() {
        // more solutions to generate ?
        if(solutionIterator.hasNext()){
            // generate next solution
            SolutionType sol = solutionIterator.next();
            // update best solution
            updateBestSolution(sol);
        } else {
            // done
            stop();
        }
    }
@ Override protected void searchStep ( ) { if ( solutionIterator . hasNext ( ) ) { SolutionType sol = solutionIterator . next ( ) ; updateBestSolution ( sol ) ; } else { stop ( ) ; } }
In every search step it is verified whether there are more solution to be generated using the solution iterator.
If so, the next solution is generated, evaluated, and presented for comparison with the current best solution.
Else, the search stops.