Top Constructors Methods
org.hibernate.query.sqm.tree.domain

public Class SqmSetJoin<O, E>

extends AbstractSqmPluralJoin<O, Set<E>, E>
implements JpaSetJoin<O, E>
Class Inheritance
All Implemented Interfaces
org.hibernate.query.criteria.JpaSetJoin, jakarta.persistence.criteria.SetJoin, jakarta.persistence.criteria.PluralJoin, jakarta.persistence.criteria.Join, jakarta.persistence.criteria.From, jakarta.persistence.criteria.FetchParent, jakarta.persistence.criteria.Path, jakarta.persistence.criteria.Expression, jakarta.persistence.criteria.Selection, jakarta.persistence.TupleElement, org.hibernate.query.criteria.JpaPluralJoin, org.hibernate.query.criteria.JpaJoin, org.hibernate.query.criteria.JpaJoinedFrom, org.hibernate.query.criteria.JpaFrom, org.hibernate.query.criteria.JpaFetchParent, org.hibernate.query.criteria.JpaPath, org.hibernate.query.criteria.JpaExpression, org.hibernate.query.criteria.JpaSelection, org.hibernate.query.criteria.JpaTupleElement, org.hibernate.query.criteria.JpaCriteriaNode, java.io.Serializable
Known Direct Subclasses
org.hibernate.query.sqm.tree.domain.SqmTreatedSetJoin, org.hibernate.query.sqm.tree.domain.SqmCorrelatedSetJoin
Imports
java.util.Set, org.hibernate.metamodel.model.domain.EntityDomainType, .SetPersistentAttribute, org.hibernate.query.sqm.SemanticQueryWalker, .NodeBuilder, org.hibernate.spi.NavigablePath, org.hibernate.query.criteria.JpaExpression, .JpaPredicate, .JpaSetJoin, org.hibernate.query.hql.spi.SqmCreationProcessingState, org.hibernate.query.sqm.tree.SqmCopyContext, .SqmJoinType, org.hibernate.query.sqm.tree.from.SqmAttributeJoin, .SqmFrom, jakarta.persistence.criteria.Expression, .JoinType, .Predicate

Author
Steve Ebersole

Constructor Summary

AccessConstructor and Description
public
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

Modifier and TypeMethod and Description
public <X> X
public SqmSetJoin<O, E>
public SqmCorrelatedSetJoin<O, E>
public <X, Y> SqmAttributeJoin<X, Y>
fetch(String
name of the attribute for the target of the join
attributeName
)

Overrides org.hibernate.query.sqm.tree.domain.AbstractSqmFrom.fetch.

Implements org.hibernate.query.criteria.JpaFetchParent.fetch, jakarta.persistence.criteria.FetchParent.fetch, org.hibernate.query.criteria.JpaFetch.fetch.

Create a fetch join to the specified attribute using an inner join.
public SetPersistentAttribute<O, E>
public SetPersistentAttribute<O, E>
public SqmAttributeJoin<O, E>
public SqmSetJoin<O, E>
public SqmSetJoin<O, E>
on(Expression<Boolean>
a simple or compound boolean expression
restriction
)

Overrides org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin.on.

Implements org.hibernate.query.criteria.JpaSetJoin.on, org.hibernate.query.criteria.JpaJoin.on, jakarta.persistence.criteria.Join.on, org.hibernate.query.criteria.JpaJoinedFrom.on.

Modify the join to restrict the result according to the specified ON condition and return the join object.
public SqmSetJoin<O, E>
public SqmSetJoin<O, E>
on(Predicate...
zero or more restriction predicates
restrictions
)

Overrides org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin.on.

Implements org.hibernate.query.criteria.JpaSetJoin.on, org.hibernate.query.criteria.JpaJoin.on, jakarta.persistence.criteria.Join.on, org.hibernate.query.criteria.JpaJoinedFrom.on.

Modify the join to restrict the result according to the specified ON condition and return the join object.
public <S extends E> SqmTreatedSetJoin<O, E, S>
public <S extends E> SqmTreatedSetJoin<O, E, S>
public <S extends E> SqmTreatedSetJoin<O, E, S>
public <S extends E> SqmTreatedSetJoin<O, E, S>
public <S extends E> SqmTreatedSetJoin<O, E, S>
treatAs(Class<S> treatJavaType, String alias, boolean fetch)

Implements org.hibernate.query.sqm.tree.from.SqmAttributeJoin.treatAs.

public <S extends E> SqmTreatedSetJoin<O, E, S>

Constructor Detail

SqmSetJoinback to summary
public SqmSetJoin(SqmFrom<?, O> lhs, SetPersistentAttribute<O, E> pluralValuedNavigable, String alias, SqmJoinType sqmJoinType, boolean fetched, NodeBuilder nodeBuilder)
SqmSetJoinback to summary
protected SqmSetJoin(SqmFrom<?, O> lhs, NavigablePath navigablePath, SetPersistentAttribute<O, E> pluralValuedNavigable, String alias, SqmJoinType joinType, boolean fetched, NodeBuilder nodeBuilder)

Method Detail

acceptback to summary
public <X> X accept(SemanticQueryWalker<X> walker)

Overrides org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin.accept.

Implements org.hibernate.query.sqm.tree.SqmVisitableNode.accept.

Doc from org.hibernate.query.sqm.tree.SqmVisitableNode.accept.

Accept the walker per visitation

Annotations
@Override
copyback to summary
public SqmSetJoin<O, E> copy(SqmCopyContext context)

Implements org.hibernate.query.sqm.tree.from.SqmJoin.copy, org.hibernate.query.sqm.tree.from.SqmFrom.copy, org.hibernate.query.sqm.tree.domain.SqmPath.copy, org.hibernate.query.sqm.tree.expression.SqmExpression.copy, org.hibernate.query.sqm.tree.select.SqmSelectableNode.copy, org.hibernate.query.sqm.tree.SqmNode.copy.

Annotations
@Override
createCorrelationback to summary
public SqmCorrelatedSetJoin<O, E> createCorrelation()

Implements abstract org.hibernate.query.sqm.tree.domain.AbstractSqmFrom.createCorrelation.

Annotations
@Override
fetchback to summary
public <X, Y> SqmAttributeJoin<X, Y> fetch(String attributeName)

Overrides org.hibernate.query.sqm.tree.domain.AbstractSqmFrom.fetch.

Implements org.hibernate.query.criteria.JpaFetchParent.fetch, jakarta.persistence.criteria.FetchParent.fetch, org.hibernate.query.criteria.JpaFetch.fetch.

Doc from jakarta.persistence.criteria.FetchParent.fetch.

Create a fetch join to the specified attribute using an inner join.

Parameters
attributeName:String

name of the attribute for the target of the join

Returns:SqmAttributeJoin<X, Y>

the resulting fetch join

Annotations
@Override
getAttributeback to summary
public SetPersistentAttribute<O, E> getAttribute()

Overrides org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin.getAttribute.

Implements org.hibernate.query.criteria.JpaPluralJoin.getAttribute, jakarta.persistence.criteria.Join.getAttribute, org.hibernate.query.criteria.JpaJoin.getAttribute, jakarta.persistence.criteria.Fetch.getAttribute.

Doc from jakarta.persistence.criteria.Join.getAttribute.

Return the metamodel attribute corresponding to the join.

Returns:SetPersistentAttribute<O, E>

metamodel attribute corresponding to the join

Annotations
@Override
getModelback to summary
public SetPersistentAttribute<O, E> getModel()

Overrides org.hibernate.query.sqm.tree.domain.AbstractSqmPluralJoin.getModel.

Implements jakarta.persistence.criteria.Path.getModel, jakarta.persistence.criteria.PluralJoin.getModel, jakarta.persistence.criteria.SetJoin.getModel.

Doc from jakarta.persistence.criteria.SetJoin.getModel.

Return the metamodel representation for the set attribute.

Returns:SetPersistentAttribute<O, E>

metamodel type representing the Set that is the target of the join

Annotations
@Override
makeCopyback to summary
public SqmAttributeJoin<O, E> makeCopy(SqmCreationProcessingState creationProcessingState)

Implements org.hibernate.query.sqm.tree.from.SqmAttributeJoin.makeCopy.

Annotations
@Override
onback to summary
public SqmSetJoin<O, E> on(JpaExpression<Boolean> restriction)

Overrides org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin.on.

Implements org.hibernate.query.criteria.JpaSetJoin.on, org.hibernate.query.criteria.JpaJoin.on, org.hibernate.query.criteria.JpaFetch.on, org.hibernate.query.criteria.JpaJoinedFrom.on.

Doc from org.hibernate.query.criteria.JpaFetch.on.

Add a restriction to the fetch.

Annotations
@Override
onback to summary
public SqmSetJoin<O, E> on(Expression<Boolean> restriction)

Overrides org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin.on.

Implements org.hibernate.query.criteria.JpaSetJoin.on, org.hibernate.query.criteria.JpaJoin.on, jakarta.persistence.criteria.Join.on, org.hibernate.query.criteria.JpaJoinedFrom.on.

Doc from jakarta.persistence.criteria.SetJoin.on.

Modify the join to restrict the result according to the specified ON condition and return the join object. Replaces the previous ON condition, if any.

Parameters
restriction:Expression<Boolean>

a simple or compound boolean expression

Returns:SqmSetJoin<O, E>

the modified join object

Annotations
@Override
onback to summary
public SqmSetJoin<O, E> on(JpaPredicate... restrictions)

Overrides org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin.on.

Implements org.hibernate.query.criteria.JpaSetJoin.on, org.hibernate.query.criteria.JpaJoin.on, org.hibernate.query.criteria.JpaFetch.on, org.hibernate.query.criteria.JpaJoinedFrom.on.

Doc from org.hibernate.query.criteria.JpaFetch.on.

Add a restriction to the fetch.

Annotations
@Override
onback to summary
public SqmSetJoin<O, E> on(Predicate... restrictions)

Overrides org.hibernate.query.sqm.tree.domain.AbstractSqmAttributeJoin.on.

Implements org.hibernate.query.criteria.JpaSetJoin.on, org.hibernate.query.criteria.JpaJoin.on, jakarta.persistence.criteria.Join.on, org.hibernate.query.criteria.JpaJoinedFrom.on.

Doc from jakarta.persistence.criteria.SetJoin.on.

Modify the join to restrict the result according to the specified ON condition and return the join object. Replaces the previous ON condition, if any.

Parameters
restrictions:Predicate[]

zero or more restriction predicates

Returns:SqmSetJoin<O, E>

the modified join object

Annotations
@Override
treatAsback to summary
public <S extends E> SqmTreatedSetJoin<O, E, S> treatAs(Class<S> treatAsType)

Implements org.hibernate.query.criteria.JpaSetJoin.treatAs, org.hibernate.query.criteria.JpaJoin.treatAs, org.hibernate.query.sqm.tree.from.SqmAttributeJoin.treatAs, org.hibernate.query.sqm.tree.from.SqmFrom.treatAs, org.hibernate.query.criteria.JpaPath.treatAs, org.hibernate.query.sqm.tree.domain.SqmPath.treatAs.

Doc from org.hibernate.query.criteria.JpaPath.treatAs.

Support for JPA's explicit (TREAT) down-casting.

Annotations
@Override
treatAsback to summary
public <S extends E> SqmTreatedSetJoin<O, E, S> treatAs(EntityDomainType<S> treatTarget)

Implements org.hibernate.query.criteria.JpaSetJoin.treatAs, org.hibernate.query.criteria.JpaJoin.treatAs, org.hibernate.query.sqm.tree.from.SqmAttributeJoin.treatAs, org.hibernate.query.sqm.tree.from.SqmFrom.treatAs, org.hibernate.query.criteria.JpaPath.treatAs, org.hibernate.query.sqm.tree.domain.SqmPath.treatAs.

Doc from org.hibernate.query.criteria.JpaPath.treatAs.

Support for JPA's explicit (TREAT) down-casting.

Annotations
@Override
treatAsback to summary
public <S extends E> SqmTreatedSetJoin<O, E, S> treatAs(Class<S> treatJavaType, String alias)

Implements org.hibernate.query.sqm.tree.from.SqmAttributeJoin.treatAs, org.hibernate.query.sqm.tree.from.SqmFrom.treatAs.

Annotations
@Override
treatAsback to summary
public <S extends E> SqmTreatedSetJoin<O, E, S> treatAs(EntityDomainType<S> treatTarget, String alias)

Implements org.hibernate.query.sqm.tree.from.SqmAttributeJoin.treatAs, org.hibernate.query.sqm.tree.from.SqmFrom.treatAs.

Annotations
@Override
treatAsback to summary
public <S extends E> SqmTreatedSetJoin<O, E, S> treatAs(Class<S> treatJavaType, String alias, boolean fetch)

Implements org.hibernate.query.sqm.tree.from.SqmAttributeJoin.treatAs.

Annotations
@Override
treatAsback to summary
public <S extends E> SqmTreatedSetJoin<O, E, S> treatAs(EntityDomainType<S> treatTarget, String alias, boolean fetch)

Implements org.hibernate.query.sqm.tree.from.SqmAttributeJoin.treatAs.

Annotations
@Override