Package org.optaplanner.core.config.heuristic.selector.move.generic

## Class AbstractPillarMoveSelectorConfig<C extends AbstractPillarMoveSelectorConfig<C>>

- java.lang.Object
- - org.optaplanner.core.config.AbstractConfig<C>
  - - org.optaplanner.core.config.heuristic.selector.SelectorConfig<C>
    - - org.optaplanner.core.config.heuristic.selector.move.MoveSelectorConfig<C>
      - - org.optaplanner.core.config.heuristic.selector.move.generic.AbstractPillarMoveSelectorConfig<C>

- Direct Known Subclasses:
    `PillarChangeMoveSelectorConfig`, `PillarSwapMoveSelectorConfig`

      public abstract class AbstractPillarMoveSelectorConfig<C extends AbstractPillarMoveSelectorConfig<C>>
      extends MoveSelectorConfig<C>

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected PillarSelectorConfig` | `pillarSelectorConfig` |
    `protected Class<? extends Comparator>` | `subPillarSequenceComparatorClass` |
    `protected SubPillarType` | `subPillarType` |

    - ### Fields inherited from class org.optaplanner.core.config.heuristic.selector.move.MoveSelectorConfig

      `cacheType, filterClassList, probabilityWeightFactoryClass, selectedCountLimit, selectionOrder, sorterClass, sorterComparatorClass, sorterOrder, sorterWeightFactoryClass`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `AbstractPillarMoveSelectorConfig()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `PillarSelectorConfig` | `getPillarSelectorConfig()` |
    `Class<? extends Comparator>` | `getSubPillarSequenceComparatorClass()` |
    `SubPillarType` | `getSubPillarType()` |
    `C` | `inherit​(C inheritedConfig)` | Inherits each property of the `inheritedConfig` unless that property (or a semantic alternative) is defined by this instance (which overwrites the inherited behaviour).
    `void` | `setPillarSelectorConfig​(PillarSelectorConfig pillarSelectorConfig)` |
    `void` | `setSubPillarSequenceComparatorClass​(Class<? extends Comparator> subPillarSequenceComparatorClass)` |
    `void` | `setSubPillarType​(SubPillarType subPillarType)` |

    - ### Methods inherited from class org.optaplanner.core.config.heuristic.selector.move.MoveSelectorConfig

      `buildBaseMoveSelector, buildMoveSelector, buildUnfoldedMoveSelectorConfig, determineBaseRandomSelection, extractLeafMoveSelectorConfigsIntoList, getCacheType, getFilterClassList, getFixedProbabilityWeight, getProbabilityWeightFactoryClass, getSelectedCountLimit, getSelectionOrder, getSorterClass, getSorterComparatorClass, getSorterOrder, getSorterWeightFactoryClass, inheritFolded, isBaseInherentlyCached, setCacheType, setFilterClassList, setFixedProbabilityWeight, setProbabilityWeightFactoryClass, setSelectedCountLimit, setSelectionOrder, setSorterClass, setSorterComparatorClass, setSorterOrder, setSorterWeightFactoryClass, withCacheType, withFilterClassList, withFixedProbabilityWeight, withProbabilityWeightFactoryClass, withSelectedCountLimit, withSelectionOrder, withSorterClass, withSorterComparatorClass, withSorterOrder, withSorterWeightFactoryClass`

    - ### Methods inherited from class org.optaplanner.core.config.heuristic.selector.SelectorConfig

      `validateCacheTypeVersusSelectionOrder`

    - ### Methods inherited from class org.optaplanner.core.config.AbstractConfig

      `copyConfig, deduceEntityDescriptor, deduceVariableDescriptor, deduceVariableDescriptorList, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### subPillarType

          protected SubPillarType subPillarType

    - #### subPillarSequenceComparatorClass

          protected Class<? extends Comparator> subPillarSequenceComparatorClass

    - #### pillarSelectorConfig

          protected PillarSelectorConfig pillarSelectorConfig

  - ### Constructor Detail

    - #### AbstractPillarMoveSelectorConfig

          public AbstractPillarMoveSelectorConfig()

  - ### Method Detail

    - #### getSubPillarType

          public SubPillarType getSubPillarType()

    - #### setSubPillarType

          public void setSubPillarType​(SubPillarType subPillarType)

    - #### getSubPillarSequenceComparatorClass

          public Class<? extends Comparator> getSubPillarSequenceComparatorClass()

    - #### setSubPillarSequenceComparatorClass

          public void setSubPillarSequenceComparatorClass​(Class<? extends Comparator> subPillarSequenceComparatorClass)

    - #### getPillarSelectorConfig

          public PillarSelectorConfig getPillarSelectorConfig()

    - #### setPillarSelectorConfig

          public void setPillarSelectorConfig​(PillarSelectorConfig pillarSelectorConfig)

    - #### inherit

          public C inherit​(C inheritedConfig)

      Description copied from class: `AbstractConfig`
      Inherits each property of the `inheritedConfig` unless that property (or a semantic alternative) is defined by this instance (which overwrites the inherited behaviour).

      After the inheritance, if a property on this `AbstractConfig` composition is replaced, it should not affect the inherited composition instance.

      Overrides:
        `inherit` in class `MoveSelectorConfig<C extends AbstractPillarMoveSelectorConfig<C>>`
      Parameters:
        `inheritedConfig` - never null
      Returns:
        this