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>
,JpaJoinedFrom<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>
,SqmQualifiedJoin<O,T>
,SqmSelectableNode<T>
,SqmTypedNode<T>
,SqmVisitableNode
,TupleElement<T>
- All Known Implementing Classes:
AbstractSqmAttributeJoin
,AbstractSqmPluralJoin
,SqmBagJoin
,SqmCorrelatedBagJoin
,SqmCorrelatedListJoin
,SqmCorrelatedMapJoin
,SqmCorrelatedSetJoin
,SqmCorrelatedSingularJoin
,SqmListJoin
,SqmMapJoin
,SqmSetJoin
,SqmSingularJoin
,SqmTreatedBagJoin
,SqmTreatedListJoin
,SqmTreatedMapJoin
,SqmTreatedSetJoin
,SqmTreatedSingularJoin
public interface SqmAttributeJoin<O,T> extends SqmQualifiedJoin<O,T>, JpaFetch<O,T>, JpaJoin<O,T>
Models a join based on a mapped attribute reference.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description void
clearFetched()
JavaType<T>
getJavaTypeDescriptor()
SqmPredicate
getJoinPredicate()
Obtain the join predicateSqmFrom<?,O>
getLhs()
Get the left-hand side of this path - may be null, indicating a root, cross-join or entity-joinSqmPathSource<T>
getReferencedPathSource()
The 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
isFetched()
default boolean
isImplicitlySelectable()
When applicable, whether this join should be included in an implicit select clause@Remove SqmAttributeJoin
makeCopy(SqmCreationProcessingState creationProcessingState)
Deprecated.void
setJoinPredicate(SqmPredicate predicate)
Inject the join predicate<S extends T>
SqmAttributeJoin<O,S>treatAs(Class<S> treatJavaType)
Support for JPA's explicit (TREAT) down-casting.<S extends T>
SqmAttributeJoin<O,S>treatAs(Class<S> treatJavaType, String alias)
<S extends T>
SqmAttributeJoin<O,S>treatAs(Class<S> treatJavaType, String alias, boolean fetch)
<S extends T>
SqmAttributeJoin<O,S>treatAs(EntityDomainType<S> treatTarget)
Support for JPA's explicit (TREAT) down-casting.<S extends T>
SqmAttributeJoin<O,S>treatAs(EntityDomainType<S> treatJavaType, String alias)
<S extends T>
SqmAttributeJoin<O,S>treatAs(EntityDomainType<S> treatJavaType, 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, getOn, getParent
-
Methods inherited from interface org.hibernate.query.criteria.JpaFetch
fetch, fetch, fetch, fetch, fetch, fetch, getFetches, on, on
-
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, 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, 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
copy, 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, getNodeJavaType
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmVisitableNode
accept, appendHqlString, toHqlString
-
Methods inherited from interface jakarta.persistence.TupleElement
getAlias
-
-
-
-
Method Detail
-
getLhs
SqmFrom<?,O> 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:
SqmPathSource.createSqmPath(org.hibernate.query.sqm.tree.domain.SqmPath<?>, org.hibernate.query.sqm.SqmPathSource<?>)
-
getJavaTypeDescriptor
JavaType<T> getJavaTypeDescriptor()
- Specified by:
getJavaTypeDescriptor
in interfaceJpaTupleElement<O>
- Specified by:
getJavaTypeDescriptor
in interfaceSqmPath<O>
-
isFetched
boolean isFetched()
-
clearFetched
@Internal void clearFetched()
-
getJoinPredicate
SqmPredicate getJoinPredicate()
Description copied from interface:SqmQualifiedJoin
Obtain the join predicate- Specified by:
getJoinPredicate
in interfaceSqmQualifiedJoin<O,T>
- Returns:
- The join predicate
-
setJoinPredicate
void setJoinPredicate(SqmPredicate predicate)
Description copied from interface:SqmQualifiedJoin
Inject the join predicate- Specified by:
setJoinPredicate
in interfaceSqmQualifiedJoin<O,T>
- Parameters:
predicate
- The join predicate
-
treatAs
<S extends T> SqmAttributeJoin<O,S> treatAs(Class<S> treatJavaType)
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting.
-
treatAs
<S extends T> SqmAttributeJoin<O,S> treatAs(EntityDomainType<S> treatTarget)
Description copied from interface:JpaPath
Support for JPA's explicit (TREAT) down-casting.
-
treatAs
<S extends T> SqmAttributeJoin<O,S> treatAs(Class<S> treatJavaType, String alias)
-
treatAs
<S extends T> SqmAttributeJoin<O,S> treatAs(EntityDomainType<S> treatJavaType, String alias)
-
treatAs
<S extends T> SqmAttributeJoin<O,S> treatAs(Class<S> treatJavaType, String alias, boolean fetch)
-
treatAs
<S extends T> SqmAttributeJoin<O,S> treatAs(EntityDomainType<S> treatJavaType, String alias, boolean fetch)
-
makeCopy
@Deprecated @Remove @Remove SqmAttributeJoin makeCopy(SqmCreationProcessingState creationProcessingState)
Deprecated.
-
-