Package org.optaplanner.core.impl.score.stream.drools.common.nodes

## Class AbstractConstraintModelChildNode

- java.lang.Object
- - org.optaplanner.core.impl.score.stream.drools.common.nodes.AbstractConstraintModelNode
  - - org.optaplanner.core.impl.score.stream.drools.common.nodes.AbstractConstraintModelChildNode

- All Implemented Interfaces:
    `ChildNode`, `ConstraintGraphNode`
  Direct Known Subclasses:
    `AbstractConstraintModelGroupingNode`, `AbstractConstraintModelJoiningNode`

      public abstract class AbstractConstraintModelChildNode
      extends AbstractConstraintModelNode
      implements ChildNode

- - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addParentNode​(ConstraintGraphNode node)` |
    `Class` | `getFactType()` | Return `FromNode.getFactType()` of the ultimate parent node.
    `List<ConstraintGraphNode>` | `getParentNodes()` | Retrieves an unmodifiable collection of unique nodes which precede this one.

    - ### Methods inherited from class org.optaplanner.core.impl.score.stream.drools.common.nodes.AbstractConstraintModelNode

      `addChildNode, addConsequence, getChildNodes, getConsequences, getType`

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

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

    - ### Methods inherited from interface org.optaplanner.core.impl.score.stream.drools.common.nodes.ConstraintGraphNode

      `getCardinality`

- - ### Method Detail

    - #### addParentNode

          public final void addParentNode​(ConstraintGraphNode node)

    - #### getFactType

          public final Class getFactType()

      Description copied from interface: `ConstraintGraphNode`
      Return `FromNode.getFactType()` of the ultimate parent node.
      Specified by:
        `getFactType` in interface `ConstraintGraphNode`
      Returns:
        null when the ultimate parent is a join/groupBy node

    - #### getParentNodes

          public final List<ConstraintGraphNode> getParentNodes()

      Description copied from interface: `ChildNode`
      Retrieves an unmodifiable collection of unique nodes which precede this one.
      Specified by:
        `getParentNodes` in interface `ChildNode`
      Returns:
        never null, never empty. Most often contains one value, join nodes will have two.