diff --git a/jsprit-core/src/main/java/algorithms/BestInsertionBuilder.java b/jsprit-core/src/main/java/algorithms/BestInsertionBuilder.java index 565d3530..f3621f44 100644 --- a/jsprit-core/src/main/java/algorithms/BestInsertionBuilder.java +++ b/jsprit-core/src/main/java/algorithms/BestInsertionBuilder.java @@ -1,6 +1,11 @@ package algorithms; +import java.util.ArrayList; +import java.util.List; + import basics.VehicleRoutingProblem; +import basics.algo.InsertionListener; +import basics.algo.VehicleRoutingAlgorithmListeners.PrioritizedVRAListener; public class BestInsertionBuilder implements InsertionStrategyBuilder{ @@ -52,7 +57,9 @@ public class BestInsertionBuilder implements InsertionStrategyBuilder{ @Override public InsertionStrategy build() { - CalculatorBuilder calcBuilder = new CalculatorBuilder(null, null); + List iListeners = new ArrayList(); + List algorithmListeners = new ArrayList(); + CalculatorBuilder calcBuilder = new CalculatorBuilder(iListeners, algorithmListeners); if(local){ calcBuilder.setLocalLevel(); } @@ -62,7 +69,9 @@ public class BestInsertionBuilder implements InsertionStrategyBuilder{ calcBuilder.setVehicleFleetManager(fleetManager); if(considerFixedCosts) calcBuilder.considerFixedCosts(weightOfFixedCosts); JobInsertionCalculator jobInsertions = calcBuilder.build(); - return new BestInsertion(jobInsertions); + BestInsertion bestInsertion = new BestInsertion(jobInsertions); + for(InsertionListener l : iListeners) bestInsertion.addListener(l); + return bestInsertion; } }