Class SqmJpaCompoundSelection<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.select.SqmJpaCompoundSelection<T>
-
- All Implemented Interfaces:
CompoundSelection<T>,Expression<T>,Selection<T>,TupleElement<T>,Serializable,BindableType<T>,JpaCompoundSelection<T>,JpaCriteriaNode,JpaExpression<T>,JpaSelection<T>,JpaTupleElement<T>,SqmExpressible<T>,SqmExpression<T>,SqmSelectableNode<T>,SqmExpressibleAccessor<T>,SqmNode,SqmTypedNode<T>,SqmVisitableNode
public class SqmJpaCompoundSelection<T> extends AbstractSqmExpression<T> implements JpaCompoundSelection<T>, SqmExpressible<T>
-
-
Constructor Summary
Constructors Constructor Description SqmJpaCompoundSelection(List<SqmSelectableNode<?>> selectableNodes, JavaType<T> javaType, NodeBuilder criteriaBuilder)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <X> Xaccept(SemanticQueryWalker<X> walker)Accept the walker per visitationJpaSelection<T>alias(String name)voidappendHqlString(StringBuilder sb)SqmJpaCompoundSelection<T>copy(SqmCopyContext context)StringgetAlias()Class<T>getBindableJavaType()The expected Java typeJavaType<T>getExpressibleJavaType()The Java type descriptor for this expressibleClass<T>getJavaType()JavaType<T>getJavaTypeDescriptor()List<SqmSelectableNode<?>>getSelectionItems()DomainType<T>getSqmType()booleanisCompoundSelection()voidvisitSubSelectableNodes(Consumer<SqmSelectableNode<?>> jpaSelectionConsumer)Visit each of this selectable's direct sub-selectables - used to support JPA'sSelectionmodel (which is really a "selectable", just poorly named and poorly defined-
Methods inherited from class org.hibernate.query.sqm.tree.expression.AbstractSqmExpression
applyInferableType, as, asBigDecimal, asBigInteger, asDouble, asFloat, asInteger, asLong, asString, equalTo, equalTo, in, in, in, in, internalApplyInferableType, isNotNull, isNull, nodeBuilder
-
Methods inherited from class org.hibernate.query.sqm.tree.jpa.AbstractJpaTupleElement
copyTo, getNodeType, 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
getCompoundSelectionItems
-
Methods inherited from interface org.hibernate.query.criteria.JpaTupleElement
getJavaTypeName, isEnum
-
Methods inherited from interface org.hibernate.query.sqm.SqmExpressible
getRelationalJavaType, getTypeName, isInstance, resolveExpressible
-
Methods inherited from interface org.hibernate.query.sqm.tree.expression.SqmExpression
cast, castAs, getNodeType
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmNode
asLoggableText
-
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
-
-
-
-
Constructor Detail
-
SqmJpaCompoundSelection
public SqmJpaCompoundSelection(List<SqmSelectableNode<?>> selectableNodes, JavaType<T> javaType, NodeBuilder criteriaBuilder)
-
-
Method Detail
-
copy
public SqmJpaCompoundSelection<T> copy(SqmCopyContext context)
- Specified by:
copyin interfaceSqmExpression<T>- Specified by:
copyin interfaceSqmNode- Specified by:
copyin interfaceSqmSelectableNode<T>- Specified by:
copyin interfaceSqmTypedNode<T>
-
getJavaTypeDescriptor
public JavaType<T> getJavaTypeDescriptor()
- Specified by:
getJavaTypeDescriptorin interfaceJpaTupleElement<T>- Overrides:
getJavaTypeDescriptorin classAbstractSqmExpression<T>
-
getExpressibleJavaType
public JavaType<T> getExpressibleJavaType()
Description copied from interface:SqmExpressibleThe Java type descriptor for this expressible- Specified by:
getExpressibleJavaTypein interfaceSqmExpressible<T>
-
getJavaType
public Class<T> getJavaType()
- Specified by:
getJavaTypein interfaceJpaTupleElement<T>- Specified by:
getJavaTypein interfaceTupleElement<T>
-
getBindableJavaType
public Class<T> getBindableJavaType()
Description copied from interface:BindableTypeThe expected Java type- Specified by:
getBindableJavaTypein interfaceBindableType<T>
-
getSelectionItems
public List<SqmSelectableNode<?>> getSelectionItems()
- Specified by:
getSelectionItemsin interfaceJpaSelection<T>- Overrides:
getSelectionItemsin classAbstractJpaSelection<T>
-
alias
public JpaSelection<T> alias(String name)
- Specified by:
aliasin interfaceJpaSelection<T>- Specified by:
aliasin interfaceSelection<T>- Overrides:
aliasin classAbstractJpaSelection<T>
-
getAlias
public String getAlias()
- Specified by:
getAliasin interfaceTupleElement<T>- Overrides:
getAliasin classAbstractJpaTupleElement<T>
-
isCompoundSelection
public boolean isCompoundSelection()
- Specified by:
isCompoundSelectionin interfaceSelection<T>- Overrides:
isCompoundSelectionin classAbstractJpaSelection<T>
-
accept
public <X> X accept(SemanticQueryWalker<X> walker)
Description copied from interface:SqmVisitableNodeAccept the walker per visitation- Specified by:
acceptin interfaceSqmVisitableNode
-
appendHqlString
public void appendHqlString(StringBuilder sb)
- Specified by:
appendHqlStringin interfaceSqmVisitableNode
-
visitSubSelectableNodes
public void visitSubSelectableNodes(Consumer<SqmSelectableNode<?>> jpaSelectionConsumer)
Description copied from interface:SqmSelectableNodeVisit each of this selectable's direct sub-selectables - used to support JPA'sSelectionmodel (which is really a "selectable", just poorly named and poorly defined- Specified by:
visitSubSelectableNodesin interfaceSqmExpression<T>- Specified by:
visitSubSelectableNodesin interfaceSqmSelectableNode<T>- See Also:
JpaSelection.getSelectionItems(),Selection.getCompoundSelectionItems()
-
getSqmType
public DomainType<T> getSqmType()
- Specified by:
getSqmTypein interfaceSqmExpressible<T>
-
-