Class DiscriminatorSqmPath
- 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
-
- org.hibernate.metamodel.model.domain.internal.DiscriminatorSqmPath
-
- All Implemented Interfaces:
jakarta.persistence.criteria.Expression
,jakarta.persistence.criteria.Path
,jakarta.persistence.criteria.Selection
,jakarta.persistence.TupleElement
,Serializable
,JpaCriteriaNode
,JpaExpression
,JpaPath
,JpaSelection
,JpaTupleElement
,SemanticPathPart
,SelfInterpretingSqmPath
,SqmPath
,SqmExpression
,SqmSelectableNode
,SqmExpressibleAccessor
,SqmNode
,SqmTypedNode
,SqmVisitableNode
public class DiscriminatorSqmPath extends AbstractSqmPath implements SelfInterpretingSqmPath
SqmPath specialization for an entity discriminator- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
DiscriminatorSqmPath(NavigablePath navigablePath, SqmPathSource referencedPathSource, SqmPath<?> lhs, EntityDomainType entityDomainType, EntityMappingType entityDescriptor, NodeBuilder nodeBuilder)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <X> X
accept(SemanticQueryWalker<X> walker)
Accept the walker per visitationvoid
appendHqlString(StringBuilder sb)
DiscriminatorSqmPath
copy(SqmCopyContext context)
SqmPathInterpretation<?>
interpret(SqlAstCreationState sqlAstCreationState, SemanticQueryWalker sqmWalker, boolean jpaQueryComplianceEnabled)
Perform the interpretationSqmPath<?>
resolvePathPart(String name, boolean isTerminal, SqmCreationState creationState)
SqmTreatedPath
treatAs(Class treatJavaType)
Support for JPA's explicit (TREAT) down-casting.SqmTreatedPath
treatAs(EntityDomainType treatTarget)
Support for JPA's explicit (TREAT) down-casting.-
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmPath
copyTo, get, get, get, get, getExplicitAlias, getLhs, getModel, getNavigablePath, getNodeType, getReferencedPathSource, getReusablePath, getReusablePaths, registerReusablePath, resolvePath, resolvePath, setExplicitAlias, toString, type, visitReusablePaths
-
Methods inherited from class org.hibernate.query.sqm.tree.expression.AbstractSqmExpression
alias, 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 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
-
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.SqmNode
asLoggableText, nodeBuilder
-
Methods inherited from interface org.hibernate.query.sqm.tree.domain.SqmPath
applyInferableType, findRoot, get, get, get, get, getExplicitAlias, getJavaTypeDescriptor, getLhs, getNavigablePath, getNodeType, getReferencedPathSource, getReusablePath, getReusablePaths, registerReusablePath, resolveAlias, resolveIndexedAccess, 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
toHqlString
-
-
-
-
Constructor Detail
-
DiscriminatorSqmPath
protected DiscriminatorSqmPath(NavigablePath navigablePath, SqmPathSource referencedPathSource, SqmPath<?> lhs, EntityDomainType entityDomainType, EntityMappingType entityDescriptor, NodeBuilder nodeBuilder)
-
-
Method Detail
-
copy
public DiscriminatorSqmPath copy(SqmCopyContext context)
- Specified by:
copy
in interfaceSqmExpression
- Specified by:
copy
in interfaceSqmNode
- Specified by:
copy
in interfaceSqmPath
- Specified by:
copy
in interfaceSqmSelectableNode
- Specified by:
copy
in interfaceSqmTypedNode
-
accept
public <X> X accept(SemanticQueryWalker<X> walker)
Description copied from interface:SqmVisitableNode
Accept the walker per visitation- Specified by:
accept
in interfaceSqmVisitableNode
-
interpret
public SqmPathInterpretation<?> interpret(SqlAstCreationState sqlAstCreationState, SemanticQueryWalker sqmWalker, boolean jpaQueryComplianceEnabled)
Description copied from interface:SelfInterpretingSqmPath
Perform the interpretation- Specified by:
interpret
in interfaceSelfInterpretingSqmPath
-
appendHqlString
public void appendHqlString(StringBuilder sb)
- Specified by:
appendHqlString
in interfaceSqmVisitableNode
-
resolvePathPart
public SqmPath<?> resolvePathPart(String name, boolean isTerminal, SqmCreationState creationState)
- Specified by:
resolvePathPart
in interfaceSemanticPathPart
- Specified by:
resolvePathPart
in interfaceSqmPath
-
treatAs
public SqmTreatedPath treatAs(Class treatJavaType) throws PathException
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting.- Specified by:
treatAs
in interfaceJpaPath
- Specified by:
treatAs
in interfaceSqmPath
- Throws:
PathException
-
treatAs
public SqmTreatedPath treatAs(EntityDomainType treatTarget) throws PathException
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting.- Specified by:
treatAs
in interfaceJpaPath
- Specified by:
treatAs
in interfaceSqmPath
- Throws:
PathException
-
-