Top Description Inners Fields Constructors Methods
org.hibernate.query.hql.internal

public Class QualifiedJoinPathConsumer

extends Object
implements DotIdentifierConsumer
Class Inheritance
All Implemented Interfaces
org.hibernate.query.hql.spi.DotIdentifierConsumer
Imports
org.hibernate.metamodel.model.domain.EntityDomainType, org.hibernate.query.PathException, .SemanticException, org.hibernate.query.hql.spi.DotIdentifierConsumer, .SemanticPathPart, .SqmCreationProcessingState, .SqmCreationState, .SqmPathRegistry, org.hibernate.query.sqm.SqmJoinable, .SqmPathSource, org.hibernate.query.sqm.spi.SqmCreationHelper, org.hibernate.query.sqm.tree.SqmJoinType, org.hibernate.query.sqm.tree.cte.SqmCteStatement, org.hibernate.query.sqm.tree.domain.SqmPath, .SqmPolymorphicRootDescriptor, org.hibernate.query.sqm.tree.from.SqmAttributeJoin, .SqmCteJoin, .SqmEntityJoin, .SqmFrom, .SqmJoin, .SqmRoot, org.jboss.logging.Logger

Specialized "intermediate" SemanticPathPart for processing domain model paths.
Author
Steve Ebersole

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
private static interface
private static class

Field Summary

Modifier and TypeField and Description
private final String
private final SqmCreationState
private QualifiedJoinPathConsumer.ConsumerDelegate
private final boolean
private final SqmJoinType
private static final Logger
private boolean
private final SqmRoot<?>

Constructor Summary

AccessConstructor and Description
public
QualifiedJoinPathConsumer(SqmRoot<?> sqmRoot, SqmJoinType joinType, boolean fetch, String alias, SqmCreationState creationState)

public
QualifiedJoinPathConsumer(SqmFrom<?, ?> sqmFrom, SqmJoinType joinType, boolean fetch, String alias, SqmCreationState creationState)

Method Summary

Modifier and TypeMethod and Description
public void
consumeIdentifier(String
The current part of the path being processed
identifier
,
boolean
Is this the base of the path (the first token)?
isBase
,
boolean
Is this the terminus of the path (last token)?
isTerminal
)

Implements org.hibernate.query.hql.spi.DotIdentifierConsumer.consumeIdentifier.

Responsible for consuming each part of the path.
public void
consumeTreat(String
The treat target entity name
entityName
,
boolean
Is this the terminus of the path (last token)?
isTerminal
)

Implements org.hibernate.query.hql.spi.DotIdentifierConsumer.consumeTreat.

Responsible for consuming each part of the path.
private static <U> SqmFrom<?, ?>
createJoin(SqmFrom<?, U> lhs, String name, SqmJoinType joinType, String alias, boolean fetch, boolean isTerminal, boolean allowReuse, SqmCreationState creationState)

private static <U, V> SqmFrom<?, ?>
createJoin(SqmFrom<?, U> lhs, SqmJoinType joinType, String alias, boolean fetch, boolean isTerminal, boolean allowReuse, SqmCreationState creationState, SqmJoinable<U, V> joinSource)

public SemanticPathPart
public boolean
private QualifiedJoinPathConsumer.AttributeJoinDelegate
resolveAlias(String identifier, boolean isTerminal, SqmFrom<?, Object> pathRootByAlias)

private QualifiedJoinPathConsumer.ConsumerDelegate
resolveBase(String identifier, boolean isTerminal)

private QualifiedJoinPathConsumer.ExpectingEntityJoinDelegate
resolveEntityName(String identifier, boolean isTerminal)

private QualifiedJoinPathConsumer.AttributeJoinDelegate
resolveExposed(String identifier, boolean isTerminal, SqmFrom<?, ?> pathRoot)

public void
setNested(boolean nested)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

aliasback to summary
private final String alias
creationStateback to summary
private final SqmCreationState creationState
delegateback to summary
private QualifiedJoinPathConsumer.ConsumerDelegate delegate
fetchback to summary
private final boolean fetch
joinTypeback to summary
private final SqmJoinType joinType
logback to summary
private static final Logger log
nestedback to summary
private boolean nested
sqmRootback to summary
private final SqmRoot<?> sqmRoot

Constructor Detail

QualifiedJoinPathConsumerback to summary
public QualifiedJoinPathConsumer(SqmRoot<?> sqmRoot, SqmJoinType joinType, boolean fetch, String alias, SqmCreationState creationState)
QualifiedJoinPathConsumerback to summary
public QualifiedJoinPathConsumer(SqmFrom<?, ?> sqmFrom, SqmJoinType joinType, boolean fetch, String alias, SqmCreationState creationState)

Method Detail

consumeIdentifierback to summary
public void consumeIdentifier(String identifier, boolean isBase, boolean isTerminal)

Implements org.hibernate.query.hql.spi.DotIdentifierConsumer.consumeIdentifier.

Doc from org.hibernate.query.hql.spi.DotIdentifierConsumer.consumeIdentifier.

Responsible for consuming each part of the path. Called sequentially for each part.

Parameters
identifier:String

The current part of the path being processed

isBase:boolean

Is this the base of the path (the first token)?

isTerminal:boolean

Is this the terminus of the path (last token)?

Annotations
@Override
consumeTreatback to summary
public void consumeTreat(String entityName, boolean isTerminal)

Implements org.hibernate.query.hql.spi.DotIdentifierConsumer.consumeTreat.

Doc from org.hibernate.query.hql.spi.DotIdentifierConsumer.consumeTreat.

Responsible for consuming each part of the path. Called sequentially for each part.

Parameters
entityName:String

The treat target entity name

isTerminal:boolean

Is this the terminus of the path (last token)?

Annotations
@Override
createJoinback to summary
private static <U> SqmFrom<?, ?> createJoin(SqmFrom<?, U> lhs, String name, SqmJoinType joinType, String alias, boolean fetch, boolean isTerminal, boolean allowReuse, SqmCreationState creationState)
createJoinback to summary
private static <U, V> SqmFrom<?, ?> createJoin(SqmFrom<?, U> lhs, SqmJoinType joinType, String alias, boolean fetch, boolean isTerminal, boolean allowReuse, SqmCreationState creationState, SqmJoinable<U, V> joinSource)
getConsumedPartback to summary
public SemanticPathPart getConsumedPart()

Implements org.hibernate.query.hql.spi.DotIdentifierConsumer.getConsumedPart.

Doc from org.hibernate.query.hql.spi.DotIdentifierConsumer.getConsumedPart.

Get the currently consumed part. Generally called after the whole path has been processed at which point this will return the final outcome of the consumption

Annotations
@Override
isNestedback to summary
public boolean isNested()
resolveAliasback to summary
private QualifiedJoinPathConsumer.AttributeJoinDelegate resolveAlias(String identifier, boolean isTerminal, SqmFrom<?, Object> pathRootByAlias)
resolveBaseback to summary
private QualifiedJoinPathConsumer.ConsumerDelegate resolveBase(String identifier, boolean isTerminal)
resolveEntityNameback to summary
private QualifiedJoinPathConsumer.ExpectingEntityJoinDelegate resolveEntityName(String identifier, boolean isTerminal)
resolveExposedback to summary
private QualifiedJoinPathConsumer.AttributeJoinDelegate resolveExposed(String identifier, boolean isTerminal, SqmFrom<?, ?> pathRoot)
setNestedback to summary
public void setNested(boolean nested)
org.hibernate.query.hql.internal back to summary

private Class QualifiedJoinPathConsumer.AttributeJoinDelegate

extends Object
implements ConsumerDelegate
Class Inheritance
  • java.lang.Object
  • org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.AttributeJoinDelegate
All Implemented Interfaces
org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.ConsumerDelegate

Field Summary

Modifier and TypeField and Description
private final String
private final SqmCreationState
private SqmFrom<?, ?>
private final boolean
private final SqmJoinType

Constructor Summary

AccessConstructor and Description
private
AttributeJoinDelegate(SqmFrom<?, ?> base, SqmJoinType joinType, boolean fetch, String alias, SqmCreationState creationState)

Method Summary

Modifier and TypeMethod and Description
public void
public void
public SemanticPathPart
private <T> EntityDomainType<T>
treatTarget(String entityName)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

aliasback to summary
private final String alias
creationStateback to summary
private final SqmCreationState creationState
currentPathback to summary
private SqmFrom<?, ?> currentPath
fetchback to summary
private final boolean fetch
joinTypeback to summary
private final SqmJoinType joinType

Constructor Detail

AttributeJoinDelegateback to summary
private AttributeJoinDelegate(SqmFrom<?, ?> base, SqmJoinType joinType, boolean fetch, String alias, SqmCreationState creationState)

Method Detail

consumeIdentifierback to summary
public void consumeIdentifier(String identifier, boolean isTerminal, boolean allowReuse)

Implements org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.ConsumerDelegate.consumeIdentifier.

Annotations
@Override
consumeTreatback to summary
public void consumeTreat(String entityName, boolean isTerminal)

Implements org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.ConsumerDelegate.consumeTreat.

Annotations
@Override
getConsumedPartback to summary
public SemanticPathPart getConsumedPart()

Implements org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.ConsumerDelegate.getConsumedPart.

Annotations
@Override
treatTargetback to summary
private <T> EntityDomainType<T> treatTarget(String entityName)
org.hibernate.query.hql.internal back to summary

private Interface QualifiedJoinPathConsumer.ConsumerDelegate

Known Direct Implementers
org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.AttributeJoinDelegate, org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.ExpectingEntityJoinDelegate

Method Summary

Modifier and TypeMethod and Description
public void
consumeIdentifier(String identifier, boolean isTerminal, boolean allowReuse)

public void
consumeTreat(String entityName, boolean isTerminal)

public SemanticPathPart

Method Detail

consumeIdentifierback to summary
public void consumeIdentifier(String identifier, boolean isTerminal, boolean allowReuse)
consumeTreatback to summary
public void consumeTreat(String entityName, boolean isTerminal)
getConsumedPartback to summary
public SemanticPathPart getConsumedPart()
org.hibernate.query.hql.internal back to summary

private Class QualifiedJoinPathConsumer.ExpectingEntityJoinDelegate

extends Object
implements ConsumerDelegate
Class Inheritance
  • java.lang.Object
  • org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.ExpectingEntityJoinDelegate
All Implemented Interfaces
org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.ConsumerDelegate

Field Summary

Modifier and TypeField and Description
private final String
private final SqmCreationState
private final boolean
private SqmPath<?>
private final SqmJoinType
private final StringBuilder
private final SqmRoot<?>

Constructor Summary

AccessConstructor and Description
public
ExpectingEntityJoinDelegate(String identifier, boolean isTerminal, SqmRoot<?> sqmRoot, SqmJoinType joinType, String alias, boolean fetch, SqmCreationState creationState)

Method Summary

Modifier and TypeMethod and Description
public void
public void
public SemanticPathPart
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

aliasback to summary
private final String alias
creationStateback to summary
private final SqmCreationState creationState
fetchback to summary
private final boolean fetch
joinback to summary
private SqmPath<?> join
joinTypeback to summary
private final SqmJoinType joinType
pathback to summary
private final StringBuilder path
sqmRootback to summary
private final SqmRoot<?> sqmRoot

Constructor Detail

ExpectingEntityJoinDelegateback to summary
public ExpectingEntityJoinDelegate(String identifier, boolean isTerminal, SqmRoot<?> sqmRoot, SqmJoinType joinType, String alias, boolean fetch, SqmCreationState creationState)

Method Detail

consumeIdentifierback to summary
public void consumeIdentifier(String identifier, boolean isTerminal, boolean allowReuse)

Implements org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.ConsumerDelegate.consumeIdentifier.

Annotations
@Override
consumeTreatback to summary
public void consumeTreat(String entityName, boolean isTerminal)

Implements org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.ConsumerDelegate.consumeTreat.

Annotations
@Override
getConsumedPartback to summary
public SemanticPathPart getConsumedPart()

Implements org.hibernate.query.hql.internal.QualifiedJoinPathConsumer.ConsumerDelegate.getConsumedPart.

Annotations
@Override