Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| OptaPlanner distribution 6.2.0.CR1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.optaplanner.core.impl.heuristic.selector.value
Interface ValueSelector

All Superinterfaces:
  EventListener, PhaseLifecycleListener, Selector, SolverLifecycleListener

All Known Subinterfaces:
  EntityIndependentValueSelector

All Known Implementing Classes:
  AbstractCachingValueSelector, AbstractValueSelector, CachingValueSelector, DowncastingValueSelector, EntityDependentSortingValueSelector, FromEntityPropertyValueSelector, FromSolutionPropertyValueSelector, InitializedValueSelector, NearEntityNearbyValueSelector, ProbabilityValueSelector, ReinitializeVariableValueSelector, SelectedCountLimitValueSelector, ShufflingValueSelector, SortingValueSelector

    public interface ValueSelector

extends Selector

Selects values from the ValueRangeProvider) for a {@link PlanningVariable} annotated property.

See Also:
  `AbstractValueSelector`

Method Summary
`Iterator<Object>` | `endingIterator(Object entity)` If `Selector.isNeverEnding()` is true, then `iterator(Object)` will never end.
`long` | `getSize(Object entity)` Similar to `IterableSelector.getSize()`, but requires an entity.
`GenuineVariableDescriptor` | `getVariableDescriptor()`
`Iterator<Object>` | `iterator(Object entity)` Similar to `Iterable.iterator()`, but requires an entity.

Methods inherited from interface org.optaplanner.core.impl.heuristic.selector.Selector
`getCacheType, isCountable, isNeverEnding`

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, solvingStarted`

Method Detail

### getVariableDescriptor

    GenuineVariableDescriptor getVariableDescriptor()

  Returns:
    never null

### getSize

    long getSize(Object entity)

  Similar to `IterableSelector.getSize()`, but requires an entity.

  Parameters:
    `entity` - never null
  Returns:
    the approximate number of elements generated by this `Selector`, always >= 0
  Throws:
    `IllegalStateException` - if `Selector.isCountable()` returns false, but not if only `Selector.isNeverEnding()` returns true

### iterator

    Iterator<Object> iterator(Object entity)

  Similar to `Iterable.iterator()`, but requires an entity.

  Parameters:
    `entity` - never null
  Returns:
    never null

### endingIterator

    Iterator<Object> endingIterator(Object entity)

  If `Selector.isNeverEnding()` is true, then `iterator(Object)` will never end. This returns an ending `Iterator`, that tries to match `iterator(Object)` as much as possible, but return each distinct element only once and therefore it might not respect the configuration of this `ValueSelector` entirely.

  Returns:
    never null
  See Also:
    `iterator(Object)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| OptaPlanner distribution 6.2.0.CR1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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