# Package org.optaplanner.core.impl.heuristic.selector.common.decorator

- Interface Summary
  Interface | Description
  --- | ---
  SelectionFilter<Solution_,​T> | Decides on accepting or discarding a selection (which is a `PlanningEntity`, a planningValue, a `Move` or a `Selector`).
  SelectionProbabilityWeightFactory<Solution_,​T> | Create a probabilityWeight for a selection (which is a `PlanningEntity`, a planningValue, a `Move` or a `Selector`).
  SelectionSorter<Solution_,​T> | Decides the order of a `List` of selection (which is a `PlanningEntity`, a planningValue, a `Move` or a `Selector`).
  SelectionSorterWeightFactory<Solution_,​T> | Creates a weight to decide the order of a collections of selections (a selection is a `PlanningEntity`, a planningValue, a `Move` or a `Selector`).

- Class Summary
  Class | Description
  --- | ---
  ComparatorSelectionSorter<Solution_,​T> | Sorts a selection `List` based on a `Comparator`.
  CompositeSelectionFilter<Solution_,​T> | Combines several `SelectionFilter`s into one.
  FairSelectorProbabilityWeightFactory<Solution_> |
  FixedSelectorProbabilityWeightFactory<Solution_,​Selector_ extends Selector> |
  WeightFactorySelectionSorter<Solution_,​T> | Sorts a selection `List` based on a `SelectionSorterWeightFactory`.