| 
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface Solver
A Solver solves planning problems.
Most methods are not thread-safe and should be called from the same thread.
| Method Summary | |
|---|---|
 void | 
addEventListener(SolverEventListener eventListener)
 | 
 boolean | 
addProblemFactChange(ProblemFactChange problemFactChange)
Schedules a ProblemFactChange to be processed. | 
 Solution | 
getBestSolution()
 | 
 ScoreDefinition | 
getScoreDefinition()
 | 
 long | 
getTimeMillisSpend()
TODO timeMillisSpend should not continue to increase after the solver has been terminated  | 
 boolean | 
isSolving()
This method is thread-safe.  | 
 boolean | 
isTerminateEarly()
This method is thread-safe.  | 
 void | 
removeEventListener(SolverEventListener eventListener)
 | 
 void | 
setPlanningProblem(Solution planningProblem)
 | 
 void | 
solve()
Solves the planning problem.  | 
 boolean | 
terminateEarly()
Notifies the solver that it should stop at its earliest convenience.  | 
| Method Detail | 
|---|
void setPlanningProblem(Solution planningProblem)
planningProblem - never nullSolution getBestSolution()
long getTimeMillisSpend()
void solve()
Solver early, call terminateEarly().
terminateEarly()boolean isSolving()
solve() method is still running.boolean terminateEarly()
solve() to actually return.
 
 This method is thread-safe.
isTerminateEarly(), 
Future.cancel(boolean)boolean isTerminateEarly()
Future.isCancelled()boolean addProblemFactChange(ProblemFactChange problemFactChange)
ProblemFactChange to be processed.
 
 As a side-effect this restarts the Solver, effectively resetting all Terminations,
 but not terminateEarly().
 
 Follows specifications of BlockingQueue.add(Object) with by default
 a capacity of Integer.MAX_VALUE.
problemFactChange - never null
Collection.add(E))void addEventListener(SolverEventListener eventListener)
eventListener - never nullvoid removeEventListener(SolverEventListener eventListener)
eventListener - never nullScoreDefinition getScoreDefinition()
  | 
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||