Interface ScoreDirector<Solution_>

    • Method Detail

      • beforeEntityAdded

        void beforeEntityAdded​(Object entity)
      • afterEntityAdded

        void afterEntityAdded​(Object entity)
      • beforeVariableChanged

        void beforeVariableChanged​(Object entity,
                                   String variableName)
      • afterVariableChanged

        void afterVariableChanged​(Object entity,
                                  String variableName)
      • triggerVariableListeners

        void triggerVariableListeners()
      • beforeEntityRemoved

        void beforeEntityRemoved​(Object entity)
      • afterEntityRemoved

        void afterEntityRemoved​(Object entity)
      • beforeProblemFactAdded

        void beforeProblemFactAdded​(Object problemFact)
      • afterProblemFactAdded

        void afterProblemFactAdded​(Object problemFact)
      • beforeProblemPropertyChanged

        void beforeProblemPropertyChanged​(Object problemFactOrEntity)
      • afterProblemPropertyChanged

        void afterProblemPropertyChanged​(Object problemFactOrEntity)
      • beforeProblemFactRemoved

        void beforeProblemFactRemoved​(Object problemFact)
      • afterProblemFactRemoved

        void afterProblemFactRemoved​(Object problemFact)
      • lookUpWorkingObjectOrReturnNull

        <E> E lookUpWorkingObjectOrReturnNull​(E externalObject)
        As defined by lookUpWorkingObject(Object), but doesn't fail fast if no workingObject was ever added for the externalObject. It's recommended to use lookUpWorkingObject(Object) instead, especially in a Move.rebase(ScoreDirector) code.
        Type Parameters:
        E - the object type
        Parameters:
        externalObject - sometimes null
        Returns:
        null if externalObject is null or if there is no workingObject for externalObject
        Throws:
        IllegalArgumentException - if it cannot be looked up or if the externalObject's class is not supported
        IllegalStateException - if it cannot be looked up