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)protectedSqmBagJoin(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> Xaccept(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:
copyin interfaceSqmExpression<O>- Specified by:
copyin interfaceSqmFrom<O,E>- Specified by:
copyin interfaceSqmJoin<O,E>- Specified by:
copyin interfaceSqmNode- Specified by:
copyin interfaceSqmPath<O>- Specified by:
copyin interfaceSqmSelectableNode<O>- Specified by:
copyin interfaceSqmTypedNode<O>
-
getModel
public BagPersistentAttribute<O,E> getModel()
- Specified by:
getModelin interfaceCollectionJoin<O,E>- Specified by:
getModelin interfacePath<O>- Specified by:
getModelin interfacePluralJoin<O,Collection<E>,E>- Overrides:
getModelin classAbstractSqmPluralJoin<O,Collection<E>,E>
-
accept
public <X> X accept(SemanticQueryWalker<X> walker)
Description copied from interface:SqmVisitableNodeAccept the walker per visitation- Specified by:
acceptin interfaceSqmVisitableNode- Overrides:
acceptin classAbstractSqmAttributeJoin<O,E>
-
getAttribute
public BagPersistentAttribute<O,E> getAttribute()
- Specified by:
getAttributein interfaceFetch<O,E>- Specified by:
getAttributein interfaceJoin<O,E>- Specified by:
getAttributein interfaceJpaJoin<O,E>- Specified by:
getAttributein interfaceJpaPluralJoin<O,Collection<E>,E>- Overrides:
getAttributein classAbstractSqmAttributeJoin<O,E>
-
on
public SqmBagJoin<O,E> on(JpaExpression<Boolean> restriction)
Description copied from interface:JpaFetchAdd a restriction to the fetch.- Specified by:
onin interfaceJpaCollectionJoin<O,E>- Specified by:
onin interfaceJpaFetch<O,E>- Specified by:
onin interfaceJpaJoin<O,E>- Specified by:
onin interfaceJpaJoinedFrom<O,E>- Specified by:
onin interfaceJpaPluralJoin<O,Collection<E>,E>- Overrides:
onin classAbstractSqmAttributeJoin<O,E>
-
on
public SqmBagJoin<O,E> on(Expression<Boolean> restriction)
- Specified by:
onin interfaceCollectionJoin<O,E>- Specified by:
onin interfaceJoin<O,E>- Specified by:
onin interfaceJpaCollectionJoin<O,E>- Specified by:
onin interfaceJpaJoin<O,E>- Specified by:
onin interfaceJpaJoinedFrom<O,E>- Specified by:
onin interfaceJpaPluralJoin<O,Collection<E>,E>- Overrides:
onin classAbstractSqmAttributeJoin<O,E>
-
on
public SqmBagJoin<O,E> on(JpaPredicate... restrictions)
Description copied from interface:JpaFetchAdd a restriction to the fetch.- Specified by:
onin interfaceJpaCollectionJoin<O,E>- Specified by:
onin interfaceJpaFetch<O,E>- Specified by:
onin interfaceJpaJoin<O,E>- Specified by:
onin interfaceJpaJoinedFrom<O,E>- Specified by:
onin interfaceJpaPluralJoin<O,Collection<E>,E>- Overrides:
onin classAbstractSqmAttributeJoin<O,E>
-
on
public SqmBagJoin<O,E> on(Predicate... restrictions)
- Specified by:
onin interfaceCollectionJoin<O,E>- Specified by:
onin interfaceJoin<O,E>- Specified by:
onin interfaceJpaCollectionJoin<O,E>- Specified by:
onin interfaceJpaJoin<O,E>- Specified by:
onin interfaceJpaJoinedFrom<O,E>- Specified by:
onin interfaceJpaPluralJoin<O,Collection<E>,E>- Overrides:
onin classAbstractSqmAttributeJoin<O,E>
-
createCorrelation
public SqmCorrelatedBagJoin<O,E> createCorrelation()
- Specified by:
createCorrelationin classAbstractSqmFrom<O,E>
-
treatAs
public <S extends E> SqmTreatedBagJoin<O,E,S> treatAs(Class<S> treatAsType)
Description copied from interface:JpaPathSupport for JPA's explicit (TREAT) down-casting.- Specified by:
treatAsin interfaceJpaCollectionJoin<O,E>- Specified by:
treatAsin interfaceJpaJoin<O,E>- Specified by:
treatAsin interfaceJpaPath<O>- Specified by:
treatAsin interfaceJpaPluralJoin<O,Collection<E>,E>- Specified by:
treatAsin interfaceSqmAttributeJoin<O,E>- Specified by:
treatAsin interfaceSqmFrom<O,E>- Specified by:
treatAsin interfaceSqmPath<O>
-
treatAs
public <S extends E> SqmTreatedBagJoin<O,E,S> treatAs(EntityDomainType<S> treatTarget)
Description copied from interface:JpaPathSupport for JPA's explicit (TREAT) down-casting.- Specified by:
treatAsin interfaceJpaCollectionJoin<O,E>- Specified by:
treatAsin interfaceJpaJoin<O,E>- Specified by:
treatAsin interfaceJpaPath<O>- Specified by:
treatAsin interfaceJpaPluralJoin<O,Collection<E>,E>- Specified by:
treatAsin interfaceSqmAttributeJoin<O,E>- Specified by:
treatAsin interfaceSqmFrom<O,E>- Specified by:
treatAsin 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:
makeCopyin interfaceSqmAttributeJoin<O,E>
-
-