Class SolutionBusiness<Solution_,Score_ extends org.optaplanner.core.api.score.Score<Score_>>
- java.lang.Object
-
- org.optaplanner.examples.common.business.SolutionBusiness<Solution_,Score_>
-
- Type Parameters:
Solution_- the solution type, the class with thePlanningSolutionannotation
public class SolutionBusiness<Solution_,Score_ extends org.optaplanner.core.api.score.Score<Score_>> extends Object
-
-
Constructor Summary
Constructors Constructor Description SolutionBusiness(CommonApp app)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddExporter(AbstractSolutionExporter<Solution_> exporter)org.optaplanner.core.impl.heuristic.selector.move.generic.ChangeMove<Solution_>createChangeMove(Object entity, String variableName, Object toPlanningValue)org.optaplanner.core.impl.heuristic.selector.move.generic.SwapMove<Solution_>createSwapMove(Object leftEntity, Object rightEntity)voiddoChangeMove(Object entity, String variableName, Object toPlanningValue)voiddoMove(org.optaplanner.core.impl.heuristic.move.Move<Solution_> move)voiddoProblemFactChange(org.optaplanner.core.api.solver.ProblemFactChange<Solution_> problemFactChange)voiddoSwapMove(Object leftEntity, Object rightEntity)voidexportSolution(AbstractSolutionExporter<Solution_> exporter, File file)StringgetAppDescription()StringgetAppIconResource()StringgetAppName()List<org.optaplanner.core.api.score.constraint.ConstraintMatchTotal<Score_>>getConstraintMatchTotalList()FilegetDataDir()FilegetExportDataDir()Set<AbstractSolutionExporter>getExporters()FilegetImportDataDir()AbstractSolutionImporter<Solution_>[]getImporters()Map<Object,org.optaplanner.core.api.score.constraint.Indictment<Score_>>getIndictmentMap()Score_getScore()Solution_getSolution()org.optaplanner.persistence.common.api.domain.solution.SolutionFileIO<Solution_>getSolutionFileIO()StringgetSolutionFileName()FilegetSolvedDataDir()List<File>getSolvedFileList()FilegetUnsolvedDataDir()List<File>getUnsolvedFileList()booleanhasExporter()booleanhasImporter()voidimportSolution(File file)booleanisConstraintMatchEnabled()booleanisSolving()voidopenSolution(File file)voidregisterForBestSolutionChanges(SolverAndPersistenceFrame<Solution_> solverAndPersistenceFrame)voidsaveSolution(File file)voidsetDataDir(File dataDir)voidsetExporters(Set<AbstractSolutionExporter> exporters)voidsetImporters(AbstractSolutionImporter<Solution_>[] importers)voidsetSolution(Solution_ solution)voidsetSolutionFileIO(org.optaplanner.persistence.common.api.domain.solution.SolutionFileIO<Solution_> solutionFileIO)voidsetSolutionFileName(String solutionFileName)voidsetSolver(org.optaplanner.core.api.solver.SolverFactory<Solution_> solverFactory)Solution_solve(Solution_ problem)Can be called on any thread.voidterminateSolvingEarly()voidupdateDataDirs()
-
-
-
Constructor Detail
-
SolutionBusiness
public SolutionBusiness(CommonApp app)
-
-
Method Detail
-
getAppName
public String getAppName()
-
getAppDescription
public String getAppDescription()
-
getAppIconResource
public String getAppIconResource()
-
getDataDir
public File getDataDir()
-
setDataDir
public void setDataDir(File dataDir)
-
getSolutionFileIO
public org.optaplanner.persistence.common.api.domain.solution.SolutionFileIO<Solution_> getSolutionFileIO()
-
setSolutionFileIO
public void setSolutionFileIO(org.optaplanner.persistence.common.api.domain.solution.SolutionFileIO<Solution_> solutionFileIO)
-
getImporters
public AbstractSolutionImporter<Solution_>[] getImporters()
-
setImporters
public void setImporters(AbstractSolutionImporter<Solution_>[] importers)
-
setExporters
public void setExporters(Set<AbstractSolutionExporter> exporters)
-
addExporter
public void addExporter(AbstractSolutionExporter<Solution_> exporter)
-
getExporters
public Set<AbstractSolutionExporter> getExporters()
-
hasImporter
public boolean hasImporter()
-
hasExporter
public boolean hasExporter()
-
updateDataDirs
public void updateDataDirs()
-
getImportDataDir
public File getImportDataDir()
-
getUnsolvedDataDir
public File getUnsolvedDataDir()
-
getSolvedDataDir
public File getSolvedDataDir()
-
getExportDataDir
public File getExportDataDir()
-
setSolver
public void setSolver(org.optaplanner.core.api.solver.SolverFactory<Solution_> solverFactory)
-
getSolution
public Solution_ getSolution()
-
setSolution
public void setSolution(Solution_ solution)
-
getSolutionFileName
public String getSolutionFileName()
-
setSolutionFileName
public void setSolutionFileName(String solutionFileName)
-
getScore
public Score_ getScore()
-
isSolving
public boolean isSolving()
-
registerForBestSolutionChanges
public void registerForBestSolutionChanges(SolverAndPersistenceFrame<Solution_> solverAndPersistenceFrame)
-
isConstraintMatchEnabled
public boolean isConstraintMatchEnabled()
-
getConstraintMatchTotalList
public List<org.optaplanner.core.api.score.constraint.ConstraintMatchTotal<Score_>> getConstraintMatchTotalList()
-
getIndictmentMap
public Map<Object,org.optaplanner.core.api.score.constraint.Indictment<Score_>> getIndictmentMap()
-
importSolution
public void importSolution(File file)
-
openSolution
public void openSolution(File file)
-
saveSolution
public void saveSolution(File file)
-
exportSolution
public void exportSolution(AbstractSolutionExporter<Solution_> exporter, File file)
-
doMove
public void doMove(org.optaplanner.core.impl.heuristic.move.Move<Solution_> move)
-
doProblemFactChange
public void doProblemFactChange(org.optaplanner.core.api.solver.ProblemFactChange<Solution_> problemFactChange)
-
solve
public Solution_ solve(Solution_ problem)
Can be called on any thread.Note: This method does not change the guiScoreDirector because that can only be changed on the event thread.
- Parameters:
problem- never null- Returns:
- never null
-
terminateSolvingEarly
public void terminateSolvingEarly()
-
createChangeMove
public org.optaplanner.core.impl.heuristic.selector.move.generic.ChangeMove<Solution_> createChangeMove(Object entity, String variableName, Object toPlanningValue)
-
createSwapMove
public org.optaplanner.core.impl.heuristic.selector.move.generic.SwapMove<Solution_> createSwapMove(Object leftEntity, Object rightEntity)
-
-