Interface SqmAttributeJoin<O,T>
- All Superinterfaces:
Expression<T>
,Fetch<O,
,T> FetchParent<O,
,T> From<O,
,T> Join<O,
,T> JpaCriteriaNode
,JpaExpression<T>
,JpaFetch<O,
,T> JpaFetchParent<O,
,T> JpaFrom<O,
,T> JpaJoin<O,
,T> JpaPath<T>
,JpaSelection<T>
,JpaTupleElement<T>
,Path<T>
,Selection<T>
,SemanticPathPart
,Serializable
,SqmExpressibleAccessor<T>
,SqmExpression<T>
,SqmFrom<O,
,T> SqmJoin<O,
,T> SqmNode
,SqmPath<T>
,SqmSelectableNode<T>
,SqmTypedNode<T>
,SqmVisitableNode
,TupleElement<T>
- All Known Subinterfaces:
SqmTreatedAttributeJoin<L,
R, R1>
- All Known Implementing Classes:
AbstractSqmAttributeJoin
,AbstractSqmPluralJoin
,SqmBagJoin
,SqmCorrelatedBagJoin
,SqmCorrelatedListJoin
,SqmCorrelatedMapJoin
,SqmCorrelatedSetJoin
,SqmCorrelatedSingularJoin
,SqmListJoin
,SqmMapJoin
,SqmSetJoin
,SqmSingularJoin
,SqmTreatedBagJoin
,SqmTreatedListJoin
,SqmTreatedMapJoin
,SqmTreatedSetJoin
,SqmTreatedSingularJoin
Models a join based on a mapped attribute reference.
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Obtain the join predicategetLhs()
Get the left-hand side of this path - may be null, indicating a root, cross-join or entity-joinThe Navigable for an SqmFrom will always be a NavigableContainer The Navigable for an SqmFrom will always be a NavigableContainer The path source that this path refers to (and that most likely created it).boolean
Is this a fetch join?boolean
Is this an implicit join inferred from a path expression?default boolean
When applicable, whether this join should be included in an implicit select clauseon
(Expression<Boolean> restriction) on
(JpaExpression<Boolean> restriction) Add a restriction to the fetch.on
(JpaPredicate... restrictions) Add a restriction to the fetch.void
setJoinPredicate
(SqmPredicate predicate) Inject the join predicate<S extends T>
SqmTreatedAttributeJoin<O,T, S> Support for JPA's explicit (TREAT) down-casting.<S extends T>
SqmTreatedAttributeJoin<O,T, S> <S extends T>
SqmTreatedAttributeJoin<O,T, S> <S extends T>
SqmTreatedAttributeJoin<O,T, S> treatAs
(EntityDomainType<S> treatTarget) Support for JPA's explicit (TREAT) down-casting.<S extends T>
SqmTreatedAttributeJoin<O,T, S> treatAs
(EntityDomainType<S> treatTarget, String alias) <S extends T>
SqmTreatedAttributeJoin<O,T, S> treatAs
(EntityDomainType<S> treatTarget, String alias, boolean fetch) Methods inherited from interface jakarta.persistence.criteria.Fetch
getAttribute, getJoinType, getParent
Methods inherited from interface jakarta.persistence.criteria.From
getJoins, isCorrelated
Methods inherited from interface jakarta.persistence.criteria.Join
getJoinType, 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
join, join, join, join, join, join, join, join, joinArray, joinArray, joinArray, joinArray, joinArrayCollection, joinArrayCollection, joinArrayCollection, joinArrayCollection, joinLateral, joinLateral, joinLateral
Methods inherited from interface org.hibernate.query.criteria.JpaJoin
getAttribute
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, getJavaTypeName, isEnum
Methods inherited from interface jakarta.persistence.criteria.Selection
isCompoundSelection
Methods inherited from interface org.hibernate.query.sqm.tree.expression.SqmExpression
as, asBigDecimal, asBigInteger, asDouble, asFloat, asInteger, asLong, asString, cast, castAs, equalTo, equalTo, in, in, in, in, isNotNull, isNull, notEqualTo, notEqualTo, visitSubSelectableNodes
Methods inherited from interface org.hibernate.query.sqm.tree.from.SqmFrom
addSqmJoin, getCorrelationParent, getSqmJoins, getSqmTreats, hasImplicitlySelectableJoin, hasJoins, hasTreats, join, join, visitSqmJoins
Methods inherited from interface org.hibernate.query.sqm.tree.from.SqmJoin
copy, crossJoin, crossJoin, getOn, getSqmJoinType, 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
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, 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, getNodeJavaType
Methods inherited from interface org.hibernate.query.sqm.tree.SqmVisitableNode
accept, appendHqlString, toHqlString
Methods inherited from interface jakarta.persistence.TupleElement
getAlias
-
Method Details
-
getLhs
Description copied from interface:SqmPath
Get the left-hand side of this path - may be null, indicating a root, cross-join or entity-join -
isImplicitlySelectable
default boolean isImplicitlySelectable()Description copied from interface:SqmJoin
When applicable, whether this join should be included in an implicit select clause- Specified by:
isImplicitlySelectable
in interfaceSqmJoin<O,
T>
-
getReferencedPathSource
SqmPathSource<T> getReferencedPathSource()Description copied from interface:SqmFrom
The Navigable for an SqmFrom will always be a NavigableContainer The path source that this path refers to (and that most likely created it).- Specified by:
getReferencedPathSource
in interfaceSqmFrom<O,
T> - Specified by:
getReferencedPathSource
in interfaceSqmPath<O>
- See Also:
-
getJavaTypeDescriptor
- Specified by:
getJavaTypeDescriptor
in interfaceJpaTupleElement<O>
- Specified by:
getJavaTypeDescriptor
in interfaceSqmPath<O>
-
isFetched
boolean isFetched()Is this a fetch join? -
isImplicitJoin
boolean isImplicitJoin()Is this an implicit join inferred from a path expression? -
clearFetched
-
getJoinPredicate
SqmPredicate getJoinPredicate()Description copied from interface:SqmJoin
Obtain the join predicate- Specified by:
getJoinPredicate
in interfaceSqmJoin<O,
T> - Returns:
- The join predicate
-
setJoinPredicate
Description copied from interface:SqmJoin
Inject the join predicate- Specified by:
setJoinPredicate
in interfaceSqmJoin<O,
T> - Parameters:
predicate
- The join predicate
-
on
Description copied from interface:JpaFetch
Add a restriction to the fetch. -
on
-
on
Description copied from interface:JpaFetch
Add a restriction to the fetch. -
on
-
treatAs
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting. -
treatAs
-
treatAs
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting. -
treatAs
-
treatAs
<S extends T> SqmTreatedAttributeJoin<O,T, treatAsS> (EntityDomainType<S> treatTarget, String alias, boolean fetch) -
treatAs
-