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 classBaseSqmToSqlAstConverter.AdditionalInsertValuesprotected static classBaseSqmToSqlAstConverter.DelegatingSqmAliasedNodeCollectorstatic interfaceBaseSqmToSqlAstConverter.SqmAliasedNodeCollectorprotected static classBaseSqmToSqlAstConverter.SqmAliasedNodePositionTracker
-
Field Summary
Fields Modifier and Type Field Description protected PredicateadditionalRestrictions-
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, visitCorrelatedCteJoin, visitCorrelatedDerivedJoin, visitCorrelatedEntityJoin, visitCorrelatedListJoin, visitCorrelatedMapJoin, visitCorrelatedPluralPartJoin, visitCorrelatedRoot, visitCorrelatedRootJoin, visitCorrelatedSetJoin, visitCorrelatedSingularJoin, visitJpaCompoundSelection, visitListJoin, visitMapJoin, visitSetJoin, visitSingularJoin, visitWindow
-
Methods inherited from interface org.hibernate.sql.ast.spi.SqlAstCreationState
isProcedureOrNativeQuery
-
Methods inherited from interface org.hibernate.query.sqm.sql.SqmToSqlAstConverter
getCurrentSqmQueryPart
-
-
-
-
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:
getDialectin interfaceJdbcTypeIndicators
-
getTypeConfiguration
public TypeConfiguration getTypeConfiguration()
Description copied from interface:JdbcTypeIndicatorsProvides access to theTypeConfigurationfor access to various type system related registries.- Specified by:
getTypeConfigurationin interfaceJdbcTypeIndicators
-
getPreferredSqlTypeCodeForBoolean
public int getPreferredSqlTypeCodeForBoolean()
Description copied from interface:JdbcTypeIndicatorsWhen mapping a boolean type to the database what is the preferred SQL type code to use?Returns a key into the
JdbcTypeRegistry.- Specified by:
getPreferredSqlTypeCodeForBooleanin interfaceJdbcTypeIndicators- See Also:
MappingSettings.PREFERRED_BOOLEAN_JDBC_TYPE,Dialect.getPreferredSqlTypeCodeForBoolean()
-
getPreferredSqlTypeCodeForDuration
public int getPreferredSqlTypeCodeForDuration()
Description copied from interface:JdbcTypeIndicatorsWhen mapping a duration type to the database what is the preferred SQL type code to use?Returns a key into the
JdbcTypeRegistry.- Specified by:
getPreferredSqlTypeCodeForDurationin interfaceJdbcTypeIndicators- See Also:
MappingSettings.PREFERRED_DURATION_JDBC_TYPE
-
getPreferredSqlTypeCodeForUuid
public int getPreferredSqlTypeCodeForUuid()
Description copied from interface:JdbcTypeIndicatorsWhen mapping an uuid type to the database what is the preferred SQL type code to use?Returns a key into the
JdbcTypeRegistry.- Specified by:
getPreferredSqlTypeCodeForUuidin interfaceJdbcTypeIndicators- See Also:
MappingSettings.PREFERRED_UUID_JDBC_TYPE
-
findTableGroup
public TableGroup findTableGroup(NavigablePath navigablePath)
Description copied from interface:FromClauseAccessFind a TableGroup by the NavigablePath it is registered under, and if not found on the current from clause level, ask the parent. Returnsnullif no TableGroup is registered under that NavigablePath- Specified by:
findTableGroupin interfaceFromClauseAccess
-
findTableGroupOnCurrentFromClause
public TableGroup findTableGroupOnCurrentFromClause(NavigablePath navigablePath)
Description copied from interface:FromClauseAccessFind a TableGroup in this from clause without consulting parents by the NavigablePath it is registered under. Returnsnullif no TableGroup is registered under that NavigablePath- Specified by:
findTableGroupOnCurrentFromClausein interfaceFromClauseAccess
-
resolveModelPart
public ModelPart resolveModelPart(NavigablePath navigablePath)
Description copied from interface:DomainResultCreationStateResolve 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:
resolveModelPartin interfaceDomainResultCreationState
-
registerTableGroup
public void registerTableGroup(NavigablePath navigablePath, TableGroup tableGroup)
Description copied from interface:FromClauseAccessRegister a TableGroup under the given `navigablePath`. Logs a message if this registration over-writes an existing one.- Specified by:
registerTableGroupin interfaceFromClauseAccess
-
getCreationContext
public SqlAstCreationContext getCreationContext()
- Specified by:
getCreationContextin interfaceSqlAstCreationState
-
getCurrentProcessingState
public SqlAstProcessingState getCurrentProcessingState()
- Specified by:
getCurrentProcessingStatein interfaceSqlAstCreationState
-
getSqlExpressionResolver
public SqlExpressionResolver getSqlExpressionResolver()
- Specified by:
getSqlExpressionResolverin interfaceSqlAstCreationState
-
getSqlAliasBaseGenerator
public SqlAliasBaseGenerator getSqlAliasBaseGenerator()
- Specified by:
getSqlAliasBaseGeneratorin interfaceSqlAstCreationState
-
registerLockMode
public void registerLockMode(String identificationVariable, LockMode explicitLockMode)
- Specified by:
registerLockModein interfaceSqlAstCreationState
-
getQueryOptions
public QueryOptions getQueryOptions()
-
getLoadQueryInfluencers
public LoadQueryInfluencers getLoadQueryInfluencers()
- Specified by:
getLoadQueryInfluencersin interfaceSqlAstCreationState
-
applyOnlyLoadByKeyFilters
public boolean applyOnlyLoadByKeyFilters()
- Specified by:
applyOnlyLoadByKeyFiltersin interfaceSqlAstCreationState
-
getFromClauseIndex
public FromClauseIndex getFromClauseIndex()
-
getFromClauseAccess
public FromClauseAccess getFromClauseAccess()
- Specified by:
getFromClauseAccessin interfaceSqlAstCreationState
-
getCurrentClauseStack
public Stack<Clause> getCurrentClauseStack()
- Specified by:
getCurrentClauseStackin interfaceSqmToSqlAstConverter
-
getSqmQueryPartStack
public Stack<SqmQueryPart> getSqmQueryPartStack()
- Specified by:
getSqmQueryPartStackin interfaceSqmToSqlAstConverter
-
translate
public SqmTranslation<T> translate()
- Specified by:
translatein interfaceSqmTranslator<T extends Statement>
-
visitUpdateStatement
public UpdateStatement visitUpdateStatement(SqmUpdateStatement<?> sqmStatement)
- Specified by:
visitUpdateStatementin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitUpdateStatementin classBaseSemanticQueryWalker
-
addVersionedAssignment
public void addVersionedAssignment(Consumer<Assignment> assignmentConsumer, SqmUpdateStatement<?> sqmStatement)
-
visitSetClause
public List<Assignment> visitSetClause(SqmSetClause setClause)
- Specified by:
visitSetClausein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitSetClausein classBaseSemanticQueryWalker
-
visitDeleteStatement
public DeleteStatement visitDeleteStatement(SqmDeleteStatement<?> statement)
- Specified by:
visitDeleteStatementin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitDeleteStatementin classBaseSemanticQueryWalker
-
visitInsertSelectStatement
public InsertStatement visitInsertSelectStatement(SqmInsertSelectStatement<?> sqmStatement)
- Specified by:
visitInsertSelectStatementin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitInsertSelectStatementin classBaseSemanticQueryWalker
-
visitInsertValuesStatement
public InsertStatement visitInsertValuesStatement(SqmInsertValuesStatement<?> sqmStatement)
- Specified by:
visitInsertValuesStatementin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitInsertValuesStatementin classBaseSemanticQueryWalker
-
visitConflictClause
public ConflictClause visitConflictClause(SqmConflictClause<?> sqmConflictClause)
- Specified by:
visitConflictClausein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitConflictClausein 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:
visitValuesin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitValuesin classBaseSemanticQueryWalker
-
visitSelectStatement
public SelectStatement visitSelectStatement(SqmSelectStatement<?> statement)
- Specified by:
visitSelectStatementin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitSelectStatementin classBaseSemanticQueryWalker
-
visitDynamicInstantiation
public DynamicInstantiation<?> visitDynamicInstantiation(SqmDynamicInstantiation<?> sqmDynamicInstantiation)
- Specified by:
visitDynamicInstantiationin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitDynamicInstantiationin classBaseSemanticQueryWalker
-
visitCteStatement
public CteStatement visitCteStatement(SqmCteStatement<?> sqmCteStatement)
- Specified by:
visitCteStatementin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitCteStatementin 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:
visitCteContainerin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitCteContainerin classBaseSemanticQueryWalker
-
visitQueryPart
public QueryPart visitQueryPart(SqmQueryPart<?> queryPart)
- Overrides:
visitQueryPartin classBaseSemanticQueryWalker
-
visitQueryGroup
public QueryGroup visitQueryGroup(SqmQueryGroup<?> queryGroup)
- Specified by:
visitQueryGroupin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitQueryGroupin classBaseSemanticQueryWalker
-
visitQuerySpec
public QuerySpec visitQuerySpec(SqmQuerySpec<?> sqmQuerySpec)
- Specified by:
visitQuerySpecin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitQuerySpecin classBaseSemanticQueryWalker
-
visitOrderByOffsetAndFetch
protected void visitOrderByOffsetAndFetch(SqmQueryPart<?> sqmQueryPart, QueryPart sqlQueryPart)
-
visitSelectClause
public SelectClause visitSelectClause(SqmSelectClause selectClause)
- Specified by:
visitSelectClausein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitSelectClausein classBaseSemanticQueryWalker
-
determineImplicitSelection
protected SqmFrom<?,?> determineImplicitSelection(SqmQuerySpec<?> querySpec)
-
visitSelection
public Void visitSelection(SqmSelection<?> sqmSelection)
- Specified by:
visitSelectionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitSelectionin 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:
visitGroupByClausein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitGroupByClausein classBaseSemanticQueryWalker
-
visitWhereClause
public Predicate visitWhereClause(SqmWhereClause whereClause)
- Specified by:
visitWhereClausein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitWhereClausein classBaseSemanticQueryWalker
-
visitHavingClause
public Predicate visitHavingClause(SqmPredicate sqmPredicate)
- Specified by:
visitHavingClausein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitHavingClausein classBaseSemanticQueryWalker
-
visitOrderByClause
public Void visitOrderByClause(SqmOrderByClause orderByClause)
- Specified by:
visitOrderByClausein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitOrderByClausein classBaseSemanticQueryWalker
-
visitSortSpecification
public SortSpecification visitSortSpecification(SqmSortSpecification sortSpecification)
- Specified by:
visitSortSpecificationin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitSortSpecificationin classBaseSemanticQueryWalker
-
visitOffsetExpression
public Expression visitOffsetExpression(SqmExpression<?> expression)
- Specified by:
visitOffsetExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitOffsetExpressionin classBaseSemanticQueryWalker
-
visitFetchExpression
public Expression visitFetchExpression(SqmExpression<?> expression)
- Specified by:
visitFetchExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitFetchExpressionin classBaseSemanticQueryWalker
-
visitFromClause
public Void visitFromClause(SqmFromClause sqmFromClause)
- Specified by:
visitFromClausein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitFromClausein classBaseSemanticQueryWalker
-
consumeFromClauseCorrelatedRoot
protected void consumeFromClauseCorrelatedRoot(SqmRoot<?> sqmRoot)
-
consumeFromClauseRoot
protected void consumeFromClauseRoot(SqmRoot<?> sqmRoot)
- Overrides:
consumeFromClauseRootin classBaseSemanticQueryWalker
-
supportsEntityNameUsage
public boolean supportsEntityNameUsage()
- Specified by:
supportsEntityNameUsagein interfaceSqlAstCreationState
-
registerEntityNameUsage
public void registerEntityNameUsage(TableGroup tableGroup, EntityNameUse entityNameUse, String treatTargetTypeName)
Description copied from interface:SqlAstCreationStateThis callback is for handling of filters and is necessary to allow correct treat optimizations.- Specified by:
registerEntityNameUsagein 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:SqmToSqlAstConverterReturns theSqlAstJoinTypeof the currently processing join if there is one, ornull. This is used to determine the join type for implicit joins happening in theONclause.- Specified by:
getCurrentlyProcessingJoinTypein interfaceSqmToSqlAstConverter
-
visitRootPath
public Expression visitRootPath(SqmRoot<?> sqmRoot)
- Specified by:
visitRootPathin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitRootPathin classBaseSemanticQueryWalker
-
visitRootDerived
public Object visitRootDerived(SqmDerivedRoot<?> sqmRoot)
- Specified by:
visitRootDerivedin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitRootDerivedin classBaseSemanticQueryWalker
-
visitRootCte
public Object visitRootCte(SqmCteRoot<?> sqmRoot)
- Specified by:
visitRootCtein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitRootCtein classBaseSemanticQueryWalker
-
visitQualifiedAttributeJoin
public Expression visitQualifiedAttributeJoin(SqmAttributeJoin<?,?> sqmJoin)
- Specified by:
visitQualifiedAttributeJoinin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitQualifiedAttributeJoinin classBaseSemanticQueryWalker
-
visitQualifiedDerivedJoin
public Expression visitQualifiedDerivedJoin(SqmDerivedJoin<?> sqmJoin)
- Specified by:
visitQualifiedDerivedJoinin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitQualifiedDerivedJoinin classBaseSemanticQueryWalker
-
visitQualifiedCteJoin
public Object visitQualifiedCteJoin(SqmCteJoin<?> sqmJoin)
- Specified by:
visitQualifiedCteJoinin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitQualifiedCteJoinin classBaseSemanticQueryWalker
-
visitCrossJoin
public Expression visitCrossJoin(SqmCrossJoin<?> sqmJoin)
- Specified by:
visitCrossJoinin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitCrossJoinin classBaseSemanticQueryWalker
-
visitPluralPartJoin
public Object visitPluralPartJoin(SqmPluralPartJoin<?,?> sqmJoin)
- Specified by:
visitPluralPartJoinin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitPluralPartJoinin classBaseSemanticQueryWalker
-
visitQualifiedEntityJoin
public Expression visitQualifiedEntityJoin(SqmEntityJoin<?> sqmJoin)
- Specified by:
visitQualifiedEntityJoinin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitQualifiedEntityJoinin classBaseSemanticQueryWalker
-
visitBasicValuedPath
public Expression visitBasicValuedPath(SqmBasicValuedSimplePath<?> sqmPath)
- Specified by:
visitBasicValuedPathin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitBasicValuedPathin classBaseSemanticQueryWalker
-
visitEmbeddableValuedPath
public Expression visitEmbeddableValuedPath(SqmEmbeddedValuedSimplePath<?> sqmPath)
- Specified by:
visitEmbeddableValuedPathin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitEmbeddableValuedPathin classBaseSemanticQueryWalker
-
visitAnyValuedValuedPath
public Expression visitAnyValuedValuedPath(SqmAnyValuedSimplePath<?> sqmPath)
- Specified by:
visitAnyValuedValuedPathin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitAnyValuedValuedPathin classBaseSemanticQueryWalker
-
visitNonAggregatedCompositeValuedPath
public Expression visitNonAggregatedCompositeValuedPath(NonAggregatedCompositeSimplePath<?> sqmPath)
- Specified by:
visitNonAggregatedCompositeValuedPathin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitNonAggregatedCompositeValuedPathin classBaseSemanticQueryWalker
-
visitEntityValuedPath
public Expression visitEntityValuedPath(SqmEntityValuedSimplePath<?> sqmPath)
- Specified by:
visitEntityValuedPathin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitEntityValuedPathin classBaseSemanticQueryWalker
-
visitAnyDiscriminatorTypeExpression
public Expression visitAnyDiscriminatorTypeExpression(AnyDiscriminatorSqmPath<?> sqmPath)
- Specified by:
visitAnyDiscriminatorTypeExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitAnyDiscriminatorTypeExpressionin classBaseSemanticQueryWalker
-
visitPluralValuedPath
public Expression visitPluralValuedPath(SqmPluralValuedSimplePath<?> sqmPath)
- Specified by:
visitPluralValuedPathin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitPluralValuedPathin classBaseSemanticQueryWalker
-
visitFkExpression
public Object visitFkExpression(SqmFkExpression<?> fkExpression)
- Specified by:
visitFkExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitFkExpressionin classBaseSemanticQueryWalker
-
visitDiscriminatorPath
public Object visitDiscriminatorPath(DiscriminatorSqmPath<?> sqmPath)
- Specified by:
visitDiscriminatorPathin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitDiscriminatorPathin classBaseSemanticQueryWalker
-
createMinOrMaxIndexOrElement
protected Expression createMinOrMaxIndexOrElement(AbstractSqmSpecificPluralPartPath<?> pluralPartPath, boolean index, String functionName)
-
visitElementAggregateFunction
public Expression visitElementAggregateFunction(SqmElementAggregateFunction<?> path)
- Specified by:
visitElementAggregateFunctionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitElementAggregateFunctionin classBaseSemanticQueryWalker
-
visitIndexAggregateFunction
public Expression visitIndexAggregateFunction(SqmIndexAggregateFunction<?> path)
- Specified by:
visitIndexAggregateFunctionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitIndexAggregateFunctionin classBaseSemanticQueryWalker
-
visitFunctionPath
public Expression visitFunctionPath(SqmFunctionPath<?> functionPath)
- Specified by:
visitFunctionPathin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitFunctionPathin classBaseSemanticQueryWalker
-
visitCorrelation
public Expression visitCorrelation(SqmCorrelation<?,?> correlation)
- Specified by:
visitCorrelationin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitCorrelationin classBaseSemanticQueryWalker
-
visitTreatedPath
public Expression visitTreatedPath(SqmTreatedPath<?,?> sqmTreatedPath)
- Specified by:
visitTreatedPathin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitTreatedPathin classBaseSemanticQueryWalker
-
visitPluralAttributeSizeFunction
public Expression visitPluralAttributeSizeFunction(SqmCollectionSize function)
- Specified by:
visitPluralAttributeSizeFunctionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitPluralAttributeSizeFunctionin classBaseSemanticQueryWalker
-
visitIndexedPluralAccessPath
public Object visitIndexedPluralAccessPath(SqmIndexedCollectionAccessPath<?> path)
- Specified by:
visitIndexedPluralAccessPathin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitIndexedPluralAccessPathin classBaseSemanticQueryWalker
-
visitMapEntryFunction
public Object visitMapEntryFunction(SqmMapEntryReference<?,?> entryRef)
- Specified by:
visitMapEntryFunctionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitMapEntryFunctionin 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:SqmToSqlAstConverterReturns 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:
isInTypeInferencein interfaceSqmToSqlAstConverter
-
resolveFunctionImpliedReturnType
public MappingModelExpressible<?> resolveFunctionImpliedReturnType()
Description copied from interface:SqmToSqlAstConverterReturns 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:
resolveFunctionImpliedReturnTypein interfaceSqmToSqlAstConverter
-
visitLiteral
public Expression visitLiteral(SqmLiteral<?> literal)
- Specified by:
visitLiteralin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitLiteralin classBaseSemanticQueryWalker
-
visitHqlNumericLiteral
public <N extends Number> Expression visitHqlNumericLiteral(SqmHqlNumericLiteral<N> numericLiteral)
- Specified by:
visitHqlNumericLiteralin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitHqlNumericLiteralin classBaseSemanticQueryWalker
-
getJdbcParamsBySqmParam
public Map<SqmParameter<?>,List<List<JdbcParameter>>> getJdbcParamsBySqmParam()
Description copied from interface:JdbcParameterBySqmParameterAccessThe mapping between an SqmParameter and all of its JDBC parameters- Specified by:
getJdbcParamsBySqmParamin interfaceJdbcParameterBySqmParameterAccess
-
visitNamedParameterExpression
public Expression visitNamedParameterExpression(SqmNamedParameter<?> expression)
- Specified by:
visitNamedParameterExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitNamedParameterExpressionin 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:
determineValueMappingin interfaceSqmToSqlAstConverter
-
getInferredValueMapping
protected MappingModelExpressible<?> getInferredValueMapping()
-
determineValueMapping
protected MappingModelExpressible<?> determineValueMapping(SqmParameter<?> sqmParameter)
-
visitPositionalParameterExpression
public Object visitPositionalParameterExpression(SqmPositionalParameter<?> expression)
- Specified by:
visitPositionalParameterExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitPositionalParameterExpressionin classBaseSemanticQueryWalker
-
visitJpaCriteriaParameter
public Object visitJpaCriteriaParameter(JpaCriteriaParameter<?> expression)
- Specified by:
visitJpaCriteriaParameterin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitJpaCriteriaParameterin classBaseSemanticQueryWalker
-
visitTuple
public Object visitTuple(SqmTuple<?> sqmTuple)
- Specified by:
visitTuplein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitTuplein classBaseSemanticQueryWalker
-
visitCollation
public Object visitCollation(SqmCollation sqmCollation)
- Specified by:
visitCollationin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitCollationin classBaseSemanticQueryWalker
-
visitFunction
public Expression visitFunction(SqmFunction<?> sqmFunction)
- Specified by:
visitFunctionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitFunctionin classBaseSemanticQueryWalker
-
registerQueryTransformer
public void registerQueryTransformer(QueryTransformer transformer)
- Specified by:
registerQueryTransformerin interfaceSqmToSqlAstConverter
-
visitStar
public Star visitStar(SqmStar sqmStar)
- Specified by:
visitStarin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitStarin classBaseSemanticQueryWalker
-
visitOver
public Object visitOver(SqmOver<?> over)
- Specified by:
visitOverin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitOverin classBaseSemanticQueryWalker
-
visitDistinct
public Object visitDistinct(SqmDistinct<?> sqmDistinct)
- Specified by:
visitDistinctin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitDistinctin classBaseSemanticQueryWalker
-
visitOverflow
public Object visitOverflow(SqmOverflow<?> sqmOverflow)
- Specified by:
visitOverflowin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitOverflowin classBaseSemanticQueryWalker
-
visitTrimSpecification
public Object visitTrimSpecification(SqmTrimSpecification specification)
- Specified by:
visitTrimSpecificationin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitTrimSpecificationin classBaseSemanticQueryWalker
-
visitCastTarget
public Object visitCastTarget(SqmCastTarget<?> target)
- Specified by:
visitCastTargetin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitCastTargetin classBaseSemanticQueryWalker
-
visitExtractUnit
public Object visitExtractUnit(SqmExtractUnit<?> unit)
- Specified by:
visitExtractUnitin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitExtractUnitin classBaseSemanticQueryWalker
-
visitDurationUnit
public Object visitDurationUnit(SqmDurationUnit<?> unit)
- Specified by:
visitDurationUnitin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitDurationUnitin classBaseSemanticQueryWalker
-
visitFormat
public Object visitFormat(SqmFormat sqmFormat)
- Specified by:
visitFormatin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitFormatin classBaseSemanticQueryWalker
-
visitCoalesce
public Object visitCoalesce(SqmCoalesce<?> sqmCoalesce)
- Specified by:
visitCoalescein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitCoalescein classBaseSemanticQueryWalker
-
visitUnaryOperationExpression
public Object visitUnaryOperationExpression(SqmUnaryOperation<?> expression)
- Specified by:
visitUnaryOperationExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitUnaryOperationExpressionin classBaseSemanticQueryWalker
-
visitBinaryArithmeticExpression
public Object visitBinaryArithmeticExpression(SqmBinaryArithmetic<?> expression)
- Specified by:
visitBinaryArithmeticExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitBinaryArithmeticExpressionin classBaseSemanticQueryWalker
-
visitToDuration
public Object visitToDuration(SqmToDuration<?> toDuration)
- Specified by:
visitToDurationin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitToDurationin classBaseSemanticQueryWalker
-
visitByUnit
public Object visitByUnit(SqmByUnit byUnit)
- Specified by:
visitByUnitin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitByUnitin classBaseSemanticQueryWalker
-
visitModifiedSubQueryExpression
public Object visitModifiedSubQueryExpression(SqmModifiedSubQueryExpression<?> expr)
- Specified by:
visitModifiedSubQueryExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitModifiedSubQueryExpressionin classBaseSemanticQueryWalker
-
visitSubQueryExpression
public SelectStatement visitSubQueryExpression(SqmSubQuery<?> sqmSubQuery)
- Specified by:
visitSubQueryExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitSubQueryExpressionin classBaseSemanticQueryWalker
-
visitSimpleCaseExpression
public CaseSimpleExpression visitSimpleCaseExpression(SqmCaseSimple<?,?> expression)
- Specified by:
visitSimpleCaseExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitSimpleCaseExpressionin classBaseSemanticQueryWalker
-
visitSearchedCaseExpression
public CaseSearchedExpression visitSearchedCaseExpression(SqmCaseSearched<?> expression)
- Specified by:
visitSearchedCaseExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitSearchedCaseExpressionin classBaseSemanticQueryWalker
-
visitWithInferredType
public Object visitWithInferredType(SqmVisitableNode node, Supplier<MappingModelExpressible<?>> inferredTypeAccess)
Description copied from interface:SqmToSqlAstConverterVisits the given node with the given inferred type access.- Specified by:
visitWithInferredTypein interfaceSqmToSqlAstConverter
-
visitAny
public Object visitAny(SqmAny<?> sqmAny)
- Specified by:
visitAnyin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitAnyin classBaseSemanticQueryWalker
-
visitEvery
public Object visitEvery(SqmEvery<?> sqmEvery)
- Specified by:
visitEveryin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitEveryin classBaseSemanticQueryWalker
-
visitSummarization
public Object visitSummarization(SqmSummarization<?> sqmSummarization)
- Specified by:
visitSummarizationin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitSummarizationin classBaseSemanticQueryWalker
-
visitEntityTypeLiteralExpression
public Expression visitEntityTypeLiteralExpression(SqmLiteralEntityType<?> sqmExpression)
- Specified by:
visitEntityTypeLiteralExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitEntityTypeLiteralExpressionin classBaseSemanticQueryWalker
-
visitEmbeddableTypeLiteralExpression
public Object visitEmbeddableTypeLiteralExpression(SqmLiteralEmbeddableType<?> expression)
- Specified by:
visitEmbeddableTypeLiteralExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitEmbeddableTypeLiteralExpressionin classBaseSemanticQueryWalker
-
visitAnyDiscriminatorTypeValueExpression
public Expression visitAnyDiscriminatorTypeValueExpression(SqmAnyDiscriminatorValue<?> expression)
- Specified by:
visitAnyDiscriminatorTypeValueExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitAnyDiscriminatorTypeValueExpressionin classBaseSemanticQueryWalker
-
visitParameterizedEntityTypeExpression
public Expression visitParameterizedEntityTypeExpression(SqmParameterizedEntityType<?> sqmExpression)
- Specified by:
visitParameterizedEntityTypeExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitParameterizedEntityTypeExpressionin classBaseSemanticQueryWalker
-
visitEnumLiteral
public Object visitEnumLiteral(SqmEnumLiteral<?> sqmEnumLiteral)
- Specified by:
visitEnumLiteralin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitEnumLiteralin classBaseSemanticQueryWalker
-
visitFieldLiteral
public Object visitFieldLiteral(SqmFieldLiteral<?> sqmFieldLiteral)
- Specified by:
visitFieldLiteralin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitFieldLiteralin classBaseSemanticQueryWalker
-
visitNestedTopLevelPredicate
public Predicate visitNestedTopLevelPredicate(SqmPredicate predicate)
- Specified by:
visitNestedTopLevelPredicatein interfaceSqmToSqlAstConverter
-
visitGroupedPredicate
public GroupedPredicate visitGroupedPredicate(SqmGroupedPredicate predicate)
- Specified by:
visitGroupedPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitGroupedPredicatein classBaseSemanticQueryWalker
-
visitJunctionPredicate
public Junction visitJunctionPredicate(SqmJunctionPredicate predicate)
- Specified by:
visitJunctionPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitJunctionPredicatein classBaseSemanticQueryWalker
-
visitMemberOfPredicate
public Predicate visitMemberOfPredicate(SqmMemberOfPredicate predicate)
- Specified by:
visitMemberOfPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitMemberOfPredicatein classBaseSemanticQueryWalker
-
visitNegatedPredicate
public NegatedPredicate visitNegatedPredicate(SqmNegatedPredicate predicate)
- Specified by:
visitNegatedPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitNegatedPredicatein classBaseSemanticQueryWalker
-
visitComparisonPredicate
public ComparisonPredicate visitComparisonPredicate(SqmComparisonPredicate predicate)
- Specified by:
visitComparisonPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitComparisonPredicatein classBaseSemanticQueryWalker
-
visitIsEmptyPredicate
public Object visitIsEmptyPredicate(SqmEmptinessPredicate predicate)
- Specified by:
visitIsEmptyPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitIsEmptyPredicatein classBaseSemanticQueryWalker
-
visitBetweenPredicate
public BetweenPredicate visitBetweenPredicate(SqmBetweenPredicate predicate)
- Specified by:
visitBetweenPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitBetweenPredicatein classBaseSemanticQueryWalker
-
visitLikePredicate
public LikePredicate visitLikePredicate(SqmLikePredicate predicate)
- Specified by:
visitLikePredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitLikePredicatein classBaseSemanticQueryWalker
-
visitIsNullPredicate
public NullnessPredicate visitIsNullPredicate(SqmNullnessPredicate predicate)
- Specified by:
visitIsNullPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitIsNullPredicatein classBaseSemanticQueryWalker
-
visitIsTruePredicate
public Object visitIsTruePredicate(SqmTruthnessPredicate predicate)
- Specified by:
visitIsTruePredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitIsTruePredicatein classBaseSemanticQueryWalker
-
visitInListPredicate
public Predicate visitInListPredicate(SqmInListPredicate<?> predicate)
- Specified by:
visitInListPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitInListPredicatein classBaseSemanticQueryWalker
-
visitInSubQueryPredicate
public InSubQueryPredicate visitInSubQueryPredicate(SqmInSubQueryPredicate<?> predicate)
- Specified by:
visitInSubQueryPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitInSubQueryPredicatein classBaseSemanticQueryWalker
-
visitBooleanExpressionPredicate
public Object visitBooleanExpressionPredicate(SqmBooleanExpressionPredicate predicate)
- Specified by:
visitBooleanExpressionPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitBooleanExpressionPredicatein classBaseSemanticQueryWalker
-
visitExistsPredicate
public Object visitExistsPredicate(SqmExistsPredicate predicate)
- Specified by:
visitExistsPredicatein interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitExistsPredicatein classBaseSemanticQueryWalker
-
getSqlAstCreationState
public SqlAstCreationState getSqlAstCreationState()
Description copied from interface:DomainResultCreationStateThe underlying state for SQL AST creation- Specified by:
getSqlAstCreationStatein interfaceDomainResultCreationState
-
visitFullyQualifiedClass
public Object visitFullyQualifiedClass(Class<?> namedClass)
- Specified by:
visitFullyQualifiedClassin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitFullyQualifiedClassin classBaseSemanticQueryWalker
-
visitAsWrapperExpression
public Object visitAsWrapperExpression(AsWrapperSqmExpression<?> sqmExpression)
- Specified by:
visitAsWrapperExpressionin interfaceSemanticQueryWalker<T extends Statement>- Overrides:
visitAsWrapperExpressionin classBaseSemanticQueryWalker
-
visitIdentifierFetch
public Fetch visitIdentifierFetch(EntityResultGraphNode fetchParent)
- Specified by:
visitIdentifierFetchin interfaceDomainResultCreationState
-
withNestedFetchParent
public <R> R withNestedFetchParent(FetchParent fetchParent, Function<FetchParent,R> action)
- Specified by:
withNestedFetchParentin interfaceDomainResultCreationState
-
visitFetches
public ImmutableFetchList visitFetches(FetchParent fetchParent)
Description copied from interface:DomainResultCreationStateVisit 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:
visitFetchesin interfaceDomainResultCreationState
-
applyOrdering
public void applyOrdering(TableGroup tableGroup, OrderByFragment orderByFragment)
- Specified by:
applyOrderingin interfaceSqlAstCreationState
-
resolveMetadata
public <S,M> M resolveMetadata(S source, Function<S,M> producer)Description copied from interface:SqmToSqlAstConverterResolve a generic metadata object from the provided source, using the specified producer.- Specified by:
resolveMetadatain interfaceSqmToSqlAstConverter
-
isResolvingCircularFetch
public boolean isResolvingCircularFetch()
- Specified by:
isResolvingCircularFetchin interfaceDomainResultCreationState
-
setResolvingCircularFetch
public void setResolvingCircularFetch(boolean resolvingCircularFetch)
- Specified by:
setResolvingCircularFetchin interfaceDomainResultCreationState
-
getCurrentlyResolvingForeignKeyPart
public ForeignKeyDescriptor.Nature getCurrentlyResolvingForeignKeyPart()
Description copied from interface:DomainResultCreationStateReturns the part of the foreign key that is currently being resolved, ornullif no foreign key is currently being resolved.- Specified by:
getCurrentlyResolvingForeignKeyPartin interfaceDomainResultCreationState
-
setCurrentlyResolvingForeignKeyPart
public void setCurrentlyResolvingForeignKeyPart(ForeignKeyDescriptor.Nature currentlyResolvingForeignKeySide)
- Specified by:
setCurrentlyResolvingForeignKeyPartin interfaceDomainResultCreationState
-
expandSelfRenderingFunctionMultiValueParameter
public List<Expression> expandSelfRenderingFunctionMultiValueParameter(SqmParameter<?> sqmParameter)
- Specified by:
expandSelfRenderingFunctionMultiValueParameterin interfaceSqmToSqlAstConverter
-
registerVisitedAssociationKey
public boolean registerVisitedAssociationKey(AssociationKey associationKey)
Description copied from interface:DomainResultCreationStateRegisters a circularity detection key- Specified by:
registerVisitedAssociationKeyin interfaceDomainResultCreationState
-
removeVisitedAssociationKey
public void removeVisitedAssociationKey(AssociationKey associationKey)
Description copied from interface:DomainResultCreationStateRemoves the registration of a circularity detection key- Specified by:
removeVisitedAssociationKeyin interfaceDomainResultCreationState
-
isAssociationKeyVisited
public boolean isAssociationKeyVisited(AssociationKey associationKey)
Description copied from interface:DomainResultCreationStateChecks whether the given circularityKey is registered- Specified by:
isAssociationKeyVisitedin interfaceDomainResultCreationState
-
isRegisteringVisitedAssociationKeys
public boolean isRegisteringVisitedAssociationKeys()
Description copied from interface:DomainResultCreationStateIs this state accepting circularity detection keys?- Specified by:
isRegisteringVisitedAssociationKeysin interfaceDomainResultCreationState
-
-