Class AbstractPersistentEntityJoinSupport<J,​E>

  • Type Parameters:
    J - The associated entity owner type
    E - The association entity type
    All Implemented Interfaces:
    IExpression<E>, SelectionVisitable, ISelection<E>, PersistentEntityFrom<J,​E>, PersistentEntityPath<E>, jakarta.persistence.criteria.Expression<E>, jakarta.persistence.criteria.FetchParent<J,​E>, jakarta.persistence.criteria.From<J,​E>, jakarta.persistence.criteria.Path<E>, jakarta.persistence.criteria.Selection<E>, jakarta.persistence.TupleElement<E>

    @Internal
    public abstract class AbstractPersistentEntityJoinSupport<J,​E>
    extends java.lang.Object
    implements PersistentEntityFrom<J,​E>, SelectionVisitable
    The abstract implementation of PersistentEntityFrom.
    Since:
    3.2
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected abstract <X,​Y>
      PersistentAssociationPath<X,​Y>
      createJoinAssociation​(Association association, Join.Type type, java.lang.String alias)  
      <Y> jakarta.persistence.criteria.Fetch<E,​Y> fetch​(jakarta.persistence.metamodel.PluralAttribute<? super E,​?,​Y> attribute)  
      <Y> jakarta.persistence.criteria.Fetch<E,​Y> fetch​(jakarta.persistence.metamodel.PluralAttribute<? super E,​?,​Y> attribute, jakarta.persistence.criteria.JoinType jt)  
      <Y> jakarta.persistence.criteria.Fetch<E,​Y> fetch​(jakarta.persistence.metamodel.SingularAttribute<? super E,​Y> attribute)  
      <Y> jakarta.persistence.criteria.Fetch<E,​Y> fetch​(jakarta.persistence.metamodel.SingularAttribute<? super E,​Y> attribute, jakarta.persistence.criteria.JoinType jt)  
      <X,​Y>
      jakarta.persistence.criteria.Fetch<X,​Y>
      fetch​(java.lang.String attributeName)  
      <X,​Y>
      jakarta.persistence.criteria.Fetch<X,​Y>
      fetch​(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)  
      <K,​V,​M extends java.util.Map<K,​V>>
      jakarta.persistence.criteria.Expression<M>
      get​(jakarta.persistence.metamodel.MapAttribute<E,​K,​V> map)  
      <K,​C extends java.util.Collection<K>>
      jakarta.persistence.criteria.Expression<C>
      get​(jakarta.persistence.metamodel.PluralAttribute<E,​C,​K> collection)  
      <Y> jakarta.persistence.criteria.Path<Y> get​(jakarta.persistence.metamodel.SingularAttribute<? super E,​Y> attribute)  
      jakarta.persistence.criteria.From<J,​E> getCorrelationParent()  
      java.util.Set<jakarta.persistence.criteria.Fetch<E,​?>> getFetches()  
      java.lang.Class<? extends E> getJavaType()  
      java.util.Set<jakarta.persistence.criteria.Join<E,​?>> getJoins()  
      jakarta.persistence.criteria.Path<?> getParentPath()  
      abstract PersistentEntity getPersistentEntity()  
      boolean isCorrelated()  
      <Y> PersistentEntityCollectionJoin<E,​Y> join​(jakarta.persistence.metamodel.CollectionAttribute<? super E,​Y> collection)  
      <Y> PersistentEntityCollectionJoin<E,​Y> join​(jakarta.persistence.metamodel.CollectionAttribute<? super E,​Y> collection, jakarta.persistence.criteria.JoinType jt)  
      <Y> PersistentEntityListJoin<E,​Y> join​(jakarta.persistence.metamodel.ListAttribute<? super E,​Y> list)  
      <Y> PersistentEntityListJoin<E,​Y> join​(jakarta.persistence.metamodel.ListAttribute<? super E,​Y> list, jakarta.persistence.criteria.JoinType jt)  
      <K,​V>
      jakarta.persistence.criteria.MapJoin<E,​K,​V>
      join​(jakarta.persistence.metamodel.MapAttribute<? super E,​K,​V> map)  
      <K,​V>
      jakarta.persistence.criteria.MapJoin<E,​K,​V>
      join​(jakarta.persistence.metamodel.MapAttribute<? super E,​K,​V> map, jakarta.persistence.criteria.JoinType jt)  
      <Y> PersistentEntitySetJoin<E,​Y> join​(jakarta.persistence.metamodel.SetAttribute<? super E,​Y> set)  
      <Y> PersistentEntitySetJoin<E,​Y> join​(jakarta.persistence.metamodel.SetAttribute<? super E,​Y> set, jakarta.persistence.criteria.JoinType jt)  
      <Y> PersistentEntityJoin<E,​Y> join​(jakarta.persistence.metamodel.SingularAttribute<? super E,​Y> attribute)  
      <Y> PersistentEntityJoin<E,​Y> join​(jakarta.persistence.metamodel.SingularAttribute<? super E,​Y> attribute, jakarta.persistence.criteria.JoinType jt)  
      <X,​Y>
      PersistentEntityJoin<X,​Y>
      join​(java.lang.String attributeName)  
      <X,​Y>
      PersistentEntityJoin<X,​Y>
      join​(java.lang.String attributeName, Join.Type type)
      Joins the entity with specific join type.
      <X,​Y>
      PersistentEntityJoin<X,​Y>
      join​(java.lang.String attributeName, Join.Type type, java.lang.String alias)
      Joins the entity with specific join type.
      <X,​Y>
      PersistentEntityJoin<X,​Y>
      join​(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)  
      <X,​Y>
      PersistentEntityCollectionJoin<X,​Y>
      joinCollection​(java.lang.String attributeName)  
      <X,​Y>
      PersistentEntityCollectionJoin<X,​Y>
      joinCollection​(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)  
      <X,​Y>
      PersistentEntityListJoin<X,​Y>
      joinList​(java.lang.String attributeName)  
      <X,​Y>
      PersistentEntityListJoin<X,​Y>
      joinList​(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)  
      <X,​K,​V>
      jakarta.persistence.criteria.MapJoin<X,​K,​V>
      joinMap​(java.lang.String attributeName)  
      <X,​K,​V>
      jakarta.persistence.criteria.MapJoin<X,​K,​V>
      joinMap​(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)  
      <X,​Y>
      PersistentEntitySetJoin<X,​Y>
      joinSet​(java.lang.String attributeName)  
      <X,​Y>
      PersistentEntitySetJoin<X,​Y>
      joinSet​(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)  
      jakarta.persistence.criteria.Expression<java.lang.Class<? extends E>> type()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface jakarta.persistence.criteria.Path

        getModel
    • Constructor Detail

      • AbstractPersistentEntityJoinSupport

        public AbstractPersistentEntityJoinSupport()
    • Method Detail

      • getParentPath

        public jakarta.persistence.criteria.Path<?> getParentPath()
        Specified by:
        getParentPath in interface jakarta.persistence.criteria.Path<J>
      • get

        public <K,​V,​M extends java.util.Map<K,​V>> jakarta.persistence.criteria.Expression<M> get​(jakarta.persistence.metamodel.MapAttribute<E,​K,​V> map)
        Specified by:
        get in interface jakarta.persistence.criteria.Path<J>
      • get

        public <K,​C extends java.util.Collection<K>> jakarta.persistence.criteria.Expression<C> get​(jakarta.persistence.metamodel.PluralAttribute<E,​C,​K> collection)
        Specified by:
        get in interface jakarta.persistence.criteria.Path<J>
      • join

        public <X,​Y> PersistentEntityJoin<X,​Y> join​(java.lang.String attributeName,
                                                                jakarta.persistence.criteria.JoinType jt)
        Specified by:
        join in interface jakarta.persistence.criteria.From<J,​E>
        Specified by:
        join in interface PersistentEntityFrom<J,​E>
      • join

        public <X,​Y> PersistentEntityJoin<X,​Y> join​(java.lang.String attributeName,
                                                                Join.Type type)
        Description copied from interface: PersistentEntityFrom
        Joins the entity with specific join type.
        Specified by:
        join in interface PersistentEntityFrom<J,​E>
        Type Parameters:
        X - The association owner type
        Y - The association entity type
        Parameters:
        attributeName - The joined associated property
        type - The join type
        Returns:
        The joined entity
      • join

        public <X,​Y> PersistentEntityJoin<X,​Y> join​(java.lang.String attributeName,
                                                                Join.Type type,
                                                                java.lang.String alias)
        Description copied from interface: PersistentEntityFrom
        Joins the entity with specific join type.
        Specified by:
        join in interface PersistentEntityFrom<J,​E>
        Type Parameters:
        X - The association owner type
        Y - The association entity type
        Parameters:
        attributeName - The joined associated property
        type - The join type
        alias - The join alias
        Returns:
        The joined entity
      • join

        public <Y> PersistentEntityJoin<E,​Y> join​(jakarta.persistence.metamodel.SingularAttribute<? super E,​Y> attribute)
        Specified by:
        join in interface jakarta.persistence.criteria.From<J,​E>
        Specified by:
        join in interface PersistentEntityFrom<J,​E>
      • join

        public <Y> PersistentEntityJoin<E,​Y> join​(jakarta.persistence.metamodel.SingularAttribute<? super E,​Y> attribute,
                                                        jakarta.persistence.criteria.JoinType jt)
        Specified by:
        join in interface jakarta.persistence.criteria.From<J,​E>
        Specified by:
        join in interface PersistentEntityFrom<J,​E>
      • join

        public <Y> PersistentEntityCollectionJoin<E,​Y> join​(jakarta.persistence.metamodel.CollectionAttribute<? super E,​Y> collection,
                                                                  jakarta.persistence.criteria.JoinType jt)
        Specified by:
        join in interface jakarta.persistence.criteria.From<J,​E>
        Specified by:
        join in interface PersistentEntityFrom<J,​E>
      • join

        public <K,​V> jakarta.persistence.criteria.MapJoin<E,​K,​V> join​(jakarta.persistence.metamodel.MapAttribute<? super E,​K,​V> map)
        Specified by:
        join in interface jakarta.persistence.criteria.From<J,​E>
      • join

        public <Y> PersistentEntitySetJoin<E,​Y> join​(jakarta.persistence.metamodel.SetAttribute<? super E,​Y> set,
                                                           jakarta.persistence.criteria.JoinType jt)
        Specified by:
        join in interface jakarta.persistence.criteria.From<J,​E>
        Specified by:
        join in interface PersistentEntityFrom<J,​E>
      • join

        public <Y> PersistentEntityListJoin<E,​Y> join​(jakarta.persistence.metamodel.ListAttribute<? super E,​Y> list,
                                                            jakarta.persistence.criteria.JoinType jt)
        Specified by:
        join in interface jakarta.persistence.criteria.From<J,​E>
        Specified by:
        join in interface PersistentEntityFrom<J,​E>
      • join

        public <K,​V> jakarta.persistence.criteria.MapJoin<E,​K,​V> join​(jakarta.persistence.metamodel.MapAttribute<? super E,​K,​V> map,
                                                                                        jakarta.persistence.criteria.JoinType jt)
        Specified by:
        join in interface jakarta.persistence.criteria.From<J,​E>
      • joinMap

        public <X,​K,​V> jakarta.persistence.criteria.MapJoin<X,​K,​V> joinMap​(java.lang.String attributeName)
        Specified by:
        joinMap in interface jakarta.persistence.criteria.From<J,​E>
      • joinSet

        public <X,​Y> PersistentEntitySetJoin<X,​Y> joinSet​(java.lang.String attributeName,
                                                                      jakarta.persistence.criteria.JoinType jt)
        Specified by:
        joinSet in interface jakarta.persistence.criteria.From<J,​E>
        Specified by:
        joinSet in interface PersistentEntityFrom<J,​E>
      • joinList

        public <X,​Y> PersistentEntityListJoin<X,​Y> joinList​(java.lang.String attributeName,
                                                                        jakarta.persistence.criteria.JoinType jt)
        Specified by:
        joinList in interface jakarta.persistence.criteria.From<J,​E>
        Specified by:
        joinList in interface PersistentEntityFrom<J,​E>
      • joinMap

        public <X,​K,​V> jakarta.persistence.criteria.MapJoin<X,​K,​V> joinMap​(java.lang.String attributeName,
                                                                                                   jakarta.persistence.criteria.JoinType jt)
        Specified by:
        joinMap in interface jakarta.persistence.criteria.From<J,​E>
      • getJoins

        public java.util.Set<jakarta.persistence.criteria.Join<E,​?>> getJoins()
        Specified by:
        getJoins in interface jakarta.persistence.criteria.From<J,​E>
      • isCorrelated

        public boolean isCorrelated()
        Specified by:
        isCorrelated in interface jakarta.persistence.criteria.From<J,​E>
      • getCorrelationParent

        public jakarta.persistence.criteria.From<J,​E> getCorrelationParent()
        Specified by:
        getCorrelationParent in interface jakarta.persistence.criteria.From<J,​E>
      • getFetches

        public java.util.Set<jakarta.persistence.criteria.Fetch<E,​?>> getFetches()
        Specified by:
        getFetches in interface jakarta.persistence.criteria.FetchParent<J,​E>
      • fetch

        public <Y> jakarta.persistence.criteria.Fetch<E,​Y> fetch​(jakarta.persistence.metamodel.SingularAttribute<? super E,​Y> attribute)
        Specified by:
        fetch in interface jakarta.persistence.criteria.FetchParent<J,​E>
      • fetch

        public <Y> jakarta.persistence.criteria.Fetch<E,​Y> fetch​(jakarta.persistence.metamodel.SingularAttribute<? super E,​Y> attribute,
                                                                       jakarta.persistence.criteria.JoinType jt)
        Specified by:
        fetch in interface jakarta.persistence.criteria.FetchParent<J,​E>
      • fetch

        public <Y> jakarta.persistence.criteria.Fetch<E,​Y> fetch​(jakarta.persistence.metamodel.PluralAttribute<? super E,​?,​Y> attribute)
        Specified by:
        fetch in interface jakarta.persistence.criteria.FetchParent<J,​E>
      • fetch

        public <Y> jakarta.persistence.criteria.Fetch<E,​Y> fetch​(jakarta.persistence.metamodel.PluralAttribute<? super E,​?,​Y> attribute,
                                                                       jakarta.persistence.criteria.JoinType jt)
        Specified by:
        fetch in interface jakarta.persistence.criteria.FetchParent<J,​E>
      • fetch

        public <X,​Y> jakarta.persistence.criteria.Fetch<X,​Y> fetch​(java.lang.String attributeName)
        Specified by:
        fetch in interface jakarta.persistence.criteria.FetchParent<J,​E>
      • fetch

        public <X,​Y> jakarta.persistence.criteria.Fetch<X,​Y> fetch​(java.lang.String attributeName,
                                                                               jakarta.persistence.criteria.JoinType jt)
        Specified by:
        fetch in interface jakarta.persistence.criteria.FetchParent<J,​E>
      • get

        public <Y> jakarta.persistence.criteria.Path<Y> get​(jakarta.persistence.metamodel.SingularAttribute<? super E,​Y> attribute)
        Specified by:
        get in interface jakarta.persistence.criteria.Path<J>
      • type

        public jakarta.persistence.criteria.Expression<java.lang.Class<? extends E>> type()
        Specified by:
        type in interface jakarta.persistence.criteria.Path<J>
      • getJavaType

        public java.lang.Class<? extends E> getJavaType()
        Specified by:
        getJavaType in interface jakarta.persistence.TupleElement<J>