javax.persistence.criteria

## Interface ListJoin<Z,E>

- Type Parameters:
    `Z` - the source type of the join
    `E` - the element type of the target List
  All Superinterfaces:
    Expression<E>, FetchParent<Z,E>, From<Z,E>, Join<Z,E>, Path<E>, PluralJoin<Z,List<E>,E>, Selection<E>, TupleElement<E>

      public interface ListJoin<Z,E>
      extends PluralJoin<Z,List<E>,E>

  The `ListJoin` interface is the type of the result of joining to a collection over an association or element collection that has been specified as a `java.util.List`.
  Since:
    Java Persistence 2.0

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `ListAttribute<? super Z,E>` | `getModel()` Return the metamodel representation for the list attribute.
    `Expression<Integer>` | `index()` Create an expression that corresponds to the index of the object in the referenced association or element collection.
    `ListJoin<Z,E>` | `on(Expression<Boolean> restriction)` Modify the join to restrict the result according to the specified ON condition and return the join object.
    `ListJoin<Z,E>` | `on(Predicate... restrictions)` Modify the join to restrict the result according to the specified ON condition and return the join object.

    - ### Methods inherited from interface javax.persistence.criteria.Join

      `getAttribute, getJoinType, getOn, getParent`

    - ### Methods inherited from interface javax.persistence.criteria.From

      `getCorrelationParent, getJoins, isCorrelated, join, join, join, join, join, join, join, join, join, join, join, join, joinCollection, joinCollection, joinList, joinList, joinMap, joinMap, joinSet, joinSet`

    - ### Methods inherited from interface javax.persistence.criteria.Path

      `get, get, get, get, getParentPath, type`

    - ### Methods inherited from interface javax.persistence.criteria.Expression

      `as, in, in, in, in, isNotNull, isNull`

    - ### Methods inherited from interface javax.persistence.criteria.Selection

      `alias, getCompoundSelectionItems, isCompoundSelection`

    - ### Methods inherited from interface javax.persistence.TupleElement

      `getAlias, getJavaType`

    - ### Methods inherited from interface javax.persistence.criteria.FetchParent

      `fetch, fetch, fetch, fetch, fetch, fetch, getFetches`

- - ### Method Detail

    - #### on

          ListJoin<Z,E> on(Expression<Boolean> restriction)

      Modify the join to restrict the result according to the specified ON condition and return the join object. Replaces the previous ON condition, if any.
      Specified by:
        `on` in interface `Join<Z,E>`
      Parameters:
        `restriction` - a simple or compound boolean expression
      Returns:
        the modified join object
      Since:
        Java Persistence 2.1

    - #### on

          ListJoin<Z,E> on(Predicate... restrictions)

      Modify the join to restrict the result according to the specified ON condition and return the join object. Replaces the previous ON condition, if any.
      Specified by:
        `on` in interface `Join<Z,E>`
      Parameters:
        `restrictions` - zero or more restriction predicates
      Returns:
        the modified join object
      Since:
        Java Persistence 2.1

    - #### getModel

          ListAttribute<? super Z,E> getModel()

      Return the metamodel representation for the list attribute.
      Specified by:
        `getModel` in interface `Path<E>`
      Specified by:
        `getModel` in interface `PluralJoin<Z,List<E>,E>`
      Returns:
        metamodel type representing the `List` that is the target of the join

    - #### index

          Expression<Integer> index()

      Create an expression that corresponds to the index of the object in the referenced association or element collection. This method must only be invoked upon an object that represents an association or element collection for which an order column has been defined.
      Returns:
        expression denoting the index

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.