Class BavetConstraintStreamScoreDirector<Solution_,​Score_ extends org.optaplanner.core.api.score.Score<Score_>>

  • Type Parameters:
    Solution_ - the solution type, the class with the PlanningSolution annotation
    All Implemented Interfaces:
    AutoCloseable, Cloneable, org.optaplanner.core.api.score.director.ScoreDirector<Solution_>, org.optaplanner.core.impl.score.director.InnerScoreDirector<Solution_,​Score_>

    public final class BavetConstraintStreamScoreDirector<Solution_,​Score_ extends org.optaplanner.core.api.score.Score<Score_>>
    extends org.optaplanner.core.impl.score.director.AbstractScoreDirector<Solution_,​Score_,​BavetConstraintStreamScoreDirectorFactory<Solution_,​Score_>>
    FP streams implementation of ScoreDirector, which only recalculates the Score of the part of the working solution that changed, instead of the going through the entire PlanningSolution. This is incremental calculation, which is fast.
    See Also:
    ScoreDirector
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected BavetConstraintSession<Solution_,​Score_> session  
      • Fields inherited from class org.optaplanner.core.impl.score.director.AbstractScoreDirector

        allChangesWillBeUndoneBeforeStepEnds, calculationCount, constraintMatchEnabledPreference, logger, lookUpEnabled, lookUpManager, scoreDirectorFactory, variableListenerSupport, workingEntityListRevision, workingInitScore, workingSolution
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void afterEntityAdded​(org.optaplanner.core.impl.domain.entity.descriptor.EntityDescriptor<Solution_> entityDescriptor, Object entity)  
      void afterEntityRemoved​(org.optaplanner.core.impl.domain.entity.descriptor.EntityDescriptor<Solution_> entityDescriptor, Object entity)  
      void afterProblemFactAdded​(Object problemFact)  
      void afterProblemFactRemoved​(Object problemFact)  
      void afterProblemPropertyChanged​(Object problemFactOrEntity)  
      void afterVariableChanged​(org.optaplanner.core.impl.domain.variable.descriptor.VariableDescriptor<Solution_> variableDescriptor, Object entity)  
      Score_ calculateScore()  
      void close()  
      Map<String,​org.optaplanner.core.api.score.constraint.ConstraintMatchTotal<Score_>> getConstraintMatchTotalMap()  
      Map<Object,​org.optaplanner.core.api.score.constraint.Indictment<Score_>> getIndictmentMap()  
      BavetConstraintSession<Solution_,​Score_> getSession()  
      boolean isConstraintMatchEnabled()  
      boolean requiresFlushing()  
      void setWorkingSolution​(Solution_ workingSolution)  
      • Methods inherited from class org.optaplanner.core.impl.score.director.AbstractScoreDirector

        afterEntityAdded, afterEntityRemoved, afterVariableChanged, assertExpectedUndoMoveScore, assertExpectedWorkingScore, assertNonNullPlanningIds, assertPredictedScoreFromScratch, assertShadowVariablesAreNotStale, assertWorkingScoreFromScratch, beforeEntityAdded, beforeEntityAdded, beforeEntityRemoved, beforeEntityRemoved, beforeProblemFactAdded, beforeProblemFactRemoved, beforeProblemPropertyChanged, beforeVariableChanged, beforeVariableChanged, buildScoreCorruptionAnalysis, buildShadowVariableAnalysis, changeVariableFacade, clone, cloneSolution, cloneWorkingSolution, createChildThreadScoreDirector, createShadowVariablesViolationMessage, doAndProcessMove, doAndProcessMove, getCalculationCount, getScoreDefinition, getScoreDirectorFactory, getSolutionDescriptor, getSupplyManager, getWorkingEntityListRevision, getWorkingSolution, isAllChangesWillBeUndoneBeforeStepEnds, isConstraintConfiguration, isConstraintMatchEnabledPreference, isLookUpEnabled, isWorkingEntityListDirty, lookUpWorkingObject, lookUpWorkingObjectOrReturnNull, overwriteConstraintMatchEnabledPreference, resetCalculationCount, setAllChangesWillBeUndoneBeforeStepEnds, setCalculatedScore, setWorkingEntityListDirty, toString, triggerVariableListeners