Class SqmSetJoin<O,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<O,T>
-
- org.hibernate.query.sqm.tree.domain.AbstractSqmJoin<O,T>
-
- org.hibernate.query.sqm.tree.domain.AbstractSqmQualifiedJoin<O,T>
-
- org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin<O,E>
-
- org.hibernate.query.sqm.tree.domain.AbstractSqmPluralJoin<O,Set<E>,E>
-
- org.hibernate.query.sqm.tree.domain.SqmSetJoin<O,E>
-
- All Implemented Interfaces:
Expression<E>
,Fetch<O,E>
,FetchParent<O,E>
,From<O,E>
,Join<O,E>
,Path<E>
,PluralJoin<O,Set<E>,E>
,Selection<E>
,SetJoin<O,E>
,TupleElement<E>
,Serializable
,JpaCriteriaNode
,JpaExpression<E>
,JpaFetch<O,E>
,JpaFetchParent<O,E>
,JpaFrom<O,E>
,JpaJoin<O,E>
,JpaJoinedFrom<O,E>
,JpaPath<E>
,JpaPluralJoin<O,Set<E>,E>
,JpaSelection<E>
,JpaSetJoin<O,E>
,JpaTupleElement<E>
,SemanticPathPart
,SqmPath<E>
,SqmExpression<E>
,SqmAttributeJoin<O,E>
,SqmFrom<O,E>
,SqmJoin<O,E>
,SqmQualifiedJoin<O,E>
,SqmSelectableNode<E>
,SqmExpressibleAccessor<E>
,SqmNode
,SqmTypedNode<E>
,SqmVisitableNode
- Direct Known Subclasses:
SqmCorrelatedSetJoin
,SqmTreatedSetJoin
public class SqmSetJoin<O,E> extends AbstractSqmPluralJoin<O,Set<E>,E> implements JpaSetJoin<O,E>
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description SqmSetJoin(SqmFrom<?,O> lhs, SetPersistentAttribute<O,E> pluralValuedNavigable, String alias, SqmJoinType sqmJoinType, boolean fetched, NodeBuilder nodeBuilder)
protected
SqmSetJoin(SqmFrom<?,O> lhs, NavigablePath navigablePath, SetPersistentAttribute<O,E> pluralValuedNavigable, String alias, SqmJoinType joinType, boolean fetched, 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 visitationSqmSetJoin<O,E>
copy(SqmCopyContext context)
SqmCorrelatedSetJoin<O,E>
createCorrelation()
<X,Y>
SqmAttributeJoin<X,Y>fetch(String attributeName)
SetPersistentAttribute<O,E>
getAttribute()
SetPersistentAttribute<O,E>
getModel()
SqmAttributeJoin<O,E>
makeCopy(SqmCreationProcessingState creationProcessingState)
SqmSetJoin<O,E>
on(Expression<Boolean> restriction)
SqmSetJoin<O,E>
on(Predicate... restrictions)
SqmSetJoin<O,E>
on(JpaExpression<Boolean> restriction)
Add a restriction to the fetch.SqmSetJoin<O,E>
on(JpaPredicate... restrictions)
Add a restriction to the fetch.<S extends E>
SqmTreatedSetJoin<O,E,S>treatAs(Class<S> treatAsType)
Support for JPA's explicit (TREAT) down-casting.<S extends E>
SqmTreatedSetJoin<O,E,S>treatAs(Class<S> treatJavaType, String alias)
<S extends E>
SqmTreatedSetJoin<O,E,S>treatAs(Class<S> treatJavaType, String alias, boolean fetch)
<S extends E>
SqmTreatedSetJoin<O,E,S>treatAs(EntityDomainType<S> treatTarget)
Support for JPA's explicit (TREAT) down-casting.<S extends E>
SqmTreatedSetJoin<O,E,S>treatAs(EntityDomainType<S> treatTarget, String alias)
<S extends E>
SqmTreatedSetJoin<O,E,S>treatAs(EntityDomainType<S> treatTarget, String alias, boolean fetch)
-
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin
clearFetched, getJoinType, getLhs, getNodeJavaType, getParent, isFetched
-
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, 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, removeLeftFetchJoins, resolvePathPart, setExplicitAlias, visitSqmJoins
-
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmPath
copyTo, get, get, get, get, getExpressible, getNavigablePath, getNavigablePathCopy, getNodeType, getReferencedPathSource, 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, equalTo, equalTo, 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 jakarta.persistence.criteria.Join
getJoinType, getOn, getParent
-
Methods inherited from interface org.hibernate.query.criteria.JpaFetch
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
-
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.from.SqmAttributeJoin
getJavaTypeDescriptor, getJoinPredicate, getReferencedPathSource, isImplicitlySelectable, setJoinPredicate
-
Methods inherited from interface org.hibernate.query.sqm.tree.expression.SqmExpression
as, asBigDecimal, asBigInteger, asDouble, asFloat, asInteger, asLong, asString, castAs, equalTo, equalTo, 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, findRoot, get, get, get, get, getExplicitAlias, getNavigablePath, getNodeType, getResolvedModel, getReusablePath, getReusablePaths, registerReusablePath, resolveAlias, resolveIndexedAccess, resolvePathPart, setExplicitAlias, 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
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmVisitableNode
appendHqlString, toHqlString
-
Methods inherited from interface jakarta.persistence.TupleElement
getAlias
-
-
-
-
Constructor Detail
-
SqmSetJoin
public SqmSetJoin(SqmFrom<?,O> lhs, SetPersistentAttribute<O,E> pluralValuedNavigable, String alias, SqmJoinType sqmJoinType, boolean fetched, NodeBuilder nodeBuilder)
-
SqmSetJoin
protected SqmSetJoin(SqmFrom<?,O> lhs, NavigablePath navigablePath, SetPersistentAttribute<O,E> pluralValuedNavigable, String alias, SqmJoinType joinType, boolean fetched, NodeBuilder nodeBuilder)
-
-
Method Detail
-
copy
public SqmSetJoin<O,E> copy(SqmCopyContext context)
- Specified by:
copy
in interfaceSqmExpression<O>
- Specified by:
copy
in interfaceSqmFrom<O,E>
- Specified by:
copy
in interfaceSqmJoin<O,E>
- Specified by:
copy
in interfaceSqmNode
- Specified by:
copy
in interfaceSqmPath<O>
- Specified by:
copy
in interfaceSqmSelectableNode<O>
- Specified by:
copy
in interfaceSqmTypedNode<O>
-
getModel
public SetPersistentAttribute<O,E> getModel()
-
accept
public <X> X accept(SemanticQueryWalker<X> walker)
Description copied from interface:SqmVisitableNode
Accept the walker per visitation- Specified by:
accept
in interfaceSqmVisitableNode
- Overrides:
accept
in classAbstractSqmAttributeJoin<O,E>
-
getAttribute
public SetPersistentAttribute<O,E> getAttribute()
- Specified by:
getAttribute
in interfaceFetch<O,E>
- Specified by:
getAttribute
in interfaceJoin<O,E>
- Specified by:
getAttribute
in interfaceJpaJoin<O,E>
- Specified by:
getAttribute
in interfaceJpaPluralJoin<O,Set<E>,E>
- Overrides:
getAttribute
in classAbstractSqmAttributeJoin<O,E>
-
on
public SqmSetJoin<O,E> on(JpaExpression<Boolean> restriction)
Description copied from interface:JpaFetch
Add a restriction to the fetch.
-
on
public SqmSetJoin<O,E> on(Expression<Boolean> restriction)
- Specified by:
on
in interfaceJoin<O,E>
- Specified by:
on
in interfaceJpaJoin<O,E>
- Specified by:
on
in interfaceJpaJoinedFrom<O,E>
- Specified by:
on
in interfaceJpaPluralJoin<O,Set<E>,E>
- Specified by:
on
in interfaceJpaSetJoin<O,E>
- Specified by:
on
in interfaceSetJoin<O,E>
- Overrides:
on
in classAbstractSqmAttributeJoin<O,E>
-
on
public SqmSetJoin<O,E> on(JpaPredicate... restrictions)
Description copied from interface:JpaFetch
Add a restriction to the fetch.
-
on
public SqmSetJoin<O,E> on(Predicate... restrictions)
- Specified by:
on
in interfaceJoin<O,E>
- Specified by:
on
in interfaceJpaJoin<O,E>
- Specified by:
on
in interfaceJpaJoinedFrom<O,E>
- Specified by:
on
in interfaceJpaPluralJoin<O,Set<E>,E>
- Specified by:
on
in interfaceJpaSetJoin<O,E>
- Specified by:
on
in interfaceSetJoin<O,E>
- Overrides:
on
in classAbstractSqmAttributeJoin<O,E>
-
createCorrelation
public SqmCorrelatedSetJoin<O,E> createCorrelation()
- Specified by:
createCorrelation
in classAbstractSqmFrom<O,E>
-
treatAs
public <S extends E> SqmTreatedSetJoin<O,E,S> treatAs(Class<S> treatAsType)
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting.- Specified by:
treatAs
in interfaceJpaJoin<O,E>
- Specified by:
treatAs
in interfaceJpaPath<O>
- Specified by:
treatAs
in interfaceJpaPluralJoin<O,Set<E>,E>
- Specified by:
treatAs
in interfaceJpaSetJoin<O,E>
- Specified by:
treatAs
in interfaceSqmAttributeJoin<O,E>
- Specified by:
treatAs
in interfaceSqmFrom<O,E>
- Specified by:
treatAs
in interfaceSqmPath<O>
-
treatAs
public <S extends E> SqmTreatedSetJoin<O,E,S> treatAs(EntityDomainType<S> treatTarget)
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting.- Specified by:
treatAs
in interfaceJpaJoin<O,E>
- Specified by:
treatAs
in interfaceJpaPath<O>
- Specified by:
treatAs
in interfaceJpaPluralJoin<O,Set<E>,E>
- Specified by:
treatAs
in interfaceJpaSetJoin<O,E>
- Specified by:
treatAs
in interfaceSqmAttributeJoin<O,E>
- Specified by:
treatAs
in interfaceSqmFrom<O,E>
- Specified by:
treatAs
in interfaceSqmPath<O>
-
treatAs
public <S extends E> SqmTreatedSetJoin<O,E,S> treatAs(Class<S> treatJavaType, String alias)
-
treatAs
public <S extends E> SqmTreatedSetJoin<O,E,S> treatAs(EntityDomainType<S> treatTarget, String alias)
-
treatAs
public <S extends E> SqmTreatedSetJoin<O,E,S> treatAs(Class<S> treatJavaType, String alias, boolean fetch)
- Specified by:
treatAs
in interfaceSqmAttributeJoin<O,E>
-
treatAs
public <S extends E> SqmTreatedSetJoin<O,E,S> treatAs(EntityDomainType<S> treatTarget, String alias, boolean fetch)
- Specified by:
treatAs
in interfaceSqmAttributeJoin<O,E>
-
fetch
public <X,Y> SqmAttributeJoin<X,Y> fetch(String attributeName)
-
makeCopy
public SqmAttributeJoin<O,E> makeCopy(SqmCreationProcessingState creationProcessingState)
- Specified by:
makeCopy
in interfaceSqmAttributeJoin<O,E>
-
-