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

      All Methods Instance Methods Abstract Methods 
      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.
      <X,​Y>
      Fetch<X,​Y>
      fetch​(String attributeName)
      Create a fetch join to the specified attribute using an inner join.
      <X,​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,​?>> getFetches()
      Return the fetch joins that have been made from this type.
    • Method Detail

      • getFetches

        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

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

        <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.
        Parameters:
        attribute - target of the join
        jt - join type
        Returns:
        the resulting fetch join
      • fetch

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

        <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.
        Parameters:
        attribute - target of the join
        jt - join type
        Returns:
        the resulting join
      • fetch

        <X,​Y> Fetch<X,​Y> fetch​(String attributeName)
        Create a fetch join to the specified attribute using an inner join.
        Parameters:
        attributeName - name of the attribute for the target of the join
        Returns:
        the resulting fetch join
        Throws:
        IllegalArgumentException - if attribute of the given name does not exist
      • fetch

        <X,​Y> Fetch<X,​Y> fetch​(String attributeName,
                                           JoinType jt)
        Create a fetch join to the specified attribute using the given join type.
        Parameters:
        attributeName - name of the attribute for the target of the join
        jt - join type
        Returns:
        the resulting fetch join
        Throws:
        IllegalArgumentException - if attribute of the given name does not exist