Class SqmBagJoin<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,Collection<E>,E>
-
- org.hibernate.query.sqm.tree.domain.SqmBagJoin<O,E>
-
- All Implemented Interfaces:
CollectionJoin<O,E>
,Expression<E>
,Fetch<O,E>
,FetchParent<O,E>
,From<O,E>
,Join<O,E>
,Path<E>
,PluralJoin<O,Collection<E>,E>
,Selection<E>
,TupleElement<E>
,Serializable
,JpaCollectionJoin<O,E>
,JpaCriteriaNode
,JpaExpression<E>
,JpaFetch<O,E>
,JpaFetchParent<O,E>
,JpaFrom<O,E>
,JpaJoin<O,E>
,JpaJoinedFrom<O,E>
,JpaPath<E>
,JpaPluralJoin<O,Collection<E>,E>
,JpaSelection<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:
SqmCorrelatedBagJoin
,SqmTreatedBagJoin
public class SqmBagJoin<O,E> extends AbstractSqmPluralJoin<O,Collection<E>,E> implements JpaCollectionJoin<O,E>
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description SqmBagJoin(SqmFrom<?,O> lhs, BagPersistentAttribute<O,E> attribute, String alias, SqmJoinType sqmJoinType, boolean fetched, NodeBuilder nodeBuilder)
protected
SqmBagJoin(SqmFrom<?,O> lhs, NavigablePath navigablePath, BagPersistentAttribute<O,E> attribute, 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 visitationSqmBagJoin<O,E>
copy(SqmCopyContext context)
SqmCorrelatedBagJoin<O,E>
createCorrelation()
BagPersistentAttribute<O,E>
getAttribute()
BagPersistentAttribute<O,E>
getModel()
SqmAttributeJoin<O,E>
makeCopy(SqmCreationProcessingState creationProcessingState)
SqmBagJoin<O,E>
on(Expression<Boolean> restriction)
SqmBagJoin<O,E>
on(Predicate... restrictions)
SqmBagJoin<O,E>
on(JpaExpression<Boolean> restriction)
Add a restriction to the fetch.SqmBagJoin<O,E>
on(JpaPredicate... restrictions)
Add a restriction to the fetch.<S extends E>
SqmTreatedBagJoin<O,E,S>treatAs(Class<S> treatAsType)
Support for JPA's explicit (TREAT) down-casting.<S extends E>
SqmTreatedBagJoin<O,E,S>treatAs(Class<S> treatJavaType, String alias)
<S extends E>
SqmTreatedBagJoin<O,E,S>treatAs(EntityDomainType<S> treatTarget)
Support for JPA's explicit (TREAT) down-casting.<S extends E>
SqmTreatedBagJoin<O,E,S>treatAs(EntityDomainType<S> treatTarget, String alias)
-
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin
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, 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, resolvePathPart, setExplicitAlias, visitSqmJoins
-
Methods inherited from class org.hibernate.query.sqm.tree.domain.AbstractSqmPath
copyTo, get, get, get, get, 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, 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, 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, getResolvedModel
-
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, setJoinPredicate
-
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.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, getReusablePath, getReusablePaths, registerReusablePath, resolveAlias, resolveIndexedAccess, resolvePathPart, setExplicitAlias, type, visitReusablePaths
-
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
-
SqmBagJoin
public SqmBagJoin(SqmFrom<?,O> lhs, BagPersistentAttribute<O,E> attribute, String alias, SqmJoinType sqmJoinType, boolean fetched, NodeBuilder nodeBuilder)
-
SqmBagJoin
protected SqmBagJoin(SqmFrom<?,O> lhs, NavigablePath navigablePath, BagPersistentAttribute<O,E> attribute, String alias, SqmJoinType joinType, boolean fetched, NodeBuilder nodeBuilder)
-
-
Method Detail
-
copy
public SqmBagJoin<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 BagPersistentAttribute<O,E> getModel()
- Specified by:
getModel
in interfaceCollectionJoin<O,E>
- Specified by:
getModel
in interfacePath<O>
- Specified by:
getModel
in interfacePluralJoin<O,Collection<E>,E>
- Overrides:
getModel
in classAbstractSqmPluralJoin<O,Collection<E>,E>
-
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 BagPersistentAttribute<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,Collection<E>,E>
- Overrides:
getAttribute
in classAbstractSqmAttributeJoin<O,E>
-
on
public SqmBagJoin<O,E> on(JpaExpression<Boolean> restriction)
Description copied from interface:JpaFetch
Add a restriction to the fetch.- Specified by:
on
in interfaceJpaCollectionJoin<O,E>
- Specified by:
on
in interfaceJpaFetch<O,E>
- Specified by:
on
in interfaceJpaJoin<O,E>
- Specified by:
on
in interfaceJpaJoinedFrom<O,E>
- Specified by:
on
in interfaceJpaPluralJoin<O,Collection<E>,E>
- Overrides:
on
in classAbstractSqmAttributeJoin<O,E>
-
on
public SqmBagJoin<O,E> on(Expression<Boolean> restriction)
- Specified by:
on
in interfaceCollectionJoin<O,E>
- Specified by:
on
in interfaceJoin<O,E>
- Specified by:
on
in interfaceJpaCollectionJoin<O,E>
- Specified by:
on
in interfaceJpaJoin<O,E>
- Specified by:
on
in interfaceJpaJoinedFrom<O,E>
- Specified by:
on
in interfaceJpaPluralJoin<O,Collection<E>,E>
- Overrides:
on
in classAbstractSqmAttributeJoin<O,E>
-
on
public SqmBagJoin<O,E> on(JpaPredicate... restrictions)
Description copied from interface:JpaFetch
Add a restriction to the fetch.- Specified by:
on
in interfaceJpaCollectionJoin<O,E>
- Specified by:
on
in interfaceJpaFetch<O,E>
- Specified by:
on
in interfaceJpaJoin<O,E>
- Specified by:
on
in interfaceJpaJoinedFrom<O,E>
- Specified by:
on
in interfaceJpaPluralJoin<O,Collection<E>,E>
- Overrides:
on
in classAbstractSqmAttributeJoin<O,E>
-
on
public SqmBagJoin<O,E> on(Predicate... restrictions)
- Specified by:
on
in interfaceCollectionJoin<O,E>
- Specified by:
on
in interfaceJoin<O,E>
- Specified by:
on
in interfaceJpaCollectionJoin<O,E>
- Specified by:
on
in interfaceJpaJoin<O,E>
- Specified by:
on
in interfaceJpaJoinedFrom<O,E>
- Specified by:
on
in interfaceJpaPluralJoin<O,Collection<E>,E>
- Overrides:
on
in classAbstractSqmAttributeJoin<O,E>
-
createCorrelation
public SqmCorrelatedBagJoin<O,E> createCorrelation()
- Specified by:
createCorrelation
in classAbstractSqmFrom<O,E>
-
treatAs
public <S extends E> SqmTreatedBagJoin<O,E,S> treatAs(Class<S> treatAsType)
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting.- Specified by:
treatAs
in interfaceJpaCollectionJoin<O,E>
- Specified by:
treatAs
in interfaceJpaJoin<O,E>
- Specified by:
treatAs
in interfaceJpaPath<O>
- Specified by:
treatAs
in interfaceJpaPluralJoin<O,Collection<E>,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> SqmTreatedBagJoin<O,E,S> treatAs(EntityDomainType<S> treatTarget)
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting.- Specified by:
treatAs
in interfaceJpaCollectionJoin<O,E>
- Specified by:
treatAs
in interfaceJpaJoin<O,E>
- Specified by:
treatAs
in interfaceJpaPath<O>
- Specified by:
treatAs
in interfaceJpaPluralJoin<O,Collection<E>,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> SqmTreatedBagJoin<O,E,S> treatAs(Class<S> treatJavaType, String alias)
-
treatAs
public <S extends E> SqmTreatedBagJoin<O,E,S> treatAs(EntityDomainType<S> treatTarget, String alias)
-
makeCopy
public SqmAttributeJoin<O,E> makeCopy(SqmCreationProcessingState creationProcessingState)
- Specified by:
makeCopy
in interfaceSqmAttributeJoin<O,E>
-
-