Class SortingMoveSelector<Solution_>
java.lang.Object
org.optaplanner.core.impl.heuristic.selector.AbstractSelector<Solution_>
org.optaplanner.core.impl.heuristic.selector.move.AbstractMoveSelector<Solution_>
org.optaplanner.core.impl.heuristic.selector.move.decorator.AbstractCachingMoveSelector<Solution_>
org.optaplanner.core.impl.heuristic.selector.move.decorator.SortingMoveSelector<Solution_>
- All Implemented Interfaces:
Iterable<Move<Solution_>>
,EventListener
,SelectionCacheLifecycleListener<Solution_>
,IterableSelector<Solution_,
,Move<Solution_>> MoveSelector<Solution_>
,Selector<Solution_>
,PhaseLifecycleListener<Solution_>
,SolverLifecycleListener<Solution_>
-
Field Summary
Fields inherited from class org.optaplanner.core.impl.heuristic.selector.move.decorator.AbstractCachingMoveSelector
cachedMoveList, cacheType, childMoveSelector
Fields inherited from class org.optaplanner.core.impl.heuristic.selector.AbstractSelector
logger, phaseLifecycleSupport, workingRandom
-
Constructor Summary
ConstructorDescriptionSortingMoveSelector
(MoveSelector<Solution_> childMoveSelector, SelectionCacheType cacheType, SelectionSorter<Solution_, Move<Solution_>> sorter) -
Method Summary
Modifier and TypeMethodDescriptionvoid
constructCache
(SolverScope<Solution_> solverScope) boolean
Is true ifSelector.isCountable()
is false or if this selector is in random order (for most cases).iterator()
toString()
Methods inherited from class org.optaplanner.core.impl.heuristic.selector.move.decorator.AbstractCachingMoveSelector
disposeCache, getCacheType, getChildMoveSelector, getSize, isCountable
Methods inherited from class org.optaplanner.core.impl.heuristic.selector.AbstractSelector
phaseEnded, phaseStarted, solvingEnded, solvingStarted, stepEnded, stepStarted
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.optaplanner.core.impl.heuristic.selector.IterableSelector
spliterator
Methods inherited from interface org.optaplanner.core.impl.heuristic.selector.move.MoveSelector
supportsPhaseAndSolverCaching
Methods inherited from interface org.optaplanner.core.impl.phase.event.PhaseLifecycleListener
phaseEnded, phaseStarted, stepEnded, stepStarted
Methods inherited from interface org.optaplanner.core.impl.solver.event.SolverLifecycleListener
solvingEnded, solvingError, solvingStarted
-
Field Details
-
sorter
-
-
Constructor Details
-
SortingMoveSelector
public SortingMoveSelector(MoveSelector<Solution_> childMoveSelector, SelectionCacheType cacheType, SelectionSorter<Solution_, Move<Solution_>> sorter)
-
-
Method Details
-
constructCache
- Specified by:
constructCache
in interfaceSelectionCacheLifecycleListener<Solution_>
- Overrides:
constructCache
in classAbstractCachingMoveSelector<Solution_>
-
isNeverEnding
public boolean isNeverEnding()Description copied from interface:Selector
Is true ifSelector.isCountable()
is false or if this selector is in random order (for most cases). Is never true when this selector is in shuffled order (which is less scalable but more exact).- Returns:
- true if the
Iterator.hasNext()
of theIterator
created byIterable.iterator()
never returns false (except when it's empty).
-
iterator
-
toString
-