Class OrCompositeTermination
- 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.OrCompositeTermination
-
- All Implemented Interfaces:
EventListener,PhaseLifecycleListener,SolverLifecycleListener,Termination
public class OrCompositeTermination 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 OrCompositeTermination(List<Termination> terminationList)OrCompositeTermination(Termination... terminations)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doublecalculatePhaseTimeGradient(AbstractPhaseScope phaseScope)Calculates the maximum timeGradient of all Terminations.doublecalculateSolverTimeGradient(DefaultSolverScope solverScope)Calculates the maximum timeGradient of all Terminations.OrCompositeTerminationcreateChildThreadTermination(DefaultSolverScope solverScope, ChildThreadType childThreadType)booleanisPhaseTerminated(AbstractPhaseScope phaseScope)Called by thePhaseafter every step and every move to determine if the search should stop.booleanisSolverTerminated(DefaultSolverScope solverScope)Called by theSolverafter every phase to determine if the search should stop.StringtoString()-
Methods inherited from class org.optaplanner.core.impl.solver.termination.AbstractCompositeTermination
createChildThreadTerminationList, phaseEnded, phaseStarted, solvingEnded, solvingStarted, stepEnded, stepStarted
-
-
-
-
Constructor Detail
-
OrCompositeTermination
public OrCompositeTermination(List<Termination> terminationList)
-
OrCompositeTermination
public OrCompositeTermination(Termination... terminations)
-
-
Method Detail
-
isSolverTerminated
public boolean isSolverTerminated(DefaultSolverScope solverScope)
Description copied from interface:TerminationCalled by theSolverafter every phase to determine if the search should stop.- Parameters:
solverScope- never null- Returns:
- true if any of the Termination is terminated.
-
isPhaseTerminated
public boolean isPhaseTerminated(AbstractPhaseScope phaseScope)
Description copied from interface:TerminationCalled by thePhaseafter every step and every move to determine if the search should stop.- Parameters:
phaseScope- never null- Returns:
- true if any of the Termination is terminated.
-
calculateSolverTimeGradient
public double calculateSolverTimeGradient(DefaultSolverScope solverScope)
Calculates the maximum timeGradient of all Terminations. Not supported timeGradients (-1.0) are ignored.- Parameters:
solverScope- never null- Returns:
- the maximum timeGradient of the Terminations.
-
calculatePhaseTimeGradient
public double calculatePhaseTimeGradient(AbstractPhaseScope phaseScope)
Calculates the maximum timeGradient of all Terminations. Not supported timeGradients (-1.0) are ignored.- Parameters:
phaseScope- never null- Returns:
- the maximum timeGradient of the Terminations.
-
createChildThreadTermination
public OrCompositeTermination createChildThreadTermination(DefaultSolverScope solverScope, ChildThreadType childThreadType)
Description copied from interface:Termination- Specified by:
createChildThreadTerminationin interfaceTermination- Overrides:
createChildThreadTerminationin classAbstractTermination- Parameters:
solverScope- never nullchildThreadType- never null- Returns:
- not null
-
-