} else {
solver.setRandomSeed(DEFAULT_RANDOM_SEED);
}
}
SolutionDescriptor solutionDescriptor = buildSolutionDescriptor();
ScoreDirectorFactory scoreDirectorFactory = scoreDirectorFactoryConfig.buildScoreDirectorFactory(
environmentMode, solutionDescriptor);
solver.setScoreDirectorFactory(scoreDirectorFactory);
ScoreDefinition scoreDefinition = scoreDirectorFactory.getScoreDefinition();
Termination termination = terminationConfig.buildTermination(scoreDefinition, basicPlumbingTermination);
solver.setTermination(termination);
BestSolutionRecaller bestSolutionRecaller = buildBestSolutionRecaller(environmentMode);
solver.setBestSolutionRecaller(bestSolutionRecaller);
if (CollectionUtils.isEmpty(solverPhaseConfigList)) {