javax.persistence.criteria

## Interface MapJoin<Z,K,V>

- Type Parameters:
    `Z` - the source type of the join
    `K` - the type of the target Map key
    `V` - the type of the target Map value
  All Superinterfaces:
    Expression<V>, FetchParent<Z,V>, From<Z,V>, Join<Z,V>, Path<V>, PluralJoin<Z,Map<K,V>,V>, Selection<V>, TupleElement<V>

      public interface MapJoin<Z,K,V>
      extends PluralJoin<Z,Map<K,V>,V>

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

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Expression<Map.Entry<K,V>>` | `entry()` Create an expression that corresponds to the map entry.
    `MapAttribute<? super Z,K,V>` | `getModel()` Return the metamodel representation for the map attribute.
    `Path<K>` | `key()` Create a path expression that corresponds to the map key.
    `MapJoin<Z,K,V>` | `on(Expression<Boolean> restriction)` Modify the join to restrict the result according to the specified ON condition and return the join object.
    `MapJoin<Z,K,V>` | `on(Predicate... restrictions)` Modify the join to restrict the result according to the specified ON condition and return the join object.
    `Path<V>` | `value()` Create a path expression that corresponds to the map value.

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

          MapJoin<Z,K,V> 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,V>`
      Parameters:
        `restriction` - a simple or compound boolean expression
      Returns:
        the modified join object
      Since:
        Java Persistence 2.1

    - #### on

          MapJoin<Z,K,V> 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,V>`
      Parameters:
        `restrictions` - zero or more restriction predicates
      Returns:
        the modified join object
      Since:
        Java Persistence 2.1

    - #### getModel

          MapAttribute<? super Z,K,V> getModel()

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

    - #### key

          Path<K> key()

      Create a path expression that corresponds to the map key.
      Returns:
        path corresponding to map key

    - #### value

          Path<V> value()

      Create a path expression that corresponds to the map value. This method is for stylistic use only: it just returns this.
      Returns:
        path corresponding to the map value

    - #### entry

          Expression<Map.Entry<K,V>> entry()

      Create an expression that corresponds to the map entry.
      Returns:
        expression corresponding to the map entry

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