Interface JpaJoin<O,T>

All Superinterfaces:
Expression<T>, FetchParent<O,T>, From<O,T>, Join<O,T>, JpaCriteriaNode, JpaExpression<T>, JpaFetchParent<O,T>, JpaFrom<O,T>, JpaJoinedFrom<O,T>, JpaPath<T>, JpaSelection<T>, JpaTupleElement<T>, Path<T>, Selection<T>, Serializable, TupleElement<T>
All Known Subinterfaces:
JpaCollectionJoin<O,T>, JpaListJoin<O,T>, JpaMapJoin<O,K,V>, JpaPluralJoin<O,C,E>, JpaSetJoin<O,T>, SqmAttributeJoin<O,T>
All Known Implementing Classes:
AbstractSqmAttributeJoin, AbstractSqmPluralJoin, SqmBagJoin, SqmCorrelatedBagJoin, SqmCorrelatedListJoin, SqmCorrelatedMapJoin, SqmCorrelatedSetJoin, SqmCorrelatedSingularJoin, SqmListJoin, SqmMapJoin, SqmSetJoin, SqmSingularJoin, SqmTreatedBagJoin, SqmTreatedListJoin, SqmTreatedMapJoin, SqmTreatedSetJoin, SqmTreatedSingularJoin

public interface JpaJoin<O,T> extends JpaJoinedFrom<O,T>, Join<O,T>
Consolidates the Join and Fetch hierarchies since that is how we implement them. This allows us to treat them polymorphically.
Author:
Steve Ebersole
  • Method Details

    • getAttribute

      PersistentAttribute<? super O,?> getAttribute()
      Description copied from interface: Join
      Return the metamodel attribute corresponding to the join.
      Specified by:
      getAttribute in interface Join<O,T>
      Returns:
      metamodel attribute corresponding to the join
    • on

      JpaJoin<O,T> on(JpaExpression<Boolean> restriction)
      Specified by:
      on in interface JpaJoinedFrom<O,T>
    • on

      JpaJoin<O,T> on(Expression<Boolean> restriction)
      Description copied from interface: Join
      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<O,T>
      Specified by:
      on in interface JpaJoinedFrom<O,T>
      Parameters:
      restriction - a simple or compound boolean expression
      Returns:
      the modified join object
    • on

      JpaJoin<O,T> on(JpaPredicate... restrictions)
      Specified by:
      on in interface JpaJoinedFrom<O,T>
    • on

      JpaJoin<O,T> on(Predicate... restrictions)
      Description copied from interface: Join
      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<O,T>
      Specified by:
      on in interface JpaJoinedFrom<O,T>
      Parameters:
      restrictions - zero or more restriction predicates
      Returns:
      the modified join object
    • treatAs

      <S extends T> JpaJoin<O,S> treatAs(Class<S> treatAsType)
      Description copied from interface: JpaPath
      Support for JPA's explicit (TREAT) down-casting.
      Specified by:
      treatAs in interface JpaPath<O>
    • treatAs

      <S extends T> JpaJoin<O,S> treatAs(EntityDomainType<S> treatAsType)
      Description copied from interface: JpaPath
      Support for JPA's explicit (TREAT) down-casting.
      Specified by:
      treatAs in interface JpaPath<O>