Class SqmRoot<E>
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<E,E>
org.hibernate.query.sqm.tree.from.SqmRoot<E>
- All Implemented Interfaces:
Expression<E>
,FetchParent<E,
,E> From<E,
,E> Path<E>
,Root<E>
,Selection<E>
,TupleElement<E>
,Serializable
,JpaCriteriaNode
,JpaExpression<E>
,JpaFetchParent<E,
,E> JpaFrom<E,
,E> JpaPath<E>
,JpaRoot<E>
,JpaSelection<E>
,JpaTupleElement<E>
,SemanticPathPart
,SqmPath<E>
,SqmExpression<E>
,SqmFrom<E,
,E> SqmSelectableNode<E>
,SqmExpressibleAccessor<E>
,SqmNode
,SqmTypedNode<E>
,SqmVisitableNode
- Direct Known Subclasses:
SqmCorrelatedRoot
,SqmCorrelatedRootJoin
,SqmCteRoot
,SqmDerivedRoot
,SqmFunctionRoot
,SqmTreatedRoot
- See Also:
-
Field Summary
-
Constructor Summary
ConstructorsModifierConstructorDescriptionSqmRoot
(EntityDomainType<E> entityType, String alias, boolean allowJoins, NodeBuilder nodeBuilder) SqmRoot
(NavigablePath navigablePath, EntityDomainType<E> entityType, String alias, NodeBuilder nodeBuilder) protected
SqmRoot
(NavigablePath navigablePath, SqmPathSource<E> referencedNavigable, String alias, boolean allowJoins, NodeBuilder nodeBuilder) protected
SqmRoot
(NavigablePath navigablePath, SqmPathSource<E> referencedNavigable, NodeBuilder nodeBuilder) -
Method Summary
Modifier and TypeMethodDescription<X> X
accept
(SemanticQueryWalker<X> walker) Accept the walker per visitationvoid
addOrderedJoin
(SqmJoin<?, ?> join) void
addSqmJoin
(SqmJoin<E, ?> join) Add an associated joinboolean
copy
(SqmCopyContext context) void
copyTo
(SqmRoot<E> target, SqmCopyContext context) SqmRoot<?>
findRoot()
SqmPath<?>
getLhs()
Get the left-hand side of this path - may be null, indicating a root, cross-join or entity-joingetModel()
boolean
toString()
<S extends E>
SqmTreatedFrom<E,E, S> Support for JPA's explicit (TREAT) down-casting.<S extends E>
SqmTreatedRoot<S extends E>
SqmTreatedRoot<S extends E>
SqmTreatedFrom<E,E, S> treatAs
(EntityDomainType<S> treatTarget) Support for JPA's explicit (TREAT) down-casting.<S extends E>
SqmTreatedRoottreatAs
(EntityDomainType<S> treatTarget, String alias) <S extends E>
SqmTreatedRoottreatAs
(EntityDomainType<S> treatTarget, String alias, boolean fetch) Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmFrom
addTreat, alias, 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, 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, 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 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, join, join, join, join, join, join, join, join, join, joinArray, joinArray, joinArray, joinArray, joinArrayCollection, joinArrayCollection, joinArrayCollection, joinArrayCollection, joinLateral, joinLateral, 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.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
getReferencedPathSource, hasTreats
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, get, getJavaTypeDescriptor, getNavigablePath, getNodeType, getResolvedModel, getReusablePath, getReusablePaths, registerReusablePath, resolveAlias, resolveIndexedAccess, 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, getNodeJavaType
Methods inherited from interface org.hibernate.query.sqm.tree.SqmVisitableNode
toHqlString
Methods inherited from interface jakarta.persistence.TupleElement
getAlias
-
Constructor Details
-
SqmRoot
public SqmRoot(EntityDomainType<E> entityType, String alias, boolean allowJoins, NodeBuilder nodeBuilder)
-
-
Method Details
-
copy
-
copyTo
-
getLhs
Description copied from interface:SqmPath
Get the left-hand side of this path - may be null, indicating a root, cross-join or entity-join -
isAllowJoins
public boolean isAllowJoins() -
getOrderedJoins
-
addOrderedJoin
-
addSqmJoin
Description copied from interface:SqmFrom
Add an associated join- Specified by:
addSqmJoin
in interfaceSqmFrom<E,
E> - Overrides:
addSqmJoin
in classAbstractSqmFrom<E,
E>
-
findRoot
-
getEntityName
-
toString
- Overrides:
toString
in classAbstractSqmPath<E>
-
accept
Description copied from interface:SqmVisitableNode
Accept the walker per visitation- Specified by:
accept
in interfaceSqmVisitableNode
-
getModel
-
getManagedType
- Specified by:
getManagedType
in interfaceJpaRoot<E>
-
createCorrelation
- Specified by:
createCorrelation
in classAbstractSqmFrom<E,
E>
-
containsOnlyInnerJoins
public boolean containsOnlyInnerJoins() -
treatAs
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting. -
treatAs
public <S extends E> SqmTreatedFrom<E,E, treatAsS> (EntityDomainType<S> treatTarget) throws PathException Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting. -
treatAs
-
treatAs
-
treatAs
-
treatAs
public <S extends E> SqmTreatedRoot treatAs(EntityDomainType<S> treatTarget, String alias, boolean fetch)
-