Class AbstractPersistentEntityJoinSupport<J,E>

java.lang.Object
io.micronaut.data.model.jpa.criteria.impl.AbstractPersistentEntityJoinSupport<J,E>
Type Parameters:
J - The associated entity owner type
E - The association entity type
All Implemented Interfaces:
IExpression<E>, 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 Object implements PersistentEntityFrom<J,E>
The abstract implementation of PersistentEntityFrom.
Since:
3.2
Author:
Denis Stepanov
  • Field Details

  • Constructor Details

    • AbstractPersistentEntityJoinSupport

      public AbstractPersistentEntityJoinSupport()
  • Method Details

    • getPersistentEntity

      public abstract PersistentEntity getPersistentEntity()
      Specified by:
      getPersistentEntity in interface PersistentEntityPath<J>
      Returns:
      The persistent entity
    • createJoinAssociation

      protected abstract <Y> PersistentAssociationPath<E,Y> createJoinAssociation(@NonNull @NonNull Association association, @Nullable Join.Type type, @Nullable @Nullable String alias)
    • get

      public <K, V, M extends 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 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(String attributeName)
      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(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(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(String attributeName, Join.Type type, 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 <Y> PersistentEntityCollectionJoin<E,Y> join(jakarta.persistence.metamodel.CollectionAttribute<? super E,Y> collection)
      Specified by:
      join in interface jakarta.persistence.criteria.From<J,E>
      Specified by:
      join in interface PersistentEntityFrom<J,E>
    • join

      public <Y> PersistentEntitySetJoin<E,Y> join(jakarta.persistence.metamodel.SetAttribute<? super E,Y> set)
      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)
      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>
    • joinCollection

      public <X, Y> PersistentEntityCollectionJoin<X,Y> joinCollection(String attributeName)
      Specified by:
      joinCollection in interface jakarta.persistence.criteria.From<J,E>
      Specified by:
      joinCollection in interface PersistentEntityFrom<J,E>
    • joinSet

      public <X, Y> PersistentEntitySetJoin<X,Y> joinSet(String attributeName)
      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(String attributeName)
      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(String attributeName)
      Specified by:
      joinMap in interface jakarta.persistence.criteria.From<J,E>
    • joinCollection

      public <X, Y> PersistentEntityCollectionJoin<X,Y> joinCollection(String attributeName, jakarta.persistence.criteria.JoinType jt)
      Specified by:
      joinCollection in interface jakarta.persistence.criteria.From<J,E>
      Specified by:
      joinCollection in interface PersistentEntityFrom<J,E>
    • joinSet

      public <X, Y> PersistentEntitySetJoin<X,Y> joinSet(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(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(String attributeName, jakarta.persistence.criteria.JoinType jt)
      Specified by:
      joinMap in interface jakarta.persistence.criteria.From<J,E>
    • getJoins

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

      public Collection<PersistentAssociationPath<E,?>> getPersistentJoins()
      Specified by:
      getPersistentJoins in interface PersistentEntityFrom<J,E>
      Returns:
      The persistent joins
    • 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 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(String attributeName)
      Specified by:
      fetch in interface jakarta.persistence.criteria.FetchParent<J,E>
    • fetch

      public <X, Y> jakarta.persistence.criteria.Fetch<X,Y> fetch(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<Class<? extends E>> type()
      Specified by:
      type in interface jakarta.persistence.criteria.Path<J>