Package org.optaplanner.core.impl.score.stream.penta

## Class AbstractPentaJoiner<A,​B,​C,​D,​E>

- java.lang.Object
- - org.optaplanner.core.impl.score.stream.common.AbstractJoiner
  - - org.optaplanner.core.impl.score.stream.penta.AbstractPentaJoiner<A,​B,​C,​D,​E>

- All Implemented Interfaces:
    `PentaJoiner<A,​B,​C,​D,​E>`
  Direct Known Subclasses:
    `CompositePentaJoiner`, `FilteringPentaJoiner`, `NonePentaJoiner`, `SinglePentaJoiner`

      public abstract class AbstractPentaJoiner<A,​B,​C,​D,​E>
      extends AbstractJoiner
      implements PentaJoiner<A,​B,​C,​D,​E>

- - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `AbstractPentaJoiner()` |
    `protected` | `AbstractPentaJoiner​(PentaPredicate<A,​B,​C,​D,​E> filter)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `PentaPredicate<A,​B,​C,​D,​E>` | `getFilter()` |
    `abstract QuadFunction<A,​B,​C,​D,​Object[]>` | `getLeftCombinedMapping()` |
    `abstract QuadFunction<A,​B,​C,​D,​Object>` | `getLeftMapping​(int index)` |
    `abstract Function<E,​Object[]>` | `getRightCombinedMapping()` |
    `abstract Function<E,​Object>` | `getRightMapping​(int index)` |
    `boolean` | `matches​(A a, B b, C c, D d, E e)` |
    `static <A,​B,​C,​D,​E> AbstractPentaJoiner<A,​B,​C,​D,​E>` | `merge​(PentaJoiner<A,​B,​C,​D,​E>... joiners)` |

    - ### Methods inherited from class org.optaplanner.core.impl.score.stream.common.AbstractJoiner

      `getJoinerTypes`

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

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

- - ### Constructor Detail

    - #### AbstractPentaJoiner

          protected AbstractPentaJoiner()

    - #### AbstractPentaJoiner

          protected AbstractPentaJoiner​(PentaPredicate<A,​B,​C,​D,​E> filter)

  - ### Method Detail

    - #### merge

          @SafeVarargs
          public static <A,​B,​C,​D,​E> AbstractPentaJoiner<A,​B,​C,​D,​E> merge​(PentaJoiner<A,​B,​C,​D,​E>... joiners)

    - #### matches

          public boolean matches​(A a,
                                 B b,
                                 C c,
                                 D d,
                                 E e)

    - #### getLeftMapping

          public abstract QuadFunction<A,​B,​C,​D,​Object> getLeftMapping​(int index)

    - #### getLeftCombinedMapping

          public abstract QuadFunction<A,​B,​C,​D,​Object[]> getLeftCombinedMapping()

    - #### getRightMapping

          public abstract Function<E,​Object> getRightMapping​(int index)

    - #### getRightCombinedMapping

          public abstract Function<E,​Object[]> getRightCombinedMapping()

    - #### getFilter

          public PentaPredicate<A,​B,​C,​D,​E> getFilter()