Class AbstractPersistentEntityJoinSupport<J,E>
- java.lang.Object
-
- io.micronaut.data.model.jpa.criteria.impl.AbstractPersistentEntityJoinSupport<J,E>
-
- Type Parameters:
J
- The associated entity owner typeE
- 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 ofPersistentEntityFrom
.- Since:
- 3.2
- Author:
- Denis Stepanov
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<java.lang.String,PersistentAssociationPath>
joins
-
Constructor Summary
Constructors Constructor Description AbstractPersistentEntityJoinSupport()
-
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 io.micronaut.data.model.jpa.criteria.IExpression
as, in, in, in, in, isBoolean, isComparable, isNotNull, isNull, isNumeric
-
Methods inherited from interface io.micronaut.data.model.jpa.criteria.ISelection
alias, getAlias, getCompoundSelectionItems, isCompoundSelection
-
Methods inherited from interface io.micronaut.data.model.jpa.criteria.PersistentEntityPath
get
-
Methods inherited from interface io.micronaut.data.model.jpa.criteria.impl.SelectionVisitable
accept
-
-
-
-
Field Detail
-
joins
protected final java.util.Map<java.lang.String,PersistentAssociationPath> joins
-
-
Method Detail
-
getPersistentEntity
public abstract PersistentEntity getPersistentEntity()
- Specified by:
getPersistentEntity
in interfacePersistentEntityPath<J>
- Returns:
- The persistent entity
-
createJoinAssociation
protected abstract <X,Y> PersistentAssociationPath<X,Y> createJoinAssociation(@NonNull Association association, @Nullable Join.Type type, @Nullable java.lang.String alias)
-
getParentPath
public jakarta.persistence.criteria.Path<?> getParentPath()
- Specified by:
getParentPath
in interfacejakarta.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 interfacejakarta.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 interfacejakarta.persistence.criteria.Path<J>
-
join
public <X,Y> PersistentEntityJoin<X,Y> join(java.lang.String attributeName)
-
join
public <X,Y> PersistentEntityJoin<X,Y> join(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)
-
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 interfacePersistentEntityFrom<J,E>
- Type Parameters:
X
- The association owner typeY
- The association entity type- Parameters:
attributeName
- The joined associated propertytype
- 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 interfacePersistentEntityFrom<J,E>
- Type Parameters:
X
- The association owner typeY
- The association entity type- Parameters:
attributeName
- The joined associated propertytype
- The join typealias
- The join alias- Returns:
- The joined entity
-
join
public <Y> PersistentEntityJoin<E,Y> join(jakarta.persistence.metamodel.SingularAttribute<? super E,Y> attribute)
-
join
public <Y> PersistentEntityJoin<E,Y> join(jakarta.persistence.metamodel.SingularAttribute<? super E,Y> attribute, jakarta.persistence.criteria.JoinType jt)
-
join
public <Y> PersistentEntityCollectionJoin<E,Y> join(jakarta.persistence.metamodel.CollectionAttribute<? super E,Y> collection, jakarta.persistence.criteria.JoinType jt)
-
join
public <Y> PersistentEntityCollectionJoin<E,Y> join(jakarta.persistence.metamodel.CollectionAttribute<? super E,Y> collection)
-
join
public <Y> PersistentEntitySetJoin<E,Y> join(jakarta.persistence.metamodel.SetAttribute<? super E,Y> set)
-
join
public <Y> PersistentEntityListJoin<E,Y> join(jakarta.persistence.metamodel.ListAttribute<? super E,Y> list)
-
join
public <K,V> jakarta.persistence.criteria.MapJoin<E,K,V> join(jakarta.persistence.metamodel.MapAttribute<? super E,K,V> map)
-
join
public <Y> PersistentEntitySetJoin<E,Y> join(jakarta.persistence.metamodel.SetAttribute<? super E,Y> set, jakarta.persistence.criteria.JoinType jt)
-
join
public <Y> PersistentEntityListJoin<E,Y> join(jakarta.persistence.metamodel.ListAttribute<? super E,Y> list, jakarta.persistence.criteria.JoinType jt)
-
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)
-
joinCollection
public <X,Y> PersistentEntityCollectionJoin<X,Y> joinCollection(java.lang.String attributeName)
- Specified by:
joinCollection
in interfacejakarta.persistence.criteria.From<J,E>
- Specified by:
joinCollection
in interfacePersistentEntityFrom<J,E>
-
joinSet
public <X,Y> PersistentEntitySetJoin<X,Y> joinSet(java.lang.String attributeName)
-
joinList
public <X,Y> PersistentEntityListJoin<X,Y> joinList(java.lang.String attributeName)
-
joinMap
public <X,K,V> jakarta.persistence.criteria.MapJoin<X,K,V> joinMap(java.lang.String attributeName)
-
joinCollection
public <X,Y> PersistentEntityCollectionJoin<X,Y> joinCollection(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)
- Specified by:
joinCollection
in interfacejakarta.persistence.criteria.From<J,E>
- Specified by:
joinCollection
in interfacePersistentEntityFrom<J,E>
-
joinSet
public <X,Y> PersistentEntitySetJoin<X,Y> joinSet(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)
-
joinList
public <X,Y> PersistentEntityListJoin<X,Y> joinList(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)
-
joinMap
public <X,K,V> jakarta.persistence.criteria.MapJoin<X,K,V> joinMap(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)
-
getJoins
public java.util.Set<jakarta.persistence.criteria.Join<E,?>> getJoins()
-
isCorrelated
public boolean isCorrelated()
-
getFetches
public java.util.Set<jakarta.persistence.criteria.Fetch<E,?>> getFetches()
-
fetch
public <Y> jakarta.persistence.criteria.Fetch<E,Y> fetch(jakarta.persistence.metamodel.SingularAttribute<? super E,Y> attribute)
-
fetch
public <Y> jakarta.persistence.criteria.Fetch<E,Y> fetch(jakarta.persistence.metamodel.SingularAttribute<? super E,Y> attribute, jakarta.persistence.criteria.JoinType jt)
-
fetch
public <Y> jakarta.persistence.criteria.Fetch<E,Y> fetch(jakarta.persistence.metamodel.PluralAttribute<? super E,?,Y> attribute)
-
fetch
public <Y> jakarta.persistence.criteria.Fetch<E,Y> fetch(jakarta.persistence.metamodel.PluralAttribute<? super E,?,Y> attribute, jakarta.persistence.criteria.JoinType jt)
-
fetch
public <X,Y> jakarta.persistence.criteria.Fetch<X,Y> fetch(java.lang.String attributeName)
-
fetch
public <X,Y> jakarta.persistence.criteria.Fetch<X,Y> fetch(java.lang.String attributeName, jakarta.persistence.criteria.JoinType jt)
-
get
public <Y> jakarta.persistence.criteria.Path<Y> get(jakarta.persistence.metamodel.SingularAttribute<? super E,Y> attribute)
- Specified by:
get
in interfacejakarta.persistence.criteria.Path<J>
-
type
public jakarta.persistence.criteria.Expression<java.lang.Class<? extends E>> type()
- Specified by:
type
in interfacejakarta.persistence.criteria.Path<J>
-
-