Interface ProblemChange<Solution_>

  • Type Parameters:
    Solution_ - the solution type, the class with the PlanningSolution annotation
    Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    @FunctionalInterface
    public interface ProblemChange<Solution_>
    A ProblemChange represents a change in 1 or more planning entities or problem facts of a PlanningSolution. Problem facts used by a Solver must not be changed while it is solving, but by scheduling this command to the Solver, you can change them when the time is right.

    Note that the Solver clones a PlanningSolution at will. Any change must be done on the problem facts and planning entities referenced by the PlanningSolution of the ProblemChangeDirector.