Class SqlAstQueryPartProcessingStateImpl
- java.lang.Object
-
- org.hibernate.query.sqm.sql.internal.SqlAstProcessingStateImpl
-
- org.hibernate.query.sqm.sql.internal.SqlAstQueryPartProcessingStateImpl
-
- All Implemented Interfaces:
BaseSqmToSqlAstConverter.SqmAliasedNodeCollector,SqlAstProcessingState,SqlAstQueryPartProcessingState,SqlExpressionResolver
public class SqlAstQueryPartProcessingStateImpl extends SqlAstProcessingStateImpl implements SqlAstQueryPartProcessingState
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.hibernate.sql.ast.spi.SqlExpressionResolver
SqlExpressionResolver.ColumnReferenceKey
-
-
Constructor Summary
Constructors Constructor Description SqlAstQueryPartProcessingStateImpl(QueryPart queryPart, SqlAstProcessingState parent, SqlAstCreationState creationState, Function<SqlExpressionResolver,SqlExpressionResolver> expressionResolverDecorator, Supplier<Clause> currentClauseAccess, boolean deduplicateSelectionItems)SqlAstQueryPartProcessingStateImpl(QueryPart queryPart, SqlAstProcessingState parent, SqlAstCreationState creationState, Supplier<Clause> currentClauseAccess, boolean deduplicateSelectionItems)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Map<SqmFrom<?,?>,Boolean>getFromRegistrations()Returns the treated SqmFroms and whether theirEntityNameUse.TREATshould be downgraded toEntityNameUse.EXPRESSION.QueryPartgetInflightQueryPart()Get the QueryPart being processed as part of this state.FetchParentgetNestingFetchParent()voidregisterFromUsage(SqmFrom<?,?> sqmFrom, boolean downgradeTreatUses)Registers that the given SqmFrom was used in an expression and whether to downgradeEntityNameUse.TREATof it.voidregisterTreatedFrom(SqmFrom<?,?> sqmFrom)Registers that the given SqmFrom is treated.SqlSelectionresolveSqlSelection(Expression expression, JavaType<?> javaType, FetchParent fetchParent, TypeConfiguration typeConfiguration)Resolve the SqlSelection for the given expressionvoidsetNestingFetchParent(FetchParent nestedParent)-
Methods inherited from class org.hibernate.query.sqm.sql.internal.SqlAstProcessingStateImpl
getParentState, getSelections, getSqlAstCreationState, getSqlExpressionResolver, next, resolveSqlExpression
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hibernate.sql.ast.spi.SqlAstProcessingState
getParentState, getSqlAstCreationState, getSqlExpressionResolver, isTopLevel
-
Methods inherited from interface org.hibernate.sql.ast.spi.SqlExpressionResolver
resolveSqlExpression
-
-
-
-
Constructor Detail
-
SqlAstQueryPartProcessingStateImpl
public SqlAstQueryPartProcessingStateImpl(QueryPart queryPart, SqlAstProcessingState parent, SqlAstCreationState creationState, Supplier<Clause> currentClauseAccess, boolean deduplicateSelectionItems)
-
SqlAstQueryPartProcessingStateImpl
public SqlAstQueryPartProcessingStateImpl(QueryPart queryPart, SqlAstProcessingState parent, SqlAstCreationState creationState, Function<SqlExpressionResolver,SqlExpressionResolver> expressionResolverDecorator, Supplier<Clause> currentClauseAccess, boolean deduplicateSelectionItems)
-
-
Method Detail
-
getNestingFetchParent
public FetchParent getNestingFetchParent()
-
setNestingFetchParent
public void setNestingFetchParent(FetchParent nestedParent)
-
getInflightQueryPart
public QueryPart getInflightQueryPart()
Description copied from interface:SqlAstQueryPartProcessingStateGet the QueryPart being processed as part of this state. It is considered in-flight as it is probably still being built.- Specified by:
getInflightQueryPartin interfaceSqlAstQueryPartProcessingState
-
registerTreatedFrom
public void registerTreatedFrom(SqmFrom<?,?> sqmFrom)
Description copied from interface:SqlAstQueryPartProcessingStateRegisters that the given SqmFrom is treated.- Specified by:
registerTreatedFromin interfaceSqlAstQueryPartProcessingState
-
registerFromUsage
public void registerFromUsage(SqmFrom<?,?> sqmFrom, boolean downgradeTreatUses)
Description copied from interface:SqlAstQueryPartProcessingStateRegisters that the given SqmFrom was used in an expression and whether to downgradeEntityNameUse.TREATof it.- Specified by:
registerFromUsagein interfaceSqlAstQueryPartProcessingState
-
getFromRegistrations
public Map<SqmFrom<?,?>,Boolean> getFromRegistrations()
Description copied from interface:SqlAstQueryPartProcessingStateReturns the treated SqmFroms and whether theirEntityNameUse.TREATshould be downgraded toEntityNameUse.EXPRESSION.- Specified by:
getFromRegistrationsin interfaceSqlAstQueryPartProcessingState
-
resolveSqlSelection
public SqlSelection resolveSqlSelection(Expression expression, JavaType<?> javaType, FetchParent fetchParent, TypeConfiguration typeConfiguration)
Description copied from interface:SqlExpressionResolverResolve the SqlSelection for the given expression- Specified by:
resolveSqlSelectionin interfaceSqlExpressionResolver- Overrides:
resolveSqlSelectionin classSqlAstProcessingStateImpl
-
-