Class SqmMapJoin<L,K,V>
java.lang.Object
org.hibernate.query.sqm.tree.AbstractSqmNode
org.hibernate.query.sqm.tree.jpa.AbstractJpaTupleElement<T>
org.hibernate.query.sqm.tree.jpa.AbstractJpaSelection<T>
org.hibernate.query.sqm.tree.expression.AbstractSqmExpression<T>
org.hibernate.query.sqm.tree.domain.AbstractSqmPath<T>
org.hibernate.query.sqm.tree.domain.AbstractSqmFrom<L,R>
org.hibernate.query.sqm.tree.domain.AbstractSqmJoin<L,R>
org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin<L,E>
org.hibernate.query.sqm.tree.domain.AbstractSqmPluralJoin<L,Map<K,V>,V>
org.hibernate.query.sqm.tree.domain.SqmMapJoin<L,K,V>
- All Implemented Interfaces:
Expression<V>
,Fetch<L,
,V> FetchParent<L,
,V> From<L,
,V> Join<L,
,V> MapJoin<L,
,K, V> Path<V>
,PluralJoin<L,
,Map<K, V>, V> Selection<V>
,TupleElement<V>
,Serializable
,JpaCriteriaNode
,JpaExpression<V>
,JpaFetch<L,
,V> JpaFetchParent<L,
,V> JpaFrom<L,
,V> JpaJoin<L,
,V> JpaMapJoin<L,
,K, V> JpaPath<V>
,JpaPluralJoin<L,
,Map<K, V>, V> JpaSelection<V>
,JpaTupleElement<V>
,SemanticPathPart
,SqmPath<V>
,SqmExpression<V>
,SqmAttributeJoin<L,
,V> SqmFrom<L,
,V> SqmJoin<L,
,V> SqmSelectableNode<V>
,SqmExpressibleAccessor<V>
,SqmNode
,SqmTypedNode<V>
,SqmVisitableNode
- Direct Known Subclasses:
SqmCorrelatedMapJoin
,SqmTreatedMapJoin
public class SqmMapJoin<L,K,V>
extends AbstractSqmPluralJoin<L,Map<K,V>,V>
implements JpaMapJoin<L,K,V>
- See Also:
-
Field Summary
-
Constructor Summary
ConstructorsModifierConstructorDescriptionSqmMapJoin
(SqmFrom<?, L> lhs, MapPersistentAttribute<L, K, V> pluralValuedNavigable, String alias, SqmJoinType sqmJoinType, boolean fetched, NodeBuilder nodeBuilder) protected
SqmMapJoin
(SqmFrom<?, L> lhs, NavigablePath navigablePath, MapPersistentAttribute<L, K, V> pluralValuedNavigable, String alias, SqmJoinType joinType, boolean fetched, NodeBuilder nodeBuilder) -
Method Summary
Modifier and TypeMethodDescription<X> X
accept
(SemanticQueryWalker<X> walker) Accept the walker per visitationSqmMapJoin<L,
K, V> copy
(SqmCopyContext context) entry()
getModel()
key()
SqmMapJoin<L,
K, V> on
(Expression<Boolean> restriction) SqmMapJoin<L,
K, V> SqmMapJoin<L,
K, V> on
(JpaExpression<Boolean> restriction) Add a restriction to the fetch.SqmMapJoin<L,
K, V> on
(JpaPredicate... restrictions) Add a restriction to the fetch.<S extends V>
SqmTreatedMapJoin<L,K, V, S> Support for JPA's explicit (TREAT) down-casting.<S extends V>
SqmTreatedMapJoin<L,K, V, S> <S extends V>
SqmTreatedMapJoin<L,K, V, S> <S extends V>
SqmTreatedMapJoin<L,K, V, S> treatAs
(EntityDomainType<S> treatTarget) Support for JPA's explicit (TREAT) down-casting.<S extends V>
SqmTreatedMapJoin<L,K, V, S> treatAs
(EntityDomainType<S> treatTarget, String alias) <S extends V>
SqmTreatedMapJoin<L,K, V, S> treatAs
(EntityDomainType<S> treatTarget, String alias, boolean fetch) value()
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin
alias, clearFetched, getJoinType, getLhs, getNodeJavaType, getParent, isFetched, isImplicitJoin
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmJoin
applyRestriction, copyTo, getJoinPredicate, getOn, getSqmJoinType, join, join, setJoinPredicate
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmFrom
addSqmJoin, addTreat, appendHqlString, copyTo, crossJoin, crossJoin, fetch, fetch, fetch, fetch, fetch, fetch, findTreat, getCorrelationParent, getExplicitAlias, getFetches, getJoins, getParentPath, getSqmJoins, getSqmTreats, hasImplicitlySelectableJoin, hasJoins, isCorrelated, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, joinArray, joinArray, joinArray, joinArray, joinArrayCollection, joinArrayCollection, joinArrayCollection, joinArrayCollection, joinCollection, joinCollection, joinLateral, joinLateral, joinLateral, joinLateral, joinList, joinList, joinMap, joinMap, joinSet, joinSet, removeLeftFetchJoins, resolvePathPart, setExplicitAlias, visitSqmJoins
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmPath
copyTo, get, get, get, get, get, getExpressible, getNavigablePath, getNavigablePathCopy, getNodeType, getReferencedPathSource, getResolvedModel, getReusablePath, getReusablePaths, getTreatedPath, registerReusablePath, resolvePath, resolvePath, toString, type, visitReusablePaths
Methods inherited from class org.hibernate.query.sqm.tree.expression.AbstractSqmExpression
applyInferableType, as, asBigDecimal, asBigInteger, asDouble, asFloat, asInteger, asLong, asString, cast, equalTo, equalTo, getJavaTypeDescriptor, in, in, in, in, internalApplyInferableType, isNotNull, isNull, nodeBuilder, notEqualTo, notEqualTo
Methods inherited from class org.hibernate.query.sqm.tree.jpa.AbstractJpaSelection
getSelectionItems, isCompoundSelection
Methods inherited from class org.hibernate.query.sqm.tree.jpa.AbstractJpaTupleElement
copyTo, getAlias, setAlias, setExpressibleType
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface jakarta.persistence.criteria.From
getJoins, isCorrelated
Methods inherited from interface jakarta.persistence.criteria.Join
getJoinType, getParent
Methods inherited from interface org.hibernate.query.criteria.JpaFetch
fetch, fetch, fetch, fetch, fetch, fetch, getFetches
Methods inherited from interface org.hibernate.query.criteria.JpaFrom
join, join, join, join, join, join, join, join, joinArray, joinArray, joinArray, joinArray, joinArrayCollection, joinArrayCollection, joinArrayCollection, joinArrayCollection, joinLateral, joinLateral, joinLateral
Methods inherited from interface org.hibernate.query.criteria.JpaPath
getParentPath
Methods inherited from interface org.hibernate.query.criteria.JpaSelection
alias, getCompoundSelectionItems, getSelectionItems
Methods inherited from interface org.hibernate.query.criteria.JpaTupleElement
getJavaType, getJavaTypeName, isEnum
Methods inherited from interface jakarta.persistence.criteria.Selection
isCompoundSelection
Methods inherited from interface org.hibernate.query.sqm.tree.from.SqmAttributeJoin
getJavaTypeDescriptor, getJoinPredicate, getReferencedPathSource, isImplicitlySelectable, setJoinPredicate
Methods inherited from interface org.hibernate.query.sqm.tree.expression.SqmExpression
as, asBigDecimal, asBigInteger, asDouble, asFloat, asInteger, asLong, asString, cast, castAs, equalTo, equalTo, in, in, in, in, isNotNull, isNull, notEqualTo, notEqualTo, visitSubSelectableNodes
Methods inherited from interface org.hibernate.query.sqm.tree.from.SqmFrom
addSqmJoin, getCorrelationParent, getSqmJoins, getSqmTreats, hasImplicitlySelectableJoin, hasJoins, hasTreats, join, join, visitSqmJoins
Methods inherited from interface org.hibernate.query.sqm.tree.from.SqmJoin
crossJoin, crossJoin, getOn, getSqmJoinType, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, joinCollection, joinCollection, joinLateral, joinLateral, joinList, joinList, joinMap, joinMap, joinSet, joinSet
Methods inherited from interface org.hibernate.query.sqm.tree.SqmNode
asLoggableText, nodeBuilder
Methods inherited from interface org.hibernate.query.sqm.tree.domain.SqmPath
applyInferableType, findRoot, get, get, get, get, get, getExplicitAlias, getNavigablePath, getNodeType, getResolvedModel, getReusablePath, getReusablePaths, registerReusablePath, resolveAlias, resolveIndexedAccess, resolvePathPart, setExplicitAlias, type, visitReusablePaths
Methods inherited from interface org.hibernate.query.sqm.tree.select.SqmSelectableNode
getTupleLength
Methods inherited from interface org.hibernate.query.sqm.tree.SqmTypedNode
getExpressible
Methods inherited from interface org.hibernate.query.sqm.tree.SqmVisitableNode
appendHqlString, toHqlString
Methods inherited from interface jakarta.persistence.TupleElement
getAlias
-
Constructor Details
-
SqmMapJoin
public SqmMapJoin(SqmFrom<?, L> lhs, MapPersistentAttribute<L, K, V> pluralValuedNavigable, String alias, SqmJoinType sqmJoinType, boolean fetched, NodeBuilder nodeBuilder)
-
-
Method Details
-
copy
- Specified by:
copy
in interfaceSqmExpression<L>
- Specified by:
copy
in interfaceSqmFrom<L,
K> - Specified by:
copy
in interfaceSqmJoin<L,
K> - Specified by:
copy
in interfaceSqmNode
- Specified by:
copy
in interfaceSqmPath<L>
- Specified by:
copy
in interfaceSqmSelectableNode<L>
- Specified by:
copy
in interfaceSqmTypedNode<L>
-
getModel
-
accept
Description copied from interface:SqmVisitableNode
Accept the walker per visitation- Specified by:
accept
in interfaceSqmVisitableNode
- Overrides:
accept
in classAbstractSqmAttributeJoin<L,
V>
-
getAttribute
- Specified by:
getAttribute
in interfaceFetch<L,
K> - Specified by:
getAttribute
in interfaceJoin<L,
K> - Specified by:
getAttribute
in interfaceJpaJoin<L,
K> - Specified by:
getAttribute
in interfaceJpaPluralJoin<L,
K, V> - Overrides:
getAttribute
in classAbstractSqmAttributeJoin<L,
V>
-
key
-
value
-
entry
-
on
Description copied from interface:JpaFetch
Add a restriction to the fetch.- Specified by:
on
in interfaceJpaFetch<L,
K> - Specified by:
on
in interfaceJpaJoin<L,
K> - Specified by:
on
in interfaceJpaMapJoin<L,
K, V> - Specified by:
on
in interfaceJpaPluralJoin<L,
K, V> - Specified by:
on
in interfaceSqmAttributeJoin<L,
K> - Specified by:
on
in interfaceSqmJoin<L,
K> - Overrides:
on
in classAbstractSqmAttributeJoin<L,
V>
-
on
- Specified by:
on
in interfaceJoin<L,
K> - Specified by:
on
in interfaceJpaJoin<L,
K> - Specified by:
on
in interfaceJpaMapJoin<L,
K, V> - Specified by:
on
in interfaceJpaPluralJoin<L,
K, V> - Specified by:
on
in interfaceMapJoin<L,
K, V> - Specified by:
on
in interfaceSqmAttributeJoin<L,
K> - Specified by:
on
in interfaceSqmJoin<L,
K> - Overrides:
on
in classAbstractSqmJoin<L,
V>
-
on
Description copied from interface:JpaFetch
Add a restriction to the fetch.- Specified by:
on
in interfaceJpaFetch<L,
K> - Specified by:
on
in interfaceJpaJoin<L,
K> - Specified by:
on
in interfaceJpaMapJoin<L,
K, V> - Specified by:
on
in interfaceJpaPluralJoin<L,
K, V> - Specified by:
on
in interfaceSqmAttributeJoin<L,
K> - Specified by:
on
in interfaceSqmJoin<L,
K> - Overrides:
on
in classAbstractSqmAttributeJoin<L,
V>
-
on
- Specified by:
on
in interfaceJoin<L,
K> - Specified by:
on
in interfaceJpaJoin<L,
K> - Specified by:
on
in interfaceJpaMapJoin<L,
K, V> - Specified by:
on
in interfaceJpaPluralJoin<L,
K, V> - Specified by:
on
in interfaceMapJoin<L,
K, V> - Specified by:
on
in interfaceSqmAttributeJoin<L,
K> - Specified by:
on
in interfaceSqmJoin<L,
K> - Overrides:
on
in classAbstractSqmJoin<L,
V>
-
createCorrelation
- Specified by:
createCorrelation
in classAbstractSqmFrom<L,
V>
-
treatAs
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting.- Specified by:
treatAs
in interfaceJpaFrom<L,
K> - Specified by:
treatAs
in interfaceJpaJoin<L,
K> - Specified by:
treatAs
in interfaceJpaMapJoin<L,
K, V> - Specified by:
treatAs
in interfaceJpaPath<L>
- Specified by:
treatAs
in interfaceJpaPluralJoin<L,
K, V> - Specified by:
treatAs
in interfaceSqmAttributeJoin<L,
K> - Specified by:
treatAs
in interfaceSqmFrom<L,
K> - Specified by:
treatAs
in interfaceSqmJoin<L,
K> - Specified by:
treatAs
in interfaceSqmPath<L>
- Specified by:
treatAs
in classAbstractSqmAttributeJoin<L,
V>
-
treatAs
-
treatAs
-
treatAs
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting.- Specified by:
treatAs
in interfaceJpaFrom<L,
K> - Specified by:
treatAs
in interfaceJpaJoin<L,
K> - Specified by:
treatAs
in interfaceJpaMapJoin<L,
K, V> - Specified by:
treatAs
in interfaceJpaPath<L>
- Specified by:
treatAs
in interfaceJpaPluralJoin<L,
K, V> - Specified by:
treatAs
in interfaceSqmAttributeJoin<L,
K> - Specified by:
treatAs
in interfaceSqmFrom<L,
K> - Specified by:
treatAs
in interfaceSqmJoin<L,
K> - Specified by:
treatAs
in interfaceSqmPath<L>
- Specified by:
treatAs
in classAbstractSqmAttributeJoin<L,
V>
-
treatAs
public <S extends V> SqmTreatedMapJoin<L,K, treatAsV, S> (EntityDomainType<S> treatTarget, String alias, boolean fetch) -
treatAs
public <S extends V> SqmTreatedMapJoin<L,K, treatAsV, S> (EntityDomainType<S> treatTarget, String alias)
-