Interface FetchParent<Z,X>

Type Parameters:
Z - the source type
X - the target type
All Known Subinterfaces:
CollectionJoin<Z,E>, Fetch<Z,X>, From<Z,X>, Join<Z,X>, ListJoin<Z,E>, MapJoin<Z,K,V>, PluralJoin<Z,C,E>, Root<X>, SetJoin<Z,E>

public interface FetchParent<Z,X>
Represents an element of the from clause which may function as the parent of Fetches.
Since:
2.0
  • Method Summary

    Modifier and Type
    Method
    Description
    <Y> Fetch<X,Y>
    fetch(PluralAttribute<? super X, ?, Y> attribute)
    Create a fetch join to the specified collection-valued attribute using an inner join.
    <Y> Fetch<X,Y>
    fetch(PluralAttribute<? super X, ?, Y> attribute, JoinType jt)
    Create a fetch join to the specified collection-valued attribute using the given join type.
    <Y> Fetch<X,Y>
    fetch(SingularAttribute<? super X, Y> attribute)
    Create a fetch join to the specified single-valued attribute using an inner join.
    <Y> Fetch<X,Y>
    fetch(SingularAttribute<? super X, Y> attribute, JoinType jt)
    Create a fetch join to the specified single-valued attribute using the given join type.
    <Y> Fetch<X,Y>
    fetch(String attributeName)
    Create a fetch join to the specified attribute using an inner join.
    <Y> Fetch<X,Y>
    fetch(String attributeName, JoinType jt)
    Create a fetch join to the specified attribute using the given join type.
    Set<Fetch<X,?>>
    Return the fetch joins that have been made from this type.
  • Method Details

    • getFetches

      @Nonnull Set<Fetch<X,?>> getFetches()
      Return the fetch joins that have been made from this type. Returns empty set if no fetch joins have been made from this type. Modifications to the set do not affect the query.
      Returns:
      fetch joins made from this type
    • fetch

      @Nonnull <Y> Fetch<X,Y> fetch(@Nonnull SingularAttribute<? super X, Y> attribute)
      Create a fetch join to the specified single-valued attribute using an inner join.
      Type Parameters:
      Y - the type of the fetched attribute
      Parameters:
      attribute - target of the join
      Returns:
      the resulting fetch join
    • fetch

      @Nonnull <Y> Fetch<X,Y> fetch(@Nonnull SingularAttribute<? super X, Y> attribute, @Nonnull JoinType jt)
      Create a fetch join to the specified single-valued attribute using the given join type.
      Type Parameters:
      Y - the type of the fetched attribute
      Parameters:
      attribute - target of the join
      jt - join type
      Returns:
      the resulting fetch join
    • fetch

      @Nonnull <Y> Fetch<X,Y> fetch(@Nonnull PluralAttribute<? super X, ?, Y> attribute)
      Create a fetch join to the specified collection-valued attribute using an inner join.
      Type Parameters:
      Y - the type of the fetched attribute
      Parameters:
      attribute - target of the join
      Returns:
      the resulting join
    • fetch

      @Nonnull <Y> Fetch<X,Y> fetch(@Nonnull PluralAttribute<? super X, ?, Y> attribute, @Nonnull JoinType jt)
      Create a fetch join to the specified collection-valued attribute using the given join type.
      Type Parameters:
      Y - the type of the fetched attribute
      Parameters:
      attribute - target of the join
      jt - join type
      Returns:
      the resulting join
    • fetch

      @Nonnull <Y> Fetch<X,Y> fetch(@Nonnull String attributeName)
      Create a fetch join to the specified attribute using an inner join.
      Type Parameters:
      Y - the type of the fetched attribute
      Parameters:
      attributeName - the name of the attribute for the target of the join
      Returns:
      the resulting fetch join
      Throws:
      IllegalArgumentException - if there is no attribute with the given name
      API note:
      This method accepts a string-valued attribute name, and lacks type safety compared to passing a static metamodel element to fetch(SingularAttribute) or fetch(PluralAttribute). Use of the typesafe version is strongly preferred.
    • fetch

      @Nonnull <Y> Fetch<X,Y> fetch(@Nonnull String attributeName, @Nonnull JoinType jt)
      Create a fetch join to the specified attribute using the given join type.
      Type Parameters:
      Y - the type of the fetched attribute
      Parameters:
      attributeName - the name of the attribute that is the target of the join
      jt - the join type
      Returns:
      the resulting fetch join
      Throws:
      IllegalArgumentException - if there is no attribute with the given name
      API note:
      This method accepts a string-valued attribute name, and lacks type safety compared to passing a static metamodel element to fetch(SingularAttribute, JoinType) or fetch(PluralAttribute, JoinType). Use of the typesafe version is strongly preferred.