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

public Class SqmMapJoin<O, K, V>

extends AbstractSqmPluralJoin<O, Map<K, V>, V>
implements JpaMapJoin<O, K, V>
Class Inheritance
All Implemented Interfaces
org.hibernate.query.criteria.JpaMapJoin, jakarta.persistence.criteria.MapJoin, 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.SqmTreatedMapJoin, org.hibernate.query.sqm.tree.domain.SqmCorrelatedMapJoin
Imports
java.util.Map, jakarta.persistence.criteria.Expression, .Predicate, org.hibernate.metamodel.model.domain.EntityDomainType, .MapPersistentAttribute, org.hibernate.query.sqm.SemanticQueryWalker, .NodeBuilder, .SqmPathSource, org.hibernate.spi.NavigablePath, org.hibernate.query.criteria.JpaExpression, .JpaMapJoin, .JpaPredicate, org.hibernate.query.hql.spi.SqmCreationProcessingState, org.hibernate.query.sqm.tree.SqmCopyContext, .SqmJoinType, org.hibernate.query.sqm.tree.from.SqmFrom

Author
Steve Ebersole

Constructor Summary

AccessConstructor and Description
public
SqmMapJoin(SqmFrom<?, O> lhs, MapPersistentAttribute<O, K, V> pluralValuedNavigable, String alias, SqmJoinType sqmJoinType, boolean fetched, NodeBuilder nodeBuilder)

protected
SqmMapJoin(SqmFrom<?, O> lhs, NavigablePath navigablePath, MapPersistentAttribute<O, K, V> pluralValuedNavigable, String alias, SqmJoinType joinType, boolean fetched, NodeBuilder nodeBuilder)

Method Summary

Modifier and TypeMethod and Description
public <X> X
public SqmMapJoin<O, K, V>
public SqmCorrelatedMapJoin<O, K, V>
public Expression<Map.Entry<K, V>>
entry()

Implements jakarta.persistence.criteria.MapJoin.entry.

Create an expression that corresponds to the map entry.
public MapPersistentAttribute<O, K, V>
public MapPersistentAttribute<O, K, V>
public SqmPath<K>
key()

Implements jakarta.persistence.criteria.MapJoin.key.

Create a path expression that corresponds to the map key.
public SqmMapJoin<O, K, V>
public SqmMapJoin<O, K, V>
public SqmMapJoin<O, K, V>
on(Expression<Boolean>
a simple or compound boolean expression
restriction
)

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

Implements org.hibernate.query.criteria.JpaMapJoin.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 SqmMapJoin<O, K, V>
public SqmMapJoin<O, K, V>
on(Predicate...
zero or more restriction predicates
restrictions
)

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

Implements org.hibernate.query.criteria.JpaMapJoin.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 V> SqmTreatedMapJoin<O, K, V, S>
public <S extends V> SqmTreatedMapJoin<O, K, V, S>
public <S extends V> SqmTreatedMapJoin<O, K, V, S>
public <S extends V> SqmTreatedMapJoin<O, K, V, S>
public <S extends V> SqmTreatedMapJoin<O, K, V, S>
treatAs(Class<S> treatJavaType, String alias, boolean fetch)

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

public <S extends V> SqmTreatedMapJoin<O, K, V, S>
public SqmPath<V>
value()

Implements jakarta.persistence.criteria.MapJoin.value.

Create a path expression that corresponds to the map value.

Constructor Detail

SqmMapJoinback to summary
public SqmMapJoin(SqmFrom<?, O> lhs, MapPersistentAttribute<O, K, V> pluralValuedNavigable, String alias, SqmJoinType sqmJoinType, boolean fetched, NodeBuilder nodeBuilder)
SqmMapJoinback to summary
protected SqmMapJoin(SqmFrom<?, O> lhs, NavigablePath navigablePath, MapPersistentAttribute<O, K, V> 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 SqmMapJoin<O, K, V> 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 SqmCorrelatedMapJoin<O, K, V> createCorrelation()

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

Annotations
@Override
entryback to summary
public Expression<Map.Entry<K, V>> entry()

Implements jakarta.persistence.criteria.MapJoin.entry.

Doc from jakarta.persistence.criteria.MapJoin.entry.

Create an expression that corresponds to the map entry.

Returns:Expression<Map.Entry<K, V>>

expression corresponding to the map entry

Annotations
@Override
getAttributeback to summary
public MapPersistentAttribute<O, K, V> 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:MapPersistentAttribute<O, K, V>

metamodel attribute corresponding to the join

Annotations
@Override
getModelback to summary
public MapPersistentAttribute<O, K, V> getModel()

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

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

Doc from jakarta.persistence.criteria.MapJoin.getModel.

Return the metamodel representation for the map attribute.

Returns:MapPersistentAttribute<O, K, V>

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

Annotations
@Override
keyback to summary
public SqmPath<K> key()

Implements jakarta.persistence.criteria.MapJoin.key.

Doc from jakarta.persistence.criteria.MapJoin.key.

Create a path expression that corresponds to the map key.

Returns:SqmPath<K>

path corresponding to map key

Annotations
@Override
makeCopyback to summary
public SqmMapJoin<O, K, V> makeCopy(SqmCreationProcessingState creationProcessingState)

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

Annotations
@Override
onback to summary
public SqmMapJoin<O, K, V> on(JpaExpression<Boolean> restriction)

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

Implements org.hibernate.query.criteria.JpaMapJoin.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 SqmMapJoin<O, K, V> on(Expression<Boolean> restriction)

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

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

Doc from jakarta.persistence.criteria.MapJoin.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:SqmMapJoin<O, K, V>

the modified join object

Annotations
@Override
onback to summary
public SqmMapJoin<O, K, V> on(JpaPredicate... restrictions)

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

Implements org.hibernate.query.criteria.JpaMapJoin.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 SqmMapJoin<O, K, V> on(Predicate... restrictions)

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

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

Doc from jakarta.persistence.criteria.MapJoin.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:SqmMapJoin<O, K, V>

the modified join object

Annotations
@Override
treatAsback to summary
public <S extends V> SqmTreatedMapJoin<O, K, V, S> treatAs(Class<S> treatJavaType)

Implements org.hibernate.query.criteria.JpaMapJoin.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 V> SqmTreatedMapJoin<O, K, V, S> treatAs(EntityDomainType<S> treatTarget)

Implements org.hibernate.query.criteria.JpaMapJoin.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 V> SqmTreatedMapJoin<O, K, V, 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 V> SqmTreatedMapJoin<O, K, V, 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 V> SqmTreatedMapJoin<O, K, V, 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 V> SqmTreatedMapJoin<O, K, V, S> treatAs(EntityDomainType<S> treatTarget, String alias, boolean fetch)

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

Annotations
@Override
valueback to summary
public SqmPath<V> value()

Implements jakarta.persistence.criteria.MapJoin.value.

Doc from jakarta.persistence.criteria.MapJoin.value.

Create a path expression that corresponds to the map value. This method is for stylistic use only: it just returns this.

Returns:SqmPath<V>

path corresponding to the map value

Annotations
@Override