## Uses of Interface
org.optaplanner.core.impl.solver.termination.Termination

- Packages that use Termination
  Package | Description
  --- | ---
  org.optaplanner.core.config.solver.termination |
  org.optaplanner.core.impl.constructionheuristic |
  org.optaplanner.core.impl.constructionheuristic.decider |
  org.optaplanner.core.impl.exhaustivesearch |
  org.optaplanner.core.impl.exhaustivesearch.decider |
  org.optaplanner.core.impl.localsearch |
  org.optaplanner.core.impl.localsearch.decider |
  org.optaplanner.core.impl.partitionedsearch |
  org.optaplanner.core.impl.phase |
  org.optaplanner.core.impl.phase.custom |
  org.optaplanner.core.impl.solver |
  org.optaplanner.core.impl.solver.termination |

- - ### Uses of Termination in org.optaplanner.core.config.solver.termination

    Methods in org.optaplanner.core.config.solver.termination that return types with arguments of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `Class<? extends Termination>` | TerminationConfig.`getTerminationClass()` |

    Method parameters in org.optaplanner.core.config.solver.termination with type arguments of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | TerminationConfig.`setTerminationClass​(Class<? extends Termination> terminationClass)` |
    `TerminationConfig` | TerminationConfig.`withTerminationClass​(Class<? extends Termination> terminationClass)` |

  - ### Uses of Termination in org.optaplanner.core.impl.constructionheuristic

    Methods in org.optaplanner.core.impl.constructionheuristic with parameters of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `ConstructionHeuristicPhase<Solution_>` | DefaultConstructionHeuristicPhaseFactory.`buildPhase​(int phaseIndex, HeuristicConfigPolicy<Solution_> solverConfigPolicy, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> solverTermination)` |

    Constructors in org.optaplanner.core.impl.constructionheuristic with parameters of type Termination
    Constructor | Description
    --- | ---
    `DefaultConstructionHeuristicPhase​(int phaseIndex, String logIndentation, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> termination)` |

  - ### Uses of Termination in org.optaplanner.core.impl.constructionheuristic.decider

    Fields in org.optaplanner.core.impl.constructionheuristic.decider declared as Termination
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Termination<Solution_>` | ConstructionHeuristicDecider.`termination` |

    Constructors in org.optaplanner.core.impl.constructionheuristic.decider with parameters of type Termination
    Constructor | Description
    --- | ---
    `ConstructionHeuristicDecider​(String logIndentation, Termination<Solution_> termination, ConstructionHeuristicForager<Solution_> forager)` |
    `MultiThreadedConstructionHeuristicDecider​(String logIndentation, Termination<Solution_> termination, ConstructionHeuristicForager<Solution_> forager, ThreadFactory threadFactory, int moveThreadCount, int selectedMoveBufferSize)` |

  - ### Uses of Termination in org.optaplanner.core.impl.exhaustivesearch

    Methods in org.optaplanner.core.impl.exhaustivesearch with parameters of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `ExhaustiveSearchPhase<Solution_>` | DefaultExhaustiveSearchPhaseFactory.`buildPhase​(int phaseIndex, HeuristicConfigPolicy<Solution_> solverConfigPolicy, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> solverTermination)` |

    Constructors in org.optaplanner.core.impl.exhaustivesearch with parameters of type Termination
    Constructor | Description
    --- | ---
    `DefaultExhaustiveSearchPhase​(int phaseIndex, String logIndentation, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> termination)` |

  - ### Uses of Termination in org.optaplanner.core.impl.exhaustivesearch.decider

    Fields in org.optaplanner.core.impl.exhaustivesearch.decider declared as Termination
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Termination<Solution_>` | ExhaustiveSearchDecider.`termination` |

    Constructors in org.optaplanner.core.impl.exhaustivesearch.decider with parameters of type Termination
    Constructor | Description
    --- | ---
    `ExhaustiveSearchDecider​(String logIndentation, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> termination, ManualEntityMimicRecorder<Solution_> manualEntityMimicRecorder, MoveSelector<Solution_> moveSelector, boolean scoreBounderEnabled, ScoreBounder scoreBounder)` |

  - ### Uses of Termination in org.optaplanner.core.impl.localsearch

    Methods in org.optaplanner.core.impl.localsearch with parameters of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `LocalSearchPhase<Solution_>` | DefaultLocalSearchPhaseFactory.`buildPhase​(int phaseIndex, HeuristicConfigPolicy<Solution_> solverConfigPolicy, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> solverTermination)` |

    Constructors in org.optaplanner.core.impl.localsearch with parameters of type Termination
    Constructor | Description
    --- | ---
    `DefaultLocalSearchPhase​(int phaseIndex, String logIndentation, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> termination)` |

  - ### Uses of Termination in org.optaplanner.core.impl.localsearch.decider

    Fields in org.optaplanner.core.impl.localsearch.decider declared as Termination
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Termination<Solution_>` | LocalSearchDecider.`termination` |

    Methods in org.optaplanner.core.impl.localsearch.decider that return Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `Termination<Solution_>` | LocalSearchDecider.`getTermination()` |

    Constructors in org.optaplanner.core.impl.localsearch.decider with parameters of type Termination
    Constructor | Description
    --- | ---
    `LocalSearchDecider​(String logIndentation, Termination<Solution_> termination, MoveSelector<Solution_> moveSelector, Acceptor<Solution_> acceptor, LocalSearchForager<Solution_> forager)` |
    `MultiThreadedLocalSearchDecider​(String logIndentation, Termination<Solution_> termination, MoveSelector<Solution_> moveSelector, Acceptor<Solution_> acceptor, LocalSearchForager<Solution_> forager, ThreadFactory threadFactory, int moveThreadCount, int selectedMoveBufferSize)` |

  - ### Uses of Termination in org.optaplanner.core.impl.partitionedsearch

    Methods in org.optaplanner.core.impl.partitionedsearch with parameters of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `PartitionedSearchPhase<Solution_>` | DefaultPartitionedSearchPhaseFactory.`buildPhase​(int phaseIndex, HeuristicConfigPolicy<Solution_> solverConfigPolicy, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> solverTermination)` |

    Constructors in org.optaplanner.core.impl.partitionedsearch with parameters of type Termination
    Constructor | Description
    --- | ---
    `DefaultPartitionedSearchPhase​(int phaseIndex, String logIndentation, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> termination, SolutionPartitioner<Solution_> solutionPartitioner, ThreadFactory threadFactory, Integer runnablePartThreadLimit)` |
    `PartitionSolver​(BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> termination, List<Phase<Solution_>> phaseList, SolverScope<Solution_> solverScope)` |

  - ### Uses of Termination in org.optaplanner.core.impl.phase

    Fields in org.optaplanner.core.impl.phase declared as Termination
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Termination<Solution_>` | AbstractPhase.`termination` |

    Methods in org.optaplanner.core.impl.phase that return Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected Termination<Solution_>` | AbstractPhaseFactory.`buildPhaseTermination​(HeuristicConfigPolicy<Solution_> configPolicy, Termination<Solution_> solverTermination)` |
    `Termination<Solution_>` | AbstractPhase.`getTermination()` |

    Methods in org.optaplanner.core.impl.phase with parameters of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `NoChangePhase<Solution_>` | NoChangePhaseFactory.`buildPhase​(int phaseIndex, HeuristicConfigPolicy<Solution_> solverConfigPolicy, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> solverTermination)` |
    `Phase<Solution_>` | PhaseFactory.`buildPhase​(int phaseIndex, HeuristicConfigPolicy<Solution_> solverConfigPolicy, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> solverTermination)` |
    `protected Termination<Solution_>` | AbstractPhaseFactory.`buildPhaseTermination​(HeuristicConfigPolicy<Solution_> configPolicy, Termination<Solution_> solverTermination)` |

    Constructors in org.optaplanner.core.impl.phase with parameters of type Termination
    Constructor | Description
    --- | ---
    `AbstractPhase​(int phaseIndex, String logIndentation, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> termination)` |
    `NoChangePhase​(int phaseIndex, String logIndentation, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination termination)` |

  - ### Uses of Termination in org.optaplanner.core.impl.phase.custom

    Methods in org.optaplanner.core.impl.phase.custom with parameters of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `CustomPhase<Solution_>` | DefaultCustomPhaseFactory.`buildPhase​(int phaseIndex, HeuristicConfigPolicy<Solution_> solverConfigPolicy, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> solverTermination)` |

    Constructors in org.optaplanner.core.impl.phase.custom with parameters of type Termination
    Constructor | Description
    --- | ---
    `DefaultCustomPhase​(int phaseIndex, String logIndentation, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> termination)` |

  - ### Uses of Termination in org.optaplanner.core.impl.solver

    Fields in org.optaplanner.core.impl.solver declared as Termination
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Termination<Solution_>` | AbstractSolver.`termination` |

    Methods in org.optaplanner.core.impl.solver with parameters of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected List<Phase<Solution_>>` | DefaultSolverFactory.`buildPhaseList​(HeuristicConfigPolicy<Solution_> configPolicy, BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> termination)` |

    Constructors in org.optaplanner.core.impl.solver with parameters of type Termination
    Constructor | Description
    --- | ---
    `AbstractSolver​(BestSolutionRecaller<Solution_> bestSolutionRecaller, Termination<Solution_> termination, List<Phase<Solution_>> phaseList)` |
    `DefaultSolver​(EnvironmentMode environmentMode, RandomFactory randomFactory, BestSolutionRecaller<Solution_> bestSolutionRecaller, BasicPlumbingTermination<Solution_> basicPlumbingTermination, Termination<Solution_> termination, List<Phase<Solution_>> phaseList, SolverScope<Solution_> solverScope, String moveThreadCountDescription)` |

  - ### Uses of Termination in org.optaplanner.core.impl.solver.termination

    Classes in org.optaplanner.core.impl.solver.termination that implement Termination
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractCompositeTermination<Solution_>` | Abstract superclass that combines multiple `Termination`s.
    `class` | `AbstractTermination<Solution_>` | Abstract superclass for `Termination`.
    `class` | `AndCompositeTermination<Solution_>` |
    `class` | `BasicPlumbingTermination<Solution_>` | Concurrency notes: Condition predicate on (`BasicPlumbingTermination.problemFactChangeQueue` is not empty or `BasicPlumbingTermination.terminatedEarly` is true).
    `class` | `BestScoreFeasibleTermination<Solution_>` |
    `class` | `BestScoreTermination<Solution_>` |
    `class` | `ChildThreadPlumbingTermination<Solution_>` |
    `class` | `OrCompositeTermination<Solution_>` |
    `class` | `PhaseToSolverTerminationBridge<Solution_>` |
    `class` | `ScoreCalculationCountTermination<Solution_>` |
    `class` | `StepCountTermination<Solution_>` |
    `class` | `TimeMillisSpentTermination<Solution_>` |
    `class` | `UnimprovedStepCountTermination<Solution_>` |
    `class` | `UnimprovedTimeMillisSpentScoreDifferenceThresholdTermination<Solution_>` |
    `class` | `UnimprovedTimeMillisSpentTermination<Solution_>` |

    Fields in org.optaplanner.core.impl.solver.termination with type parameters of type Termination
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected List<Termination<Solution_>>` | AbstractCompositeTermination.`terminationList` |

    Methods in org.optaplanner.core.impl.solver.termination that return Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `<Score_ extends Score<Score_>> Termination<Solution_>` | TerminationFactory.`buildTermination​(HeuristicConfigPolicy<Solution_> configPolicy)` |
    `Termination<Solution_>` | TerminationFactory.`buildTermination​(HeuristicConfigPolicy<Solution_> configPolicy, Termination<Solution_> chainedTermination)` |
    `protected Termination<Solution_>` | TerminationFactory.`buildTerminationFromList​(List<Termination<Solution_>> terminationList)` |
    `Termination<Solution_>` | AbstractTermination.`createChildThreadTermination​(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)` |
    `Termination<Solution_>` | BasicPlumbingTermination.`createChildThreadTermination​(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)` |
    `Termination<Solution_>` | BestScoreFeasibleTermination.`createChildThreadTermination​(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)` |
    `Termination<Solution_>` | BestScoreTermination.`createChildThreadTermination​(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)` |
    `Termination<Solution_>` | ChildThreadPlumbingTermination.`createChildThreadTermination​(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)` |
    `Termination<Solution_>` | PhaseToSolverTerminationBridge.`createChildThreadTermination​(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)` |
    `Termination<Solution_>` | Termination.`createChildThreadTermination​(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)` | Create a `Termination` for a child `Thread` of the `Solver`.

    Methods in org.optaplanner.core.impl.solver.termination that return types with arguments of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected List<Termination<Solution_>>` | TerminationFactory.`buildInnerTermination​(HeuristicConfigPolicy<Solution_> configPolicy)` |
    `protected <Score_ extends Score<Score_>> List<Termination<Solution_>>` | TerminationFactory.`buildTimeBasedTermination​(HeuristicConfigPolicy<Solution_> configPolicy)` |
    `protected List<Termination<Solution_>>` | AbstractCompositeTermination.`createChildThreadTerminationList​(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)` |

    Methods in org.optaplanner.core.impl.solver.termination with parameters of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `Termination<Solution_>` | TerminationFactory.`buildTermination​(HeuristicConfigPolicy<Solution_> configPolicy, Termination<Solution_> chainedTermination)` |

    Method parameters in org.optaplanner.core.impl.solver.termination with type arguments of type Termination
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected Termination<Solution_>` | TerminationFactory.`buildTerminationFromList​(List<Termination<Solution_>> terminationList)` |

    Constructors in org.optaplanner.core.impl.solver.termination with parameters of type Termination
    Constructor | Description
    --- | ---
    `AbstractCompositeTermination​(Termination<Solution_>... terminations)` |
    `AndCompositeTermination​(Termination<Solution_>... terminations)` |
    `OrCompositeTermination​(Termination<Solution_>... terminations)` |
    `PhaseToSolverTerminationBridge​(Termination<Solution_> solverTermination)` |

    Constructor parameters in org.optaplanner.core.impl.solver.termination with type arguments of type Termination
    Constructor | Description
    --- | ---
    `AbstractCompositeTermination​(List<Termination<Solution_>> terminationList)` |
    `AndCompositeTermination​(List<Termination<Solution_>> terminationList)` |
    `OrCompositeTermination​(List<Termination<Solution_>> terminationList)` |