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:
    2.0
    • 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,​K>
        Parameters:
        restriction - a simple or compound boolean expression
        Returns:
        the modified join object
        Since:
        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,​K>
        Parameters:
        restrictions - zero or more restriction predicates
        Returns:
        the modified join object
        Since:
        2.1
      • getModel

        MapAttribute<? super Z,​K,​V> getModel()
        Return the metamodel representation for the map attribute.
        Specified by:
        getModel in interface Path<Z>
        Specified by:
        getModel in interface PluralJoin<Z,​K,​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