Package org.optaplanner.core.impl.localsearch.decider.forager.finalist

## Interface FinalistPodium<Solution_>

- All Superinterfaces:
    `EventListener`, `LocalSearchPhaseLifecycleListener<Solution_>`, `SolverLifecycleListener<Solution_>`
  All Known Implementing Classes:
    `AbstractFinalistPodium`, `HighestScoreFinalistPodium`, `StrategicOscillationByLevelFinalistPodium`

      public interface FinalistPodium<Solution_>
      extends LocalSearchPhaseLifecycleListener<Solution_>

  A podium gathers the finalists (the `LocalSearchMoveScope`s which might win) and picks the winner.
  See Also:
    `AbstractFinalistPodium`, `HighestScoreFinalistPodium`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addMove​(LocalSearchMoveScope<Solution_> moveScope)` | See `LocalSearchForager.addMove(LocalSearchMoveScope)`.
    `List<LocalSearchMoveScope<Solution_>>` | `getFinalistList()` |

    - ### Methods inherited from interface org.optaplanner.core.impl.localsearch.event.LocalSearchPhaseLifecycleListener

      `phaseEnded, phaseStarted, stepEnded, stepStarted`

    - ### Methods inherited from interface org.optaplanner.core.impl.solver.event.SolverLifecycleListener

      `solvingEnded, solvingStarted`

- - ### Method Detail

    - #### addMove

          void addMove​(LocalSearchMoveScope<Solution_> moveScope)

      See `LocalSearchForager.addMove(LocalSearchMoveScope)`.
      Parameters:
        `moveScope` - never null

    - #### getFinalistList

          List<LocalSearchMoveScope<Solution_>> getFinalistList()

      Returns:
        never null, sometimes empty