Interface AbstractVariableListener<Solution_,Entity_>

Type Parameters:
Solution_ - the solution type, the class with the PlanningSolution annotation
Entity_ - PlanningEntity on which the source variable is declared
All Superinterfaces:
AutoCloseable, Closeable
All Known Subinterfaces:
CustomShadowVariable.NullVariableListener, ListVariableElementStateSupply<Solution_>, ListVariableListener<Solution_,Entity_,Element_>, ListVariableStateSupply<Solution_>, SourcedVariableListener<Solution_>, VariableListener<Solution_,Entity_>
All Known Implementing Classes:
AnchorVariableListener, CollectionInverseVariableListener, ExternalizedAnchorVariableSupply, ExternalizedCollectionInverseVariableSupply, ExternalizedSingletonInverseVariableSupply, IndexVariableListener, ListVariableTracker, NextElementVariableListener, PreviousElementVariableListener, SingletonInverseVariableListener, SingletonListInverseVariableListener, VariableTracker

public interface AbstractVariableListener<Solution_,Entity_> extends Closeable
Common ancestor for specialized planning variable listeners.

Do not implement this interface directly. Implement either VariableListener or ListVariableListener.

See Also:
  • Method Details

    • beforeEntityAdded

      void beforeEntityAdded(ScoreDirector<Solution_> scoreDirector, Entity_ entity)
      Parameters:
      scoreDirector - never null
      entity - never null
    • afterEntityAdded

      void afterEntityAdded(ScoreDirector<Solution_> scoreDirector, Entity_ entity)
      Parameters:
      scoreDirector - never null
      entity - never null
    • beforeEntityRemoved

      void beforeEntityRemoved(ScoreDirector<Solution_> scoreDirector, Entity_ entity)
      Parameters:
      scoreDirector - never null
      entity - never null
    • afterEntityRemoved

      void afterEntityRemoved(ScoreDirector<Solution_> scoreDirector, Entity_ entity)
      Parameters:
      scoreDirector - never null
      entity - never null
    • resetWorkingSolution

      default void resetWorkingSolution(ScoreDirector<Solution_> scoreDirector)
      Called when the entire working solution changes. In this event, the other before..()/after...() methods will not be called. At this point, implementations should clear state, if any.
      Parameters:
      scoreDirector - never null
    • close

      default void close()
      Called before this AbstractVariableListener is thrown away and not used anymore.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable