Class SqmEntityJoin<T>
- 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<O,T>
-
- org.hibernate.query.sqm.tree.domain.AbstractSqmJoin<O,T>
-
- org.hibernate.query.sqm.tree.domain.AbstractSqmQualifiedJoin<T,T>
-
- org.hibernate.query.sqm.tree.from.SqmEntityJoin<T>
-
- All Implemented Interfaces:
Expression<T>,FetchParent<T,T>,From<T,T>,Path<T>,Selection<T>,TupleElement<T>,Serializable,JpaCriteriaNode,JpaEntityJoin<T>,JpaExpression<T>,JpaFetchParent<T,T>,JpaFrom<T,T>,JpaJoinedFrom<T,T>,JpaPath<T>,JpaSelection<T>,JpaTupleElement<T>,SemanticPathPart,SqmPath<T>,SqmExpression<T>,SqmFrom<T,T>,SqmJoin<T,T>,SqmQualifiedJoin<T,T>,SqmSelectableNode<T>,SqmExpressibleAccessor<T>,SqmNode,SqmTypedNode<T>,SqmVisitableNode
- Direct Known Subclasses:
SqmCorrelatedEntityJoin,SqmTreatedEntityJoin
public class SqmEntityJoin<T> extends AbstractSqmQualifiedJoin<T,T> implements JpaEntityJoin<T>
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description SqmEntityJoin(EntityDomainType<T> joinedEntityDescriptor, String alias, SqmJoinType joinType, SqmRoot<?> sqmRoot)protectedSqmEntityJoin(NavigablePath navigablePath, EntityDomainType<T> joinedEntityDescriptor, String alias, SqmJoinType joinType, SqmRoot<?> sqmRoot)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <X> Xaccept(SemanticQueryWalker<X> walker)Accept the walker per visitationSqmEntityJoin<T>copy(SqmCopyContext context)SqmCorrelatedEntityJoin<T>createCorrelation()SqmRoot<?>findRoot()StringgetEntityName()SqmPath<?>getLhs()Get the left-hand side of this path - may be null, indicating a root, cross-join or entity-joinEntityDomainType<T>getModel()EntityDomainType<T>getReferencedPathSource()The path source that this path refers to (and that most likely created it).SqmRoot<?>getRoot()SqmEntityJoin<T>makeCopy(SqmCreationProcessingState creationProcessingState)SqmEntityJoin<T>on(Expression<Boolean> restriction)SqmEntityJoin<T>on(Predicate... restrictions)SqmEntityJoin<T>on(JpaExpression<Boolean> restriction)SqmEntityJoin<T>on(JpaPredicate... restrictions)SqmPath<?>resolveIndexedAccess(SqmExpression<?> selector, boolean isTerminal, SqmCreationState creationState)<S extends T>
SqmTreatedEntityJoin<T,S>treatAs(Class<S> treatJavaType)Support for JPA's explicit (TREAT) down-casting.<S extends T>
SqmFrom<?,S>treatAs(Class<S> treatJavaType, String alias)<S extends T>
SqmTreatedEntityJoin<T,S>treatAs(EntityDomainType<S> treatTarget)Support for JPA's explicit (TREAT) down-casting.<S extends T>
SqmFrom<?,S>treatAs(EntityDomainType<S> treatTarget, String alias)-
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmQualifiedJoin
applyRestriction, copyTo, getJoinPredicate, getOn, setJoinPredicate
-
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmJoin
getSqmJoinType
-
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmFrom
addSqmJoin, addTreat, alias, appendHqlString, copyTo, crossJoin, crossJoin, fetch, fetch, fetch, fetch, fetch, fetch, findTreat, getCorrelationParent, getExplicitAlias, getFetches, getJoins, getParentPath, getSqmJoins, getSqmTreats, hasJoins, hasTreats, isCorrelated, join, 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, resolvePathPart, setExplicitAlias, visitSqmJoins
-
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmPath
copyTo, get, get, get, get, getNavigablePath, getNavigablePathCopy, getNodeType, 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, getJavaTypeDescriptor, in, in, in, in, internalApplyInferableType, isNotNull, isNull, nodeBuilder
-
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 org.hibernate.query.criteria.JpaFetchParent
fetch, fetch, fetch, fetch, fetch, fetch, getFetches
-
Methods inherited from interface org.hibernate.query.criteria.JpaFrom
crossJoin, crossJoin, join, join, join, join, join, join, join, join, join, joinLateral, joinLateral
-
Methods inherited from interface org.hibernate.query.criteria.JpaJoinedFrom
getOn
-
Methods inherited from interface org.hibernate.query.criteria.JpaPath
getParentPath, getResolvedModel
-
Methods inherited from interface org.hibernate.query.criteria.JpaSelection
alias, getCompoundSelectionItems, getSelectionItems
-
Methods inherited from interface org.hibernate.query.criteria.JpaTupleElement
getJavaType
-
Methods inherited from interface jakarta.persistence.criteria.Selection
isCompoundSelection
-
Methods inherited from interface org.hibernate.query.sqm.tree.expression.SqmExpression
as, asBigDecimal, asBigInteger, asDouble, asFloat, asInteger, asLong, asString, castAs, in, in, in, in, isNotNull, isNull, visitSubSelectableNodes
-
Methods inherited from interface org.hibernate.query.sqm.tree.from.SqmFrom
addSqmJoin, getCorrelationParent, getSqmJoins, getSqmTreats, hasJoins, hasTreats, join, join, join, join, join, join, join, join, join, join, joinCollection, joinCollection, joinList, joinList, joinMap, joinMap, joinSet, joinSet, visitSqmJoins
-
Methods inherited from interface org.hibernate.query.sqm.tree.from.SqmJoin
getSqmJoinType, join, join
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmNode
asLoggableText, nodeBuilder
-
Methods inherited from interface org.hibernate.query.sqm.tree.domain.SqmPath
applyInferableType, get, get, get, get, getExplicitAlias, getJavaTypeDescriptor, getNavigablePath, getNodeType, getReusablePath, getReusablePaths, registerReusablePath, resolveAlias, resolvePathPart, setExplicitAlias, type, visitReusablePaths
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmTypedNode
getExpressible, getNodeJavaType
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmVisitableNode
appendHqlString, toHqlString
-
Methods inherited from interface jakarta.persistence.TupleElement
getAlias
-
-
-
-
Constructor Detail
-
SqmEntityJoin
public SqmEntityJoin(EntityDomainType<T> joinedEntityDescriptor, String alias, SqmJoinType joinType, SqmRoot<?> sqmRoot)
-
SqmEntityJoin
protected SqmEntityJoin(NavigablePath navigablePath, EntityDomainType<T> joinedEntityDescriptor, String alias, SqmJoinType joinType, SqmRoot<?> sqmRoot)
-
-
Method Detail
-
copy
public SqmEntityJoin<T> copy(SqmCopyContext context)
- Specified by:
copyin interfaceSqmExpression<T>- Specified by:
copyin interfaceSqmFrom<T,T>- Specified by:
copyin interfaceSqmJoin<T,T>- Specified by:
copyin interfaceSqmNode- Specified by:
copyin interfaceSqmPath<T>- Specified by:
copyin interfaceSqmSelectableNode<T>- Specified by:
copyin interfaceSqmTypedNode<T>
-
getRoot
public SqmRoot<?> getRoot()
-
resolveIndexedAccess
public SqmPath<?> resolveIndexedAccess(SqmExpression<?> selector, boolean isTerminal, SqmCreationState creationState)
- Specified by:
resolveIndexedAccessin interfaceSemanticPathPart- Specified by:
resolveIndexedAccessin interfaceSqmPath<T>
-
getModel
public EntityDomainType<T> getModel()
- Specified by:
getModelin interfaceJpaEntityJoin<T>- Specified by:
getModelin interfacePath<T>- Overrides:
getModelin classAbstractSqmPath<T>
-
getLhs
public SqmPath<?> getLhs()
Description copied from interface:SqmPathGet the left-hand side of this path - may be null, indicating a root, cross-join or entity-join
-
getReferencedPathSource
public EntityDomainType<T> getReferencedPathSource()
Description copied from interface:SqmPathThe path source that this path refers to (and that most likely created it).- Specified by:
getReferencedPathSourcein interfaceSqmFrom<T,T>- Specified by:
getReferencedPathSourcein interfaceSqmPath<T>- Overrides:
getReferencedPathSourcein classAbstractSqmPath<T>- See Also:
SqmPathSource.createSqmPath(org.hibernate.query.sqm.tree.domain.SqmPath<?>, org.hibernate.query.sqm.SqmPathSource<?>)
-
getEntityName
public String getEntityName()
-
on
public SqmEntityJoin<T> on(JpaExpression<Boolean> restriction)
- Specified by:
onin interfaceJpaEntityJoin<T>- Specified by:
onin interfaceJpaJoinedFrom<T,T>- Overrides:
onin classAbstractSqmQualifiedJoin<T,T>
-
on
public SqmEntityJoin<T> on(Expression<Boolean> restriction)
- Specified by:
onin interfaceJpaEntityJoin<T>- Specified by:
onin interfaceJpaJoinedFrom<T,T>- Overrides:
onin classAbstractSqmQualifiedJoin<T,T>
-
on
public SqmEntityJoin<T> on(JpaPredicate... restrictions)
- Specified by:
onin interfaceJpaEntityJoin<T>- Specified by:
onin interfaceJpaJoinedFrom<T,T>- Overrides:
onin classAbstractSqmQualifiedJoin<T,T>
-
on
public SqmEntityJoin<T> on(Predicate... restrictions)
- Specified by:
onin interfaceJpaEntityJoin<T>- Specified by:
onin interfaceJpaJoinedFrom<T,T>- Overrides:
onin classAbstractSqmQualifiedJoin<T,T>
-
accept
public <X> X accept(SemanticQueryWalker<X> walker)
Description copied from interface:SqmVisitableNodeAccept the walker per visitation- Specified by:
acceptin interfaceSqmVisitableNode
-
treatAs
public <S extends T> SqmTreatedEntityJoin<T,S> treatAs(Class<S> treatJavaType) throws PathException
Description copied from interface:JpaPathSupport for JPA's explicit (TREAT) down-casting.
-
treatAs
public <S extends T> SqmTreatedEntityJoin<T,S> treatAs(EntityDomainType<S> treatTarget) throws PathException
Description copied from interface:JpaPathSupport for JPA's explicit (TREAT) down-casting.
-
treatAs
public <S extends T> SqmFrom<?,S> treatAs(EntityDomainType<S> treatTarget, String alias)
-
createCorrelation
public SqmCorrelatedEntityJoin<T> createCorrelation()
- Specified by:
createCorrelationin classAbstractSqmFrom<T,T>
-
makeCopy
public SqmEntityJoin<T> makeCopy(SqmCreationProcessingState creationProcessingState)
-
-