Class AndCompositeTermination
- java.lang.Object
-
- org.optaplanner.core.impl.solver.event.SolverLifecycleListenerAdapter<Solution_>
-
- org.optaplanner.core.impl.phase.event.PhaseLifecycleListenerAdapter
-
- org.optaplanner.core.impl.solver.termination.AbstractTermination
-
- org.optaplanner.core.impl.solver.termination.AbstractCompositeTermination
-
- org.optaplanner.core.impl.solver.termination.AndCompositeTermination
-
- All Implemented Interfaces:
EventListener
,PhaseLifecycleListener
,SolverLifecycleListener
,Termination
public class AndCompositeTermination extends AbstractCompositeTermination
-
-
Field Summary
-
Fields inherited from class org.optaplanner.core.impl.solver.termination.AbstractCompositeTermination
terminationList
-
Fields inherited from class org.optaplanner.core.impl.solver.termination.AbstractTermination
logger
-
-
Constructor Summary
Constructors Constructor Description AndCompositeTermination(List<Termination> terminationList)
AndCompositeTermination(Termination... terminations)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description double
calculatePhaseTimeGradient(AbstractPhaseScope phaseScope)
Calculates the minimum timeGradient of all Terminations.double
calculateSolverTimeGradient(DefaultSolverScope solverScope)
Calculates the minimum timeGradient of all Terminations.AndCompositeTermination
createChildThreadTermination(DefaultSolverScope solverScope, ChildThreadType childThreadType)
boolean
isPhaseTerminated(AbstractPhaseScope phaseScope)
Called by thePhase
after every step and every move to determine if the search should stop.boolean
isSolverTerminated(DefaultSolverScope solverScope)
Called by theSolver
after every phase to determine if the search should stop.String
toString()
-
Methods inherited from class org.optaplanner.core.impl.solver.termination.AbstractCompositeTermination
createChildThreadTerminationList, phaseEnded, phaseStarted, solvingEnded, solvingStarted, stepEnded, stepStarted
-
-
-
-
Constructor Detail
-
AndCompositeTermination
public AndCompositeTermination(List<Termination> terminationList)
-
AndCompositeTermination
public AndCompositeTermination(Termination... terminations)
-
-
Method Detail
-
isSolverTerminated
public boolean isSolverTerminated(DefaultSolverScope solverScope)
Description copied from interface:Termination
Called by theSolver
after every phase to determine if the search should stop.- Parameters:
solverScope
- never null- Returns:
- true if all the Terminations are terminated.
-
isPhaseTerminated
public boolean isPhaseTerminated(AbstractPhaseScope phaseScope)
Description copied from interface:Termination
Called by thePhase
after every step and every move to determine if the search should stop.- Parameters:
phaseScope
- never null- Returns:
- true if all the Terminations are terminated.
-
calculateSolverTimeGradient
public double calculateSolverTimeGradient(DefaultSolverScope solverScope)
Calculates the minimum timeGradient of all Terminations. Not supported timeGradients (-1.0) are ignored.- Parameters:
solverScope
- never null- Returns:
- the minimum timeGradient of the Terminations.
-
calculatePhaseTimeGradient
public double calculatePhaseTimeGradient(AbstractPhaseScope phaseScope)
Calculates the minimum timeGradient of all Terminations. Not supported timeGradients (-1.0) are ignored.- Parameters:
phaseScope
- never null- Returns:
- the minimum timeGradient of the Terminations.
-
createChildThreadTermination
public AndCompositeTermination createChildThreadTermination(DefaultSolverScope solverScope, ChildThreadType childThreadType)
Description copied from interface:Termination
- Specified by:
createChildThreadTermination
in interfaceTermination
- Overrides:
createChildThreadTermination
in classAbstractTermination
- Parameters:
solverScope
- never nullchildThreadType
- never null- Returns:
- not null
-
-