-
Feature Request
-
Resolution: Done
-
Major
-
None
-
None
-
Chaning this jira to resolved. Additional issues can go into new jira's, linked to the BPMSPL issue.
-
NEW
-
NEW
Here's a list of the methods that need to be exposed in the REST service of execution server in phase 1:
- Solver.solve(Solution_ planningProblem) returns Solution_
- This is a potentially long running method, it can take hours or days even in some cases.
- Solver.isSolving() returns boolean
- Solver.terminateEarly() returns boolean
- The way to a kill a long-running solver.
- Solver.isTerminateEarly() return boolean
Moved to phase 2
- Solver.add/removeEventListener(SolverEventListener) and a way to listen to SolverEventListener.bestSolutionChanged(BestSolutionChangedEvent) somehow.
- If the REST is called though WebSockets, we can push this back, otherwise we'll need some sort of polling mechanism
- Only the most recent BestSolutionChanged event is interesting. If there are multiple in a queue to be send back, the earlier ones can be safely ignored.
- In practice we 'll even need some sort of throttling approach because it's possible to have 100 best solution events per second (= once every 10ms) for some time during solving (mostly at the beginning).
Additional features (such as anything related to addProblemFactChange) will be kept for phase 2.
- is blocked by
-
PLANNER-519 Race condition with Solver.getBestSolution()
- Resolved
- is related to
-
PLANNER-520 New module that builds a kjar of an example (to be reused by execution server tests)
- Resolved
- relates to
-
PLANNER-526 BendableScore.toString() must include "hard" "soft" seperation
- Resolved