Class SqmLiteralEntityType<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.expression.SqmLiteralEntityType<T>
-
- All Implemented Interfaces:
Expression<T>,Selection<T>,TupleElement<T>,Serializable,JpaCriteriaNode,JpaExpression<T>,JpaSelection<T>,JpaTupleElement<T>,SemanticPathPart,SqmExpression<T>,SqmSelectableNode<T>,SqmExpressibleAccessor<T>,SqmNode,SqmTypedNode<T>,SqmVisitableNode
public class SqmLiteralEntityType<T> extends AbstractSqmExpression<T> implements SqmSelectableNode<T>, SemanticPathPart
Represents an reference to an entity type as a literal. This is the JPA terminology for cases when we have something like:... where TYPE(e) = SomeType. The tokenSomeTypeis an "entity type literal". An entity type expression can be used to restrict query polymorphism. The TYPE operator returns the exact type of the argument.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description SqmLiteralEntityType(EntityDomainType<T> entityType, NodeBuilder nodeBuilder)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <X> Xaccept(SemanticQueryWalker<X> walker)Accept the walker per visitationvoidappendHqlString(StringBuilder sb)StringasLoggableText()SqmLiteralEntityType<T>copy(SqmCopyContext context)EntityDomainType<T>getNodeType()The expression's type.voidinternalApplyInferableType(SqmExpressible<?> type)SqmPath<?>resolveIndexedAccess(SqmExpression<?> selector, boolean isTerminal, SqmCreationState creationState)SemanticPathPartresolvePathPart(String name, boolean isTerminal, SqmCreationState creationState)-
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, 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, toString, wait, wait, wait
-
Methods inherited from interface org.hibernate.query.criteria.JpaSelection
alias, getCompoundSelectionItems, getSelectionItems
-
Methods inherited from interface org.hibernate.query.criteria.JpaTupleElement
getJavaType, getJavaTypeDescriptor
-
Methods inherited from interface jakarta.persistence.criteria.Selection
isCompoundSelection
-
Methods inherited from interface org.hibernate.query.sqm.tree.expression.SqmExpression
castAs, visitSubSelectableNodes
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmNode
nodeBuilder
-
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 Detail
-
SqmLiteralEntityType
public SqmLiteralEntityType(EntityDomainType<T> entityType, NodeBuilder nodeBuilder)
-
-
Method Detail
-
copy
public SqmLiteralEntityType<T> copy(SqmCopyContext context)
- Specified by:
copyin interfaceSqmExpression<T>- Specified by:
copyin interfaceSqmNode- Specified by:
copyin interfaceSqmSelectableNode<T>- Specified by:
copyin interfaceSqmTypedNode<T>
-
getNodeType
public EntityDomainType<T> getNodeType()
Description copied from interface:SqmExpressionThe expression's type. Can change as a result of calls toSqmExpression.applyInferableType(org.hibernate.query.sqm.SqmExpressible<?>)- Specified by:
getNodeTypein interfaceSqmExpression<T>- Specified by:
getNodeTypein interfaceSqmTypedNode<T>- Overrides:
getNodeTypein classAbstractJpaTupleElement<T>
-
internalApplyInferableType
public void internalApplyInferableType(SqmExpressible<?> type)
- Overrides:
internalApplyInferableTypein classAbstractSqmExpression<T>
-
accept
public <X> X accept(SemanticQueryWalker<X> walker)
Description copied from interface:SqmVisitableNodeAccept the walker per visitation- Specified by:
acceptin interfaceSqmVisitableNode
-
asLoggableText
public String asLoggableText()
- Specified by:
asLoggableTextin interfaceSqmNode
-
resolvePathPart
public SemanticPathPart resolvePathPart(String name, boolean isTerminal, SqmCreationState creationState)
- Specified by:
resolvePathPartin interfaceSemanticPathPart
-
resolveIndexedAccess
public SqmPath<?> resolveIndexedAccess(SqmExpression<?> selector, boolean isTerminal, SqmCreationState creationState)
- Specified by:
resolveIndexedAccessin interfaceSemanticPathPart
-
appendHqlString
public void appendHqlString(StringBuilder sb)
- Specified by:
appendHqlStringin interfaceSqmVisitableNode
-
-