OptaPlanner core 6.0.0.CR2

org.optaplanner.core.impl.heuristic.selector.value.decorator
Class SortingValueSelector

java.lang.Object
  extended by org.optaplanner.core.impl.heuristic.selector.AbstractSelector
      extended by org.optaplanner.core.impl.heuristic.selector.value.AbstractValueSelector
          extended by org.optaplanner.core.impl.heuristic.selector.value.decorator.AbstractCachingValueSelector
              extended by org.optaplanner.core.impl.heuristic.selector.value.decorator.SortingValueSelector
All Implemented Interfaces:
Iterable<Object>, EventListener, SelectionCacheLifecycleListener, IterableSelector<Object>, Selector, EntityIndependentValueSelector, ValueSelector, SolverPhaseLifecycleListener, SolverLifecycleListener

public class SortingValueSelector
extends AbstractCachingValueSelector
implements EntityIndependentValueSelector


Field Summary
protected  SelectionSorter sorter
           
 
Fields inherited from class org.optaplanner.core.impl.heuristic.selector.value.decorator.AbstractCachingValueSelector
cachedValueList, cacheType, childValueSelector
 
Fields inherited from class org.optaplanner.core.impl.heuristic.selector.AbstractSelector
logger, solverPhaseLifecycleSupport, workingRandom
 
Constructor Summary
SortingValueSelector(EntityIndependentValueSelector childValueSelector, SelectionCacheType cacheType, SelectionSorter sorter)
           
 
Method Summary
 void constructCache(DefaultSolverScope solverScope)
           
 boolean isNeverEnding()
          Is true if Selector.isContinuous() is true or if this selector is in random order (for most cases).
 Iterator<Object> iterator()
           
 Iterator<Object> iterator(Object entity)
          Similar to Iterable.iterator(), but requires an entity.
 String toString()
           
 
Methods inherited from class org.optaplanner.core.impl.heuristic.selector.value.decorator.AbstractCachingValueSelector
disposeCache, getCacheType, getChildValueSelector, getSize, getSize, getVariableDescriptor, isContinuous
 
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.value.ValueSelector
getSize, getVariableDescriptor
 
Methods inherited from interface org.optaplanner.core.impl.heuristic.selector.IterableSelector
getSize
 
Methods inherited from interface org.optaplanner.core.impl.heuristic.selector.Selector
getCacheType, isContinuous
 
Methods inherited from interface org.optaplanner.core.impl.phase.event.SolverPhaseLifecycleListener
phaseEnded, phaseStarted, stepEnded, stepStarted
 
Methods inherited from interface org.optaplanner.core.impl.solver.event.SolverLifecycleListener
solvingEnded, solvingStarted
 

Field Detail

sorter

protected final SelectionSorter sorter
Constructor Detail

SortingValueSelector

public SortingValueSelector(EntityIndependentValueSelector childValueSelector,
                            SelectionCacheType cacheType,
                            SelectionSorter sorter)
Method Detail

constructCache

public void constructCache(DefaultSolverScope solverScope)
Specified by:
constructCache in interface SelectionCacheLifecycleListener
Overrides:
constructCache in class AbstractCachingValueSelector

isNeverEnding

public boolean isNeverEnding()
Description copied from interface: Selector
Is true if Selector.isContinuous() is true 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).

Specified by:
isNeverEnding in interface Selector
Returns:
true if the Iterator.hasNext() of the Iterator created by Iterable.iterator() never returns false.

iterator

public Iterator<Object> iterator(Object entity)
Description copied from interface: ValueSelector
Similar to Iterable.iterator(), but requires an entity.

Specified by:
iterator in interface ValueSelector
Parameters:
entity - never null
Returns:
never null

iterator

public Iterator<Object> iterator()
Specified by:
iterator in interface Iterable<Object>

toString

public String toString()
Overrides:
toString in class Object

OptaPlanner core 6.0.0.CR2

Copyright © 2006-2013 JBoss by Red Hat. All Rights Reserved.