-
Bug
-
Resolution: Done
-
Blocker
-
None
-
None
-
NEW
-
NEW
Caused by PLANNER-325.
In the data modeler, when a class is configured as a Planning solution - it does get the @PlanningSolution annotation, but it doesn't get the "implements Solution<HardSoftScore>" line (which needs to know the score type btw), nor get the Score field, nor get the getProblemFacts() method:
@PlanningSolution public class CloudBalance extends AbstractPersistable implements Solution<HardSoftScore> { ... // fields defined by the editor private HardSoftScore score; public HardSoftScore getScore() { return score; } public void setScore(HardSoftScore score) { this.score = score; } public Collection<? extends Object> getProblemFacts() { List<Object> facts = new ArrayList<Object>(); // Add all fields: addAll() for a Collection, add() for non Collections facts.addAll(computerList); // Do not add the fields annotated with @PlanningEntityCollectionProperty (processList) return facts; }
This blocks toni's testing of PLANNER-342, because SolverConfig.buildSolver() will fail-fast due to this.
Feel free to leave the getProblemFacts() method empty in the first iteration as that won't break Toni's testing - I can even look into letting optaplanner do that automatically as desired.
- blocks
-
PLANNER-342 Workbench: Solver configuration editor prototype
- Resolved
- is blocked by
-
PLANNER-461 Add abstract class AbstractSolution<S extends Score> which implements all Solution methods, so Workbench domain modeler can reuse it
- Resolved
- is caused by
-
PLANNER-325 Workbench: Data modeler support for basic OptaPlanner annotations
- Resolved
- relates to
-
PLANNER-436 Avoid having to implement the Solution interface because a @PlanningSolution, @Score and optional @ProblemFacts annotation could be enough
- Resolved