Package org.hibernate.query.sqm.sql
Class BaseSqmToSqlAstConverter<T extends Statement>
- java.lang.Object
-
- org.hibernate.query.sqm.spi.BaseSemanticQueryWalker
-
- org.hibernate.query.sqm.sql.BaseSqmToSqlAstConverter<T>
-
- All Implemented Interfaces:
SemanticQueryWalker<Object>
,JdbcParameterBySqmParameterAccess
,SqmToSqlAstConverter
,SqmTranslator<T>
,FromClauseAccess
,SqlAstCreationState
,DomainResultCreationState
,JdbcTypeIndicators
- Direct Known Subclasses:
MultiTableSqmMutationConverter
,StandardSqmTranslator
,SybaseSqmToSqlAstConverter
public abstract class BaseSqmToSqlAstConverter<T extends Statement> extends BaseSemanticQueryWalker implements SqmTranslator<T>, DomainResultCreationState, JdbcTypeIndicators
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
BaseSqmToSqlAstConverter.AdditionalInsertValues
protected static class
BaseSqmToSqlAstConverter.DelegatingSqmAliasedNodeCollector
static interface
BaseSqmToSqlAstConverter.SqmAliasedNodeCollector
protected static class
BaseSqmToSqlAstConverter.SqmAliasedNodePositionTracker
-
Field Summary
Fields Modifier and Type Field Description protected Predicate
additionalRestrictions
-
Fields inherited from interface org.hibernate.type.descriptor.jdbc.JdbcTypeIndicators
NO_COLUMN_LENGTH, NO_COLUMN_PRECISION, NO_COLUMN_SCALE
-
-
Constructor Summary
Constructors Constructor Description BaseSqmToSqlAstConverter(SqlAstCreationContext creationContext, SqmStatement<?> statement, QueryOptions queryOptions, LoadQueryInfluencers loadQueryInfluencers, DomainParameterXref domainParameterXref, QueryParameterBindings domainParameterBindings, boolean deduplicateSelectionItems)
-
Method Summary
-
Methods inherited from class org.hibernate.query.sqm.spi.BaseSemanticQueryWalker
consumeAttributeJoin, consumeCrossJoin, consumeCteJoin, consumeDerivedJoin, consumeEntityJoin, consumeExplicitJoin, consumeExplicitJoins, consumePluralPartJoin, consumeTreat, visitAssignment, visitJpaCompoundSelection, visitSelectQuery, visitWindow
-
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.results.graph.DomainResultCreationState
forceIdentifierSelection, getSqlAliasBaseManager, visitDiscriminatorFetch, visitEmbeddableDiscriminatorFetch, visitNestedFetches
-
Methods inherited from interface org.hibernate.sql.ast.spi.FromClauseAccess
findTableGroupForGetOrCreate, getTableGroup, resolveTableGroup
-
Methods inherited from interface org.hibernate.type.descriptor.jdbc.JdbcTypeIndicators
getColumnLength, getColumnPrecision, getColumnScale, getDefaultTimeZoneStorageStrategy, getDefaultZonedTimeSqlType, getDefaultZonedTimestampSqlType, getEnumeratedType, getExplicitJdbcTypeCode, getJdbcType, getPreferredSqlTypeCodeForArray, getPreferredSqlTypeCodeForInstant, getTemporalPrecision, isLob, isNationalized, isPreferJavaTimeJdbcTypesEnabled, isPreferNativeEnumTypesEnabled, resolveJdbcTypeCode
-
Methods inherited from interface org.hibernate.query.sqm.SemanticQueryWalker
visitAssignment, visitBagJoin, visitCorrelatedBagJoin, visitCorrelatedCrossJoin, visitCorrelatedEntityJoin, visitCorrelatedListJoin, visitCorrelatedMapJoin, visitCorrelatedPluralPartJoin, visitCorrelatedRoot, visitCorrelatedRootJoin, visitCorrelatedSetJoin, visitCorrelatedSingularJoin, visitJpaCompoundSelection, visitListJoin, visitMapJoin, visitSetJoin, visitSingularJoin, visitWindow
-
-
-
-
Field Detail
-
additionalRestrictions
protected Predicate additionalRestrictions
-
-
Constructor Detail
-
BaseSqmToSqlAstConverter
public BaseSqmToSqlAstConverter(SqlAstCreationContext creationContext, SqmStatement<?> statement, QueryOptions queryOptions, LoadQueryInfluencers loadQueryInfluencers, DomainParameterXref domainParameterXref, QueryParameterBindings domainParameterBindings, boolean deduplicateSelectionItems)
-
-
Method Detail
-
getSqmParameterMappingModelExpressibleResolutions
public Map<SqmParameter<?>,MappingModelExpressible<?>> getSqmParameterMappingModelExpressibleResolutions()
-
getProcessingStateStack
protected Stack<SqlAstProcessingState> getProcessingStateStack()
-
pushProcessingState
protected void pushProcessingState(SqlAstProcessingState processingState)
-
pushProcessingState
protected void pushProcessingState(SqlAstProcessingState processingState, FromClauseIndex fromClauseIndex)
-
popProcessingStateStack
protected void popProcessingStateStack()
-
currentSqlSelectionCollector
protected BaseSqmToSqlAstConverter.SqmAliasedNodeCollector currentSqlSelectionCollector()
-
getStatement
protected SqmStatement<?> getStatement()
-
getDialect
public Dialect getDialect()
- Specified by:
getDialect
in interfaceJdbcTypeIndicators
-
getTypeConfiguration
public TypeConfiguration getTypeConfiguration()
Description copied from interface:JdbcTypeIndicators
Provides access to theTypeConfiguration
for access to various type system related registries.- Specified by:
getTypeConfiguration
in interfaceJdbcTypeIndicators
-
getPreferredSqlTypeCodeForBoolean
public int getPreferredSqlTypeCodeForBoolean()
Description copied from interface:JdbcTypeIndicators
When mapping a boolean type to the database what is the preferred SQL type code to use?Returns a key into the
JdbcTypeRegistry
.- Specified by:
getPreferredSqlTypeCodeForBoolean
in interfaceJdbcTypeIndicators
- See Also:
MappingSettings.PREFERRED_BOOLEAN_JDBC_TYPE
,Dialect.getPreferredSqlTypeCodeForBoolean()
-
getPreferredSqlTypeCodeForDuration
public int getPreferredSqlTypeCodeForDuration()
Description copied from interface:JdbcTypeIndicators
When mapping a duration type to the database what is the preferred SQL type code to use?Returns a key into the
JdbcTypeRegistry
.- Specified by:
getPreferredSqlTypeCodeForDuration
in interfaceJdbcTypeIndicators
- See Also:
MappingSettings.PREFERRED_DURATION_JDBC_TYPE
-
getPreferredSqlTypeCodeForUuid
public int getPreferredSqlTypeCodeForUuid()
Description copied from interface:JdbcTypeIndicators
When mapping an uuid type to the database what is the preferred SQL type code to use?Returns a key into the
JdbcTypeRegistry
.- Specified by:
getPreferredSqlTypeCodeForUuid
in interfaceJdbcTypeIndicators
- See Also:
MappingSettings.PREFERRED_UUID_JDBC_TYPE
-
findTableGroup
public TableGroup findTableGroup(NavigablePath navigablePath)
Description copied from interface:FromClauseAccess
Find a TableGroup by the NavigablePath it is registered under, and if not found on the current from clause level, ask the parent. Returnsnull
if no TableGroup is registered under that NavigablePath- Specified by:
findTableGroup
in interfaceFromClauseAccess
-
findTableGroupOnCurrentFromClause
public TableGroup findTableGroupOnCurrentFromClause(NavigablePath navigablePath)
Description copied from interface:FromClauseAccess
Find a TableGroup in this from clause without consulting parents by the NavigablePath it is registered under. Returnsnull
if no TableGroup is registered under that NavigablePath- Specified by:
findTableGroupOnCurrentFromClause
in interfaceFromClauseAccess
-
resolveModelPart
public ModelPart resolveModelPart(NavigablePath navigablePath)
Description copied from interface:DomainResultCreationState
Resolve the ModelPart associated with a given NavigablePath. More specific ModelParts should be preferred - e.g. the SingularAssociationAttributeMapping rather than just the EntityTypeMapping for the associated type- Specified by:
resolveModelPart
in interfaceDomainResultCreationState
-
registerTableGroup
public void registerTableGroup(NavigablePath navigablePath, TableGroup tableGroup)
Description copied from interface:FromClauseAccess
Register a TableGroup under the given `navigablePath`. Logs a message if this registration over-writes an existing one.- Specified by:
registerTableGroup
in interfaceFromClauseAccess
-
getCreationContext
public SqlAstCreationContext getCreationContext()
- Specified by:
getCreationContext
in interfaceSqlAstCreationState
-
getCurrentProcessingState
public SqlAstProcessingState getCurrentProcessingState()
- Specified by:
getCurrentProcessingState
in interfaceSqlAstCreationState
-
getSqlExpressionResolver
public SqlExpressionResolver getSqlExpressionResolver()
- Specified by:
getSqlExpressionResolver
in interfaceSqlAstCreationState
-
getSqlAliasBaseGenerator
public SqlAliasBaseGenerator getSqlAliasBaseGenerator()
- Specified by:
getSqlAliasBaseGenerator
in interfaceSqlAstCreationState
-
registerLockMode
public void registerLockMode(String identificationVariable, LockMode explicitLockMode)
- Specified by:
registerLockMode
in interfaceSqlAstCreationState
-
getQueryOptions
public QueryOptions getQueryOptions()
-
getLoadQueryInfluencers
public LoadQueryInfluencers getLoadQueryInfluencers()
- Specified by:
getLoadQueryInfluencers
in interfaceSqlAstCreationState
-
applyOnlyLoadByKeyFilters
public boolean applyOnlyLoadByKeyFilters()
- Specified by:
applyOnlyLoadByKeyFilters
in interfaceSqlAstCreationState
-
getFromClauseIndex
public FromClauseIndex getFromClauseIndex()
-
getFromClauseAccess
public FromClauseAccess getFromClauseAccess()
- Specified by:
getFromClauseAccess
in interfaceSqlAstCreationState
-
getCurrentClauseStack
public Stack<Clause> getCurrentClauseStack()
- Specified by:
getCurrentClauseStack
in interfaceSqmToSqlAstConverter
-
getCurrentSqmQueryPart
public SqmQueryPart<?> getCurrentSqmQueryPart()
- Specified by:
getCurrentSqmQueryPart
in interfaceSqmToSqlAstConverter
-
translate
public SqmTranslation<T> translate()
- Specified by:
translate
in interfaceSqmTranslator<T extends Statement>
-
visitUpdateStatement
public UpdateStatement visitUpdateStatement(SqmUpdateStatement<?> sqmStatement)
- Specified by:
visitUpdateStatement
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitUpdateStatement
in classBaseSemanticQueryWalker
-
addVersionedAssignment
public void addVersionedAssignment(Consumer<Assignment> assignmentConsumer, SqmUpdateStatement<?> sqmStatement)
-
visitSetClause
public List<Assignment> visitSetClause(SqmSetClause setClause)
- Specified by:
visitSetClause
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitSetClause
in classBaseSemanticQueryWalker
-
visitDeleteStatement
public DeleteStatement visitDeleteStatement(SqmDeleteStatement<?> statement)
- Specified by:
visitDeleteStatement
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitDeleteStatement
in classBaseSemanticQueryWalker
-
visitInsertSelectStatement
public InsertStatement visitInsertSelectStatement(SqmInsertSelectStatement<?> sqmStatement)
- Specified by:
visitInsertSelectStatement
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitInsertSelectStatement
in classBaseSemanticQueryWalker
-
visitInsertValuesStatement
public InsertStatement visitInsertValuesStatement(SqmInsertValuesStatement<?> sqmStatement)
- Specified by:
visitInsertValuesStatement
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitInsertValuesStatement
in classBaseSemanticQueryWalker
-
visitConflictClause
public ConflictClause visitConflictClause(SqmConflictClause<?> sqmConflictClause)
- Specified by:
visitConflictClause
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitConflictClause
in classBaseSemanticQueryWalker
-
visitInsertionTargetPaths
public BaseSqmToSqlAstConverter.AdditionalInsertValues visitInsertionTargetPaths(BiConsumer<Assignable,List<ColumnReference>> targetColumnReferenceConsumer, SqmInsertStatement<?> sqmStatement, EntityPersister entityDescriptor, TableGroup rootTableGroup)
-
visitValues
public Values visitValues(SqmValues sqmValues)
- Specified by:
visitValues
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitValues
in classBaseSemanticQueryWalker
-
visitSelectStatement
public SelectStatement visitSelectStatement(SqmSelectStatement<?> statement)
- Specified by:
visitSelectStatement
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitSelectStatement
in classBaseSemanticQueryWalker
-
visitDynamicInstantiation
public DynamicInstantiation<?> visitDynamicInstantiation(SqmDynamicInstantiation<?> sqmDynamicInstantiation)
- Specified by:
visitDynamicInstantiation
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitDynamicInstantiation
in classBaseSemanticQueryWalker
-
visitCteStatement
public CteStatement visitCteStatement(SqmCteStatement<?> sqmCteStatement)
- Specified by:
visitCteStatement
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitCteStatement
in classBaseSemanticQueryWalker
-
visitSearchBySpecifications
protected List<SearchClauseSpecification> visitSearchBySpecifications(CteTable cteTable, List<JpaSearchOrder> searchBySpecifications)
-
createCteColumn
protected CteColumn createCteColumn(String cteColumn, JdbcMapping jdbcMapping)
-
forEachCteColumn
protected void forEachCteColumn(CteTable cteTable, SqmCteTableColumn cteColumn, Consumer<CteColumn> consumer)
-
visitCycleColumns
protected List<CteColumn> visitCycleColumns(CteTable cteTable, List<JpaCteCriteriaAttribute> cycleColumns)
-
visitCteContainer
public CteContainer visitCteContainer(SqmCteContainer consumer)
- Specified by:
visitCteContainer
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitCteContainer
in classBaseSemanticQueryWalker
-
visitQueryPart
public QueryPart visitQueryPart(SqmQueryPart<?> queryPart)
- Overrides:
visitQueryPart
in classBaseSemanticQueryWalker
-
visitQueryGroup
public QueryGroup visitQueryGroup(SqmQueryGroup<?> queryGroup)
- Specified by:
visitQueryGroup
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitQueryGroup
in classBaseSemanticQueryWalker
-
visitQuerySpec
public QuerySpec visitQuerySpec(SqmQuerySpec<?> sqmQuerySpec)
- Specified by:
visitQuerySpec
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitQuerySpec
in classBaseSemanticQueryWalker
-
visitOrderByOffsetAndFetch
protected void visitOrderByOffsetAndFetch(SqmQueryPart<?> sqmQueryPart, QueryPart sqlQueryPart)
-
visitSelectClause
public SelectClause visitSelectClause(SqmSelectClause selectClause)
- Specified by:
visitSelectClause
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitSelectClause
in classBaseSemanticQueryWalker
-
determineImplicitSelection
protected SqmFrom<?,?> determineImplicitSelection(SqmQuerySpec<?> querySpec)
-
visitSelection
public Void visitSelection(SqmSelection<?> sqmSelection)
- Specified by:
visitSelection
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitSelection
in classBaseSemanticQueryWalker
-
visitSelection
public Void visitSelection(int index, SqmSelection<?> sqmSelection)
-
resolveGroupOrOrderByExpression
protected Expression resolveGroupOrOrderByExpression(SqmExpression<?> groupByClauseExpression)
-
visitGroupByClause
public List<Expression> visitGroupByClause(List<SqmExpression<?>> groupByClauseExpressions)
- Specified by:
visitGroupByClause
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitGroupByClause
in classBaseSemanticQueryWalker
-
visitWhereClause
public Predicate visitWhereClause(SqmWhereClause whereClause)
- Specified by:
visitWhereClause
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitWhereClause
in classBaseSemanticQueryWalker
-
visitHavingClause
public Predicate visitHavingClause(SqmPredicate sqmPredicate)
- Specified by:
visitHavingClause
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitHavingClause
in classBaseSemanticQueryWalker
-
visitOrderByClause
public Void visitOrderByClause(SqmOrderByClause orderByClause)
- Specified by:
visitOrderByClause
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitOrderByClause
in classBaseSemanticQueryWalker
-
visitSortSpecification
public SortSpecification visitSortSpecification(SqmSortSpecification sortSpecification)
- Specified by:
visitSortSpecification
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitSortSpecification
in classBaseSemanticQueryWalker
-
visitOffsetExpression
public Expression visitOffsetExpression(SqmExpression<?> expression)
- Specified by:
visitOffsetExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitOffsetExpression
in classBaseSemanticQueryWalker
-
visitFetchExpression
public Expression visitFetchExpression(SqmExpression<?> expression)
- Specified by:
visitFetchExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitFetchExpression
in classBaseSemanticQueryWalker
-
visitFromClause
public Void visitFromClause(SqmFromClause sqmFromClause)
- Specified by:
visitFromClause
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitFromClause
in classBaseSemanticQueryWalker
-
consumeFromClauseCorrelatedRoot
protected void consumeFromClauseCorrelatedRoot(SqmRoot<?> sqmRoot)
-
consumeFromClauseRoot
protected void consumeFromClauseRoot(SqmRoot<?> sqmRoot)
- Overrides:
consumeFromClauseRoot
in classBaseSemanticQueryWalker
-
supportsEntityNameUsage
public boolean supportsEntityNameUsage()
- Specified by:
supportsEntityNameUsage
in interfaceSqlAstCreationState
-
registerEntityNameUsage
public void registerEntityNameUsage(TableGroup tableGroup, EntityNameUse entityNameUse, String treatTargetTypeName)
Description copied from interface:SqlAstCreationState
This callback is for handling of filters and is necessary to allow correct treat optimizations.- Specified by:
registerEntityNameUsage
in interfaceSqlAstCreationState
-
registerTypeUsage
protected void registerTypeUsage(DiscriminatorSqmPath<?> path)
-
registerTypeUsage
protected void registerTypeUsage(TableGroup tableGroup)
-
pruneTableGroupJoins
protected void pruneTableGroupJoins()
-
consumeExplicitJoins
protected void consumeExplicitJoins(SqmFrom<?,?> sqmFrom, TableGroup lhsTableGroup)
-
consumeExplicitJoin
protected TableGroup consumeExplicitJoin(SqmJoin<?,?> sqmJoin, TableGroup lhsTableGroup, TableGroup ownerTableGroup, boolean transitive)
-
getCurrentlyProcessingJoinType
@Nullable public SqlAstJoinType getCurrentlyProcessingJoinType()
Description copied from interface:SqmToSqlAstConverter
Returns theSqlAstJoinType
of the currently processing join if there is one, ornull
. This is used to determine the join type for implicit joins happening in theON
clause.- Specified by:
getCurrentlyProcessingJoinType
in interfaceSqmToSqlAstConverter
-
visitRootPath
public Expression visitRootPath(SqmRoot<?> sqmRoot)
- Specified by:
visitRootPath
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitRootPath
in classBaseSemanticQueryWalker
-
visitRootDerived
public Object visitRootDerived(SqmDerivedRoot<?> sqmRoot)
- Specified by:
visitRootDerived
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitRootDerived
in classBaseSemanticQueryWalker
-
visitRootCte
public Object visitRootCte(SqmCteRoot<?> sqmRoot)
- Specified by:
visitRootCte
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitRootCte
in classBaseSemanticQueryWalker
-
visitQualifiedAttributeJoin
public Expression visitQualifiedAttributeJoin(SqmAttributeJoin<?,?> sqmJoin)
- Specified by:
visitQualifiedAttributeJoin
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitQualifiedAttributeJoin
in classBaseSemanticQueryWalker
-
visitQualifiedDerivedJoin
public Expression visitQualifiedDerivedJoin(SqmDerivedJoin<?> sqmJoin)
- Specified by:
visitQualifiedDerivedJoin
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitQualifiedDerivedJoin
in classBaseSemanticQueryWalker
-
visitQualifiedCteJoin
public Object visitQualifiedCteJoin(SqmCteJoin<?> sqmJoin)
- Specified by:
visitQualifiedCteJoin
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitQualifiedCteJoin
in classBaseSemanticQueryWalker
-
visitCrossJoin
public Expression visitCrossJoin(SqmCrossJoin<?> sqmJoin)
- Specified by:
visitCrossJoin
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitCrossJoin
in classBaseSemanticQueryWalker
-
visitPluralPartJoin
public Object visitPluralPartJoin(SqmPluralPartJoin<?,?> sqmJoin)
- Specified by:
visitPluralPartJoin
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitPluralPartJoin
in classBaseSemanticQueryWalker
-
visitQualifiedEntityJoin
public Expression visitQualifiedEntityJoin(SqmEntityJoin<?> sqmJoin)
- Specified by:
visitQualifiedEntityJoin
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitQualifiedEntityJoin
in classBaseSemanticQueryWalker
-
visitBasicValuedPath
public Expression visitBasicValuedPath(SqmBasicValuedSimplePath<?> sqmPath)
- Specified by:
visitBasicValuedPath
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitBasicValuedPath
in classBaseSemanticQueryWalker
-
visitEmbeddableValuedPath
public Expression visitEmbeddableValuedPath(SqmEmbeddedValuedSimplePath<?> sqmPath)
- Specified by:
visitEmbeddableValuedPath
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitEmbeddableValuedPath
in classBaseSemanticQueryWalker
-
visitAnyValuedValuedPath
public Expression visitAnyValuedValuedPath(SqmAnyValuedSimplePath<?> sqmPath)
- Specified by:
visitAnyValuedValuedPath
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitAnyValuedValuedPath
in classBaseSemanticQueryWalker
-
visitNonAggregatedCompositeValuedPath
public Expression visitNonAggregatedCompositeValuedPath(NonAggregatedCompositeSimplePath<?> sqmPath)
- Specified by:
visitNonAggregatedCompositeValuedPath
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitNonAggregatedCompositeValuedPath
in classBaseSemanticQueryWalker
-
visitEntityValuedPath
public Expression visitEntityValuedPath(SqmEntityValuedSimplePath<?> sqmPath)
- Specified by:
visitEntityValuedPath
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitEntityValuedPath
in classBaseSemanticQueryWalker
-
visitAnyDiscriminatorTypeExpression
public Expression visitAnyDiscriminatorTypeExpression(AnyDiscriminatorSqmPath<?> sqmPath)
- Specified by:
visitAnyDiscriminatorTypeExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitAnyDiscriminatorTypeExpression
in classBaseSemanticQueryWalker
-
visitPluralValuedPath
public Expression visitPluralValuedPath(SqmPluralValuedSimplePath<?> sqmPath)
- Specified by:
visitPluralValuedPath
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitPluralValuedPath
in classBaseSemanticQueryWalker
-
visitFkExpression
public Object visitFkExpression(SqmFkExpression<?> fkExpression)
- Specified by:
visitFkExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitFkExpression
in classBaseSemanticQueryWalker
-
visitDiscriminatorPath
public Object visitDiscriminatorPath(DiscriminatorSqmPath<?> sqmPath)
- Specified by:
visitDiscriminatorPath
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitDiscriminatorPath
in classBaseSemanticQueryWalker
-
createMinOrMaxIndexOrElement
protected Expression createMinOrMaxIndexOrElement(AbstractSqmSpecificPluralPartPath<?> pluralPartPath, boolean index, String functionName)
-
visitElementAggregateFunction
public Expression visitElementAggregateFunction(SqmElementAggregateFunction<?> path)
- Specified by:
visitElementAggregateFunction
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitElementAggregateFunction
in classBaseSemanticQueryWalker
-
visitIndexAggregateFunction
public Expression visitIndexAggregateFunction(SqmIndexAggregateFunction<?> path)
- Specified by:
visitIndexAggregateFunction
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitIndexAggregateFunction
in classBaseSemanticQueryWalker
-
visitFunctionPath
public Expression visitFunctionPath(SqmFunctionPath<?> functionPath)
- Specified by:
visitFunctionPath
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitFunctionPath
in classBaseSemanticQueryWalker
-
visitCorrelation
public Expression visitCorrelation(SqmCorrelation<?,?> correlation)
- Specified by:
visitCorrelation
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitCorrelation
in classBaseSemanticQueryWalker
-
visitTreatedPath
public Expression visitTreatedPath(SqmTreatedPath<?,?> sqmTreatedPath)
- Specified by:
visitTreatedPath
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitTreatedPath
in classBaseSemanticQueryWalker
-
visitPluralAttributeSizeFunction
public Expression visitPluralAttributeSizeFunction(SqmCollectionSize function)
- Specified by:
visitPluralAttributeSizeFunction
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitPluralAttributeSizeFunction
in classBaseSemanticQueryWalker
-
visitIndexedPluralAccessPath
public Object visitIndexedPluralAccessPath(SqmIndexedCollectionAccessPath<?> path)
- Specified by:
visitIndexedPluralAccessPath
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitIndexedPluralAccessPath
in classBaseSemanticQueryWalker
-
visitMapEntryFunction
public Object visitMapEntryFunction(SqmMapEntryReference<?,?> entryRef)
- Specified by:
visitMapEntryFunction
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitMapEntryFunction
in classBaseSemanticQueryWalker
-
createCorrelatedAggregateSubQuery
protected Expression createCorrelatedAggregateSubQuery(AbstractSqmSpecificPluralPartPath<?> pluralPartPath, boolean index, String function)
-
createLateralJoinExpression
protected Expression createLateralJoinExpression(AbstractSqmSpecificPluralPartPath<?> pluralPartPath, boolean index, String functionName)
-
isInTypeInference
public boolean isInTypeInference()
Description copied from interface:SqmToSqlAstConverter
Returns whether the state of the translation is currently in type inference mode. This is useful to avoid type inference based on other incomplete inference information.- Specified by:
isInTypeInference
in interfaceSqmToSqlAstConverter
-
resolveFunctionImpliedReturnType
public MappingModelExpressible<?> resolveFunctionImpliedReturnType()
Description copied from interface:SqmToSqlAstConverter
Returns the function return type implied from the context within which it is used. If there is no current function being processed or no context implied type, the return isnull
.- Specified by:
resolveFunctionImpliedReturnType
in interfaceSqmToSqlAstConverter
-
visitLiteral
public Expression visitLiteral(SqmLiteral<?> literal)
- Specified by:
visitLiteral
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitLiteral
in classBaseSemanticQueryWalker
-
visitHqlNumericLiteral
public <N extends Number> Expression visitHqlNumericLiteral(SqmHqlNumericLiteral<N> numericLiteral)
- Specified by:
visitHqlNumericLiteral
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitHqlNumericLiteral
in classBaseSemanticQueryWalker
-
getJdbcParamsBySqmParam
public Map<SqmParameter<?>,List<List<JdbcParameter>>> getJdbcParamsBySqmParam()
Description copied from interface:JdbcParameterBySqmParameterAccess
The mapping between an SqmParameter and all of its JDBC parameters- Specified by:
getJdbcParamsBySqmParam
in interfaceJdbcParameterBySqmParameterAccess
-
visitNamedParameterExpression
public Expression visitNamedParameterExpression(SqmNamedParameter<?> expression)
- Specified by:
visitNamedParameterExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitNamedParameterExpression
in classBaseSemanticQueryWalker
-
consumeSqmParameter
protected Expression consumeSqmParameter(SqmParameter<?> sqmParameter, MappingModelExpressible<?> valueMapping, BiConsumer<Integer,JdbcParameter> jdbcParameterConsumer)
-
consumeSqmParameter
protected Expression consumeSqmParameter(SqmParameter<?> sqmParameter)
-
consumeSingleSqmParameter
protected Expression consumeSingleSqmParameter(SqmParameter<?> sqmParameter)
-
determineValueMapping
public MappingModelExpressible<?> determineValueMapping(SqmExpression<?> sqmExpression)
- Specified by:
determineValueMapping
in interfaceSqmToSqlAstConverter
-
getInferredValueMapping
protected MappingModelExpressible<?> getInferredValueMapping()
-
determineValueMapping
protected MappingModelExpressible<?> determineValueMapping(SqmParameter<?> sqmParameter)
-
visitPositionalParameterExpression
public Object visitPositionalParameterExpression(SqmPositionalParameter<?> expression)
- Specified by:
visitPositionalParameterExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitPositionalParameterExpression
in classBaseSemanticQueryWalker
-
visitJpaCriteriaParameter
public Object visitJpaCriteriaParameter(JpaCriteriaParameter<?> expression)
- Specified by:
visitJpaCriteriaParameter
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitJpaCriteriaParameter
in classBaseSemanticQueryWalker
-
visitTuple
public Object visitTuple(SqmTuple<?> sqmTuple)
- Specified by:
visitTuple
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitTuple
in classBaseSemanticQueryWalker
-
visitCollation
public Object visitCollation(SqmCollation sqmCollation)
- Specified by:
visitCollation
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitCollation
in classBaseSemanticQueryWalker
-
visitFunction
public Expression visitFunction(SqmFunction<?> sqmFunction)
- Specified by:
visitFunction
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitFunction
in classBaseSemanticQueryWalker
-
registerQueryTransformer
public void registerQueryTransformer(QueryTransformer transformer)
- Specified by:
registerQueryTransformer
in interfaceSqmToSqlAstConverter
-
visitStar
public Star visitStar(SqmStar sqmStar)
- Specified by:
visitStar
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitStar
in classBaseSemanticQueryWalker
-
visitOver
public Object visitOver(SqmOver<?> over)
- Specified by:
visitOver
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitOver
in classBaseSemanticQueryWalker
-
visitDistinct
public Object visitDistinct(SqmDistinct<?> sqmDistinct)
- Specified by:
visitDistinct
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitDistinct
in classBaseSemanticQueryWalker
-
visitOverflow
public Object visitOverflow(SqmOverflow<?> sqmOverflow)
- Specified by:
visitOverflow
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitOverflow
in classBaseSemanticQueryWalker
-
visitTrimSpecification
public Object visitTrimSpecification(SqmTrimSpecification specification)
- Specified by:
visitTrimSpecification
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitTrimSpecification
in classBaseSemanticQueryWalker
-
visitCastTarget
public Object visitCastTarget(SqmCastTarget<?> target)
- Specified by:
visitCastTarget
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitCastTarget
in classBaseSemanticQueryWalker
-
visitExtractUnit
public Object visitExtractUnit(SqmExtractUnit<?> unit)
- Specified by:
visitExtractUnit
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitExtractUnit
in classBaseSemanticQueryWalker
-
visitDurationUnit
public Object visitDurationUnit(SqmDurationUnit<?> unit)
- Specified by:
visitDurationUnit
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitDurationUnit
in classBaseSemanticQueryWalker
-
visitFormat
public Object visitFormat(SqmFormat sqmFormat)
- Specified by:
visitFormat
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitFormat
in classBaseSemanticQueryWalker
-
visitCoalesce
public Object visitCoalesce(SqmCoalesce<?> sqmCoalesce)
- Specified by:
visitCoalesce
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitCoalesce
in classBaseSemanticQueryWalker
-
visitUnaryOperationExpression
public Object visitUnaryOperationExpression(SqmUnaryOperation<?> expression)
- Specified by:
visitUnaryOperationExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitUnaryOperationExpression
in classBaseSemanticQueryWalker
-
visitBinaryArithmeticExpression
public Object visitBinaryArithmeticExpression(SqmBinaryArithmetic<?> expression)
- Specified by:
visitBinaryArithmeticExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitBinaryArithmeticExpression
in classBaseSemanticQueryWalker
-
visitToDuration
public Object visitToDuration(SqmToDuration<?> toDuration)
- Specified by:
visitToDuration
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitToDuration
in classBaseSemanticQueryWalker
-
visitByUnit
public Object visitByUnit(SqmByUnit byUnit)
- Specified by:
visitByUnit
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitByUnit
in classBaseSemanticQueryWalker
-
visitModifiedSubQueryExpression
public Object visitModifiedSubQueryExpression(SqmModifiedSubQueryExpression<?> expr)
- Specified by:
visitModifiedSubQueryExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitModifiedSubQueryExpression
in classBaseSemanticQueryWalker
-
visitSubQueryExpression
public SelectStatement visitSubQueryExpression(SqmSubQuery<?> sqmSubQuery)
- Specified by:
visitSubQueryExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitSubQueryExpression
in classBaseSemanticQueryWalker
-
visitSimpleCaseExpression
public CaseSimpleExpression visitSimpleCaseExpression(SqmCaseSimple<?,?> expression)
- Specified by:
visitSimpleCaseExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitSimpleCaseExpression
in classBaseSemanticQueryWalker
-
visitSearchedCaseExpression
public CaseSearchedExpression visitSearchedCaseExpression(SqmCaseSearched<?> expression)
- Specified by:
visitSearchedCaseExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitSearchedCaseExpression
in classBaseSemanticQueryWalker
-
visitWithInferredType
public Object visitWithInferredType(SqmVisitableNode node, Supplier<MappingModelExpressible<?>> inferredTypeAccess)
Description copied from interface:SqmToSqlAstConverter
Visits the given node with the given inferred type access.- Specified by:
visitWithInferredType
in interfaceSqmToSqlAstConverter
-
visitAny
public Object visitAny(SqmAny<?> sqmAny)
- Specified by:
visitAny
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitAny
in classBaseSemanticQueryWalker
-
visitEvery
public Object visitEvery(SqmEvery<?> sqmEvery)
- Specified by:
visitEvery
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitEvery
in classBaseSemanticQueryWalker
-
visitSummarization
public Object visitSummarization(SqmSummarization<?> sqmSummarization)
- Specified by:
visitSummarization
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitSummarization
in classBaseSemanticQueryWalker
-
visitEntityTypeLiteralExpression
public Expression visitEntityTypeLiteralExpression(SqmLiteralEntityType<?> sqmExpression)
- Specified by:
visitEntityTypeLiteralExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitEntityTypeLiteralExpression
in classBaseSemanticQueryWalker
-
visitEmbeddableTypeLiteralExpression
public Object visitEmbeddableTypeLiteralExpression(SqmLiteralEmbeddableType<?> expression)
- Specified by:
visitEmbeddableTypeLiteralExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitEmbeddableTypeLiteralExpression
in classBaseSemanticQueryWalker
-
visitAnyDiscriminatorTypeValueExpression
public Expression visitAnyDiscriminatorTypeValueExpression(SqmAnyDiscriminatorValue<?> expression)
- Specified by:
visitAnyDiscriminatorTypeValueExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitAnyDiscriminatorTypeValueExpression
in classBaseSemanticQueryWalker
-
visitParameterizedEntityTypeExpression
public Expression visitParameterizedEntityTypeExpression(SqmParameterizedEntityType<?> sqmExpression)
- Specified by:
visitParameterizedEntityTypeExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitParameterizedEntityTypeExpression
in classBaseSemanticQueryWalker
-
visitEnumLiteral
public Object visitEnumLiteral(SqmEnumLiteral<?> sqmEnumLiteral)
- Specified by:
visitEnumLiteral
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitEnumLiteral
in classBaseSemanticQueryWalker
-
visitFieldLiteral
public Object visitFieldLiteral(SqmFieldLiteral<?> sqmFieldLiteral)
- Specified by:
visitFieldLiteral
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitFieldLiteral
in classBaseSemanticQueryWalker
-
visitNestedTopLevelPredicate
public Predicate visitNestedTopLevelPredicate(SqmPredicate predicate)
- Specified by:
visitNestedTopLevelPredicate
in interfaceSqmToSqlAstConverter
-
visitGroupedPredicate
public GroupedPredicate visitGroupedPredicate(SqmGroupedPredicate predicate)
- Specified by:
visitGroupedPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitGroupedPredicate
in classBaseSemanticQueryWalker
-
visitJunctionPredicate
public Junction visitJunctionPredicate(SqmJunctionPredicate predicate)
- Specified by:
visitJunctionPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitJunctionPredicate
in classBaseSemanticQueryWalker
-
visitMemberOfPredicate
public Predicate visitMemberOfPredicate(SqmMemberOfPredicate predicate)
- Specified by:
visitMemberOfPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitMemberOfPredicate
in classBaseSemanticQueryWalker
-
visitNegatedPredicate
public NegatedPredicate visitNegatedPredicate(SqmNegatedPredicate predicate)
- Specified by:
visitNegatedPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitNegatedPredicate
in classBaseSemanticQueryWalker
-
visitComparisonPredicate
public ComparisonPredicate visitComparisonPredicate(SqmComparisonPredicate predicate)
- Specified by:
visitComparisonPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitComparisonPredicate
in classBaseSemanticQueryWalker
-
visitIsEmptyPredicate
public Object visitIsEmptyPredicate(SqmEmptinessPredicate predicate)
- Specified by:
visitIsEmptyPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitIsEmptyPredicate
in classBaseSemanticQueryWalker
-
visitBetweenPredicate
public BetweenPredicate visitBetweenPredicate(SqmBetweenPredicate predicate)
- Specified by:
visitBetweenPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitBetweenPredicate
in classBaseSemanticQueryWalker
-
visitLikePredicate
public LikePredicate visitLikePredicate(SqmLikePredicate predicate)
- Specified by:
visitLikePredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitLikePredicate
in classBaseSemanticQueryWalker
-
visitIsNullPredicate
public NullnessPredicate visitIsNullPredicate(SqmNullnessPredicate predicate)
- Specified by:
visitIsNullPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitIsNullPredicate
in classBaseSemanticQueryWalker
-
visitIsTruePredicate
public Object visitIsTruePredicate(SqmTruthnessPredicate predicate)
- Specified by:
visitIsTruePredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitIsTruePredicate
in classBaseSemanticQueryWalker
-
visitInListPredicate
public Predicate visitInListPredicate(SqmInListPredicate<?> predicate)
- Specified by:
visitInListPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitInListPredicate
in classBaseSemanticQueryWalker
-
visitInSubQueryPredicate
public InSubQueryPredicate visitInSubQueryPredicate(SqmInSubQueryPredicate<?> predicate)
- Specified by:
visitInSubQueryPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitInSubQueryPredicate
in classBaseSemanticQueryWalker
-
visitBooleanExpressionPredicate
public Object visitBooleanExpressionPredicate(SqmBooleanExpressionPredicate predicate)
- Specified by:
visitBooleanExpressionPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitBooleanExpressionPredicate
in classBaseSemanticQueryWalker
-
visitExistsPredicate
public Object visitExistsPredicate(SqmExistsPredicate predicate)
- Specified by:
visitExistsPredicate
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitExistsPredicate
in classBaseSemanticQueryWalker
-
getSqlAstCreationState
public SqlAstCreationState getSqlAstCreationState()
Description copied from interface:DomainResultCreationState
The underlying state for SQL AST creation- Specified by:
getSqlAstCreationState
in interfaceDomainResultCreationState
-
visitFullyQualifiedClass
public Object visitFullyQualifiedClass(Class<?> namedClass)
- Specified by:
visitFullyQualifiedClass
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitFullyQualifiedClass
in classBaseSemanticQueryWalker
-
visitAsWrapperExpression
public Object visitAsWrapperExpression(AsWrapperSqmExpression<?> sqmExpression)
- Specified by:
visitAsWrapperExpression
in interfaceSemanticQueryWalker<T extends Statement>
- Overrides:
visitAsWrapperExpression
in classBaseSemanticQueryWalker
-
visitIdentifierFetch
public Fetch visitIdentifierFetch(EntityResultGraphNode fetchParent)
- Specified by:
visitIdentifierFetch
in interfaceDomainResultCreationState
-
withNestedFetchParent
public <R> R withNestedFetchParent(FetchParent fetchParent, Function<FetchParent,R> action)
- Specified by:
withNestedFetchParent
in interfaceDomainResultCreationState
-
visitFetches
public ImmutableFetchList visitFetches(FetchParent fetchParent)
Description copied from interface:DomainResultCreationState
Visit fetches for the given parent. We walk fetches via the SqlAstCreationContext because each "context" will define differently what should be fetched (HQL versus load)- Specified by:
visitFetches
in interfaceDomainResultCreationState
-
applyOrdering
public void applyOrdering(TableGroup tableGroup, OrderByFragment orderByFragment)
- Specified by:
applyOrdering
in interfaceSqlAstCreationState
-
resolveMetadata
public <S,M> M resolveMetadata(S source, Function<S,M> producer)
Description copied from interface:SqmToSqlAstConverter
Resolve a generic metadata object from the provided source, using the specified producer.- Specified by:
resolveMetadata
in interfaceSqmToSqlAstConverter
-
isResolvingCircularFetch
public boolean isResolvingCircularFetch()
- Specified by:
isResolvingCircularFetch
in interfaceDomainResultCreationState
-
setResolvingCircularFetch
public void setResolvingCircularFetch(boolean resolvingCircularFetch)
- Specified by:
setResolvingCircularFetch
in interfaceDomainResultCreationState
-
getCurrentlyResolvingForeignKeyPart
public ForeignKeyDescriptor.Nature getCurrentlyResolvingForeignKeyPart()
Description copied from interface:DomainResultCreationState
Returns the part of the foreign key that is currently being resolved, ornull
if no foreign key is currently being resolved.- Specified by:
getCurrentlyResolvingForeignKeyPart
in interfaceDomainResultCreationState
-
setCurrentlyResolvingForeignKeyPart
public void setCurrentlyResolvingForeignKeyPart(ForeignKeyDescriptor.Nature currentlyResolvingForeignKeySide)
- Specified by:
setCurrentlyResolvingForeignKeyPart
in interfaceDomainResultCreationState
-
expandSelfRenderingFunctionMultiValueParameter
public List<Expression> expandSelfRenderingFunctionMultiValueParameter(SqmParameter<?> sqmParameter)
- Specified by:
expandSelfRenderingFunctionMultiValueParameter
in interfaceSqmToSqlAstConverter
-
registerVisitedAssociationKey
public boolean registerVisitedAssociationKey(AssociationKey associationKey)
Description copied from interface:DomainResultCreationState
Registers a circularity detection key- Specified by:
registerVisitedAssociationKey
in interfaceDomainResultCreationState
-
removeVisitedAssociationKey
public void removeVisitedAssociationKey(AssociationKey associationKey)
Description copied from interface:DomainResultCreationState
Removes the registration of a circularity detection key- Specified by:
removeVisitedAssociationKey
in interfaceDomainResultCreationState
-
isAssociationKeyVisited
public boolean isAssociationKeyVisited(AssociationKey associationKey)
Description copied from interface:DomainResultCreationState
Checks whether the given circularityKey is registered- Specified by:
isAssociationKeyVisited
in interfaceDomainResultCreationState
-
isRegisteringVisitedAssociationKeys
public boolean isRegisteringVisitedAssociationKeys()
Description copied from interface:DomainResultCreationState
Is this state accepting circularity detection keys?- Specified by:
isRegisteringVisitedAssociationKeys
in interfaceDomainResultCreationState
-
-