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<Solution_> app)
-
Method Summary
All Methods Static 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)voiddoChangeMove(Object entity, String variableName, Object toPlanningValue)voiddoMove(org.optaplanner.core.impl.heuristic.move.Move<Solution_> move)voiddoProblemChange(org.optaplanner.core.api.solver.change.ProblemChange<Solution_> problemChange)voidexportSolution(AbstractSolutionExporter<Solution_> exporter, File file)org.optaplanner.core.impl.domain.variable.descriptor.GenuineVariableDescriptor<Solution_>findVariableDescriptor(Object entity, String variableName)StringgetAppDescription()StringgetAppIconResource()StringgetAppName()static StringgetBaseFileName(File file)static StringgetBaseFileName(String name)List<org.optaplanner.core.api.score.constraint.ConstraintMatchTotal<Score_>>getConstraintMatchTotalList()FilegetDataDir()FilegetExportDataDir()Set<AbstractSolutionExporter<Solution_>>getExporters()FilegetImportDataDir()Set<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<Solution_>> exporters)voidsetImporters(Set<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()
-
-
-
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 Set<AbstractSolutionImporter<Solution_>> getImporters()
-
setImporters
public void setImporters(Set<AbstractSolutionImporter<Solution_>> importers)
-
setExporters
public void setExporters(Set<AbstractSolutionExporter<Solution_>> exporters)
-
addExporter
public void addExporter(AbstractSolutionExporter<Solution_> exporter)
-
getExporters
public Set<AbstractSolutionExporter<Solution_>> 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)
-
doProblemChange
public void doProblemChange(org.optaplanner.core.api.solver.change.ProblemChange<Solution_> problemChange)
-
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()
-
findVariableDescriptor
public org.optaplanner.core.impl.domain.variable.descriptor.GenuineVariableDescriptor<Solution_> findVariableDescriptor(Object entity, String variableName)
-
createChangeMove
public org.optaplanner.core.impl.heuristic.selector.move.generic.ChangeMove<Solution_> createChangeMove(Object entity, String variableName, Object toPlanningValue)
-
-