javax.persistence.criteria

## Interface CollectionJoin<Z,E>

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

      public interface CollectionJoin<Z,E>
      extends PluralJoin<Z,Collection<E>,E>

  The `CollectionJoin` 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.Collection`.
  Since:
    Java Persistence 2.0

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `CollectionAttribute<? super Z,E>` | `getModel()` Return the metamodel representation for the collection attribute.
    `CollectionJoin<Z,E>` | `on(Expression<Boolean> restriction)` Modify the join to restrict the result according to the specified ON condition and return the join object.
    `CollectionJoin<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

          CollectionJoin<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

          CollectionJoin<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

          CollectionAttribute<? super Z,E> getModel()

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

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