Class PhaseToSolverTerminationBridge<Solution_>
- java.lang.Object
 - 
- org.optaplanner.core.impl.solver.event.SolverLifecycleListenerAdapter<Solution_>
 - 
- org.optaplanner.core.impl.phase.event.PhaseLifecycleListenerAdapter<Solution_>
 - 
- org.optaplanner.core.impl.solver.termination.AbstractTermination<Solution_>
 - 
- org.optaplanner.core.impl.solver.termination.PhaseToSolverTerminationBridge<Solution_>
 
 
 
 
 
- 
- All Implemented Interfaces:
 EventListener,PhaseLifecycleListener<Solution_>,SolverLifecycleListener<Solution_>,Termination<Solution_>
public class PhaseToSolverTerminationBridge<Solution_> extends AbstractTermination<Solution_>
 
- 
- 
Field Summary
- 
Fields inherited from class org.optaplanner.core.impl.solver.termination.AbstractTermination
logger 
 - 
 
- 
Constructor Summary
Constructors Constructor Description PhaseToSolverTerminationBridge(Termination<Solution_> solverTermination) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doublecalculatePhaseTimeGradient(AbstractPhaseScope<Solution_> phaseScope)doublecalculateSolverTimeGradient(SolverScope<Solution_> solverScope)A timeGradient is a relative estimate of how long the search will continue.Termination<Solution_>createChildThreadTermination(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)booleanisPhaseTerminated(AbstractPhaseScope<Solution_> phaseScope)Called by thePhaseafter every step and every move to determine if the search should stop.booleanisSolverTerminated(SolverScope<Solution_> solverScope)Called by theSolverafter every phase to determine if the search should stop.voidphaseEnded(AbstractPhaseScope<Solution_> phaseScope)voidphaseStarted(AbstractPhaseScope<Solution_> phaseScope)voidsolvingEnded(SolverScope<Solution_> solverScope)voidsolvingStarted(SolverScope<Solution_> solverScope)voidstepEnded(AbstractStepScope<Solution_> stepScope)voidstepStarted(AbstractStepScope<Solution_> stepScope)StringtoString() 
 - 
 
- 
- 
Constructor Detail
- 
PhaseToSolverTerminationBridge
public PhaseToSolverTerminationBridge(Termination<Solution_> solverTermination)
 
 - 
 
- 
Method Detail
- 
solvingStarted
public void solvingStarted(SolverScope<Solution_> solverScope)
- Specified by:
 solvingStartedin interfaceSolverLifecycleListener<Solution_>- Overrides:
 solvingStartedin classSolverLifecycleListenerAdapter<Solution_>
 
- 
phaseStarted
public void phaseStarted(AbstractPhaseScope<Solution_> phaseScope)
- Specified by:
 phaseStartedin interfacePhaseLifecycleListener<Solution_>- Overrides:
 phaseStartedin classPhaseLifecycleListenerAdapter<Solution_>
 
- 
stepStarted
public void stepStarted(AbstractStepScope<Solution_> stepScope)
- Specified by:
 stepStartedin interfacePhaseLifecycleListener<Solution_>- Overrides:
 stepStartedin classPhaseLifecycleListenerAdapter<Solution_>
 
- 
stepEnded
public void stepEnded(AbstractStepScope<Solution_> stepScope)
- Specified by:
 stepEndedin interfacePhaseLifecycleListener<Solution_>- Overrides:
 stepEndedin classPhaseLifecycleListenerAdapter<Solution_>
 
- 
phaseEnded
public void phaseEnded(AbstractPhaseScope<Solution_> phaseScope)
- Specified by:
 phaseEndedin interfacePhaseLifecycleListener<Solution_>- Overrides:
 phaseEndedin classPhaseLifecycleListenerAdapter<Solution_>
 
- 
solvingEnded
public void solvingEnded(SolverScope<Solution_> solverScope)
- Specified by:
 solvingEndedin interfaceSolverLifecycleListener<Solution_>- Overrides:
 solvingEndedin classSolverLifecycleListenerAdapter<Solution_>
 
- 
isSolverTerminated
public boolean isSolverTerminated(SolverScope<Solution_> solverScope)
Description copied from interface:TerminationCalled by theSolverafter every phase to determine if the search should stop.- Parameters:
 solverScope- never null- Returns:
 - true if the search should terminate.
 
 
- 
isPhaseTerminated
public boolean isPhaseTerminated(AbstractPhaseScope<Solution_> 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 the search should terminate.
 
 
- 
calculateSolverTimeGradient
public double calculateSolverTimeGradient(SolverScope<Solution_> solverScope)
Description copied from interface:TerminationA timeGradient is a relative estimate of how long the search will continue.Clients that use a timeGradient should cache it at the start of a single step because some implementations are not time-stable.
If a timeGradient cannot be calculated, it should return -1.0. Several implementations (such a
SimulatedAnnealingAcceptor) require a correctly implemented timeGradient.A Termination's timeGradient can be requested after they are terminated, so implementations should be careful not to return a timeGradient above 1.0.
- Parameters:
 solverScope- never null- Returns:
 - timeGradient t for which 
0.0 <= t <= 1.0 or -1.0when it is not supported. At the start of a solver t is 0.0 and at the end t would be 1.0. 
 
- 
calculatePhaseTimeGradient
public double calculatePhaseTimeGradient(AbstractPhaseScope<Solution_> phaseScope)
Description copied from interface:Termination- Parameters:
 phaseScope- never null- Returns:
 - timeGradient t for which 
0.0 <= t <= 1.0 or -1.0when it is not supported. At the start of a phase t is 0.0 and at the end t would be 1.0. 
 
- 
createChildThreadTermination
public Termination<Solution_> createChildThreadTermination(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)
Description copied from interface:Termination- Specified by:
 createChildThreadTerminationin interfaceTermination<Solution_>- Overrides:
 createChildThreadTerminationin classAbstractTermination<Solution_>- Parameters:
 solverScope- never nullchildThreadType- never null- Returns:
 - not null
 
 
 - 
 
 -