Top Fields Constructors Methods
org.hibernate.query.sqm.tree.jpa

public Class ParameterCollector

extends BaseSemanticQueryWalker
Class Inheritance
Imports
java.util.Collections, .HashSet, .Set, java.util.function.Consumer, org.hibernate.query.BindableType, org.hibernate.query.sqm.SqmExpressible, org.hibernate.query.sqm.spi.BaseSemanticQueryWalker, org.hibernate.query.sqm.tree.SqmExpressibleAccessor, .SqmStatement, .SqmVisitableNode, org.hibernate.query.sqm.tree.domain.SqmIndexedCollectionAccessPath, org.hibernate.query.sqm.tree.expression.JpaCriteriaParameter, .SqmCaseSearched, .SqmCaseSimple, .SqmExpression, .SqmFunction, .SqmJpaCriteriaParameterWrapper, .SqmNamedParameter, .SqmParameter, .SqmPositionalParameter, org.hibernate.query.sqm.tree.predicate.SqmBetweenPredicate, .SqmComparisonPredicate, .SqmEmptinessPredicate, .SqmInListPredicate, .SqmInSubQueryPredicate, .SqmLikePredicate, .SqmMemberOfPredicate, .SqmNullnessPredicate, .SqmTruthnessPredicate, org.hibernate.query.sqm.tree.select.SqmSelectStatement

Author
Steve Ebersole

Field Summary

Modifier and TypeField and Description
private final Consumer<SqmParameter<?>>
private SqmExpressibleAccessor<?>
private Set<SqmParameter<?>>

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static Set<SqmParameter<?>>
public static Set<SqmParameter<?>>
private static SqmExpressibleAccessor<?>
private <T> BindableType<T>
private SqmExpressibleAccessor<?>
private <T> SqmExpressibleAccessor<T>
public Object
public Object
public Object
public Object
public Object
public Object
public Object
public Object
public Object
public SqmJpaCriteriaParameterWrapper<?>
public Object
public Object
public Object
private <T extends SqmParameter<?>> T
visitParameter(T param)

private <T> SqmJpaCriteriaParameterWrapper<T>
public Object
public Object
public Object
private <T> void
withTypeInference(SqmExpressibleAccessor<T> inferenceBasis, SqmVisitableNode sqmVisitableNode)

Inherited from org.hibernate.query.sqm.spi.BaseSemanticQueryWalker:
consumeAttributeJoinconsumeCrossJoinconsumeCteJoinconsumeDerivedJoinconsumeEntityJoinconsumeExplicitJoinconsumeExplicitJoinsconsumeFromClauseRootconsumePluralPartJoinconsumeTreatvisitAnyvisitAnyDiscriminatorTypeExpressionvisitAnyDiscriminatorTypeValueExpressionvisitAnyValuedValuedPathvisitAssignmentvisitBasicValuedPathvisitBinaryArithmeticExpressionvisitBooleanExpressionPredicatevisitByUnitvisitCastTargetvisitCoalescevisitCollationvisitCorrelationvisitCrossJoinvisitCteContainervisitCteStatementvisitDeleteStatementvisitDiscriminatorPathvisitDistinctvisitDurationUnitvisitDynamicInstantiationvisitElementAggregateFunctionvisitEmbeddableValuedPathvisitEntityTypeLiteralExpressionvisitEntityValuedPathvisitEnumLiteralvisitEveryvisitExistsPredicatevisitExtractUnitvisitFetchExpressionvisitFieldLiteralvisitFkExpressionvisitFormatvisitFromClausevisitFullyQualifiedClassvisitGroupByClausevisitGroupedPredicatevisitHavingClausevisitHqlNumericLiteralvisitIndexAggregateFunctionvisitInsertSelectStatementvisitInsertValuesStatementvisitJpaCompoundSelectionvisitJunctionPredicatevisitLiteralvisitMapEntryFunctionvisitModifiedSubQueryExpressionvisitNegatedPredicatevisitNonAggregatedCompositeValuedPathvisitOffsetExpressionvisitOrderByClausevisitOvervisitOverflowvisitParameterizedEntityTypeExpressionvisitPluralAttributeSizeFunctionvisitPluralPartJoinvisitPluralValuedPathvisitQualifiedAttributeJoinvisitQualifiedCteJoinvisitQualifiedDerivedJoinvisitQualifiedEntityJoinvisitQueryGroupvisitQueryPartvisitQuerySpecvisitRootCtevisitRootDerivedvisitRootPathvisitSelectClausevisitSelectionvisitSelectQueryvisitSelectStatementvisitSetClausevisitSortSpecificationvisitStarvisitSubQueryExpressionvisitSummarizationvisitToDurationvisitTreatedPathvisitTrimSpecificationvisitTuplevisitUnaryOperationExpressionvisitUpdateStatementvisitValuesvisitWhereClausevisitWindow

Field Detail

consumerback to summary
private final Consumer<SqmParameter<?>> consumer
inferenceBasisback to summary
private SqmExpressibleAccessor<?> inferenceBasis
parameterExpressionsback to summary
private Set<SqmParameter<?>> parameterExpressions

Constructor Detail

ParameterCollectorback to summary
private ParameterCollector(Consumer<SqmParameter<?>> consumer)

Method Detail

collectParametersback to summary
public static Set<SqmParameter<?>> collectParameters(SqmStatement<?> statement)
collectParametersback to summary
public static Set<SqmParameter<?>> collectParameters(SqmStatement<?> statement, Consumer<SqmParameter<?>> consumer)
getInferenceBasisback to summary
private static SqmExpressibleAccessor<?> getInferenceBasis(SqmExpressibleAccessor<?> inferenceSupplier, SqmExpressibleAccessor<?> resolved)
getInferredParameterTypeback to summary
private <T> BindableType<T> getInferredParameterType(JpaCriteriaParameter<?> expression)
highestPrecedenceback to summary
private SqmExpressibleAccessor<?> highestPrecedence(SqmExpressibleAccessor<?> type1, SqmExpressibleAccessor<?> type2)
toExpressibleAccessorback to summary
private <T> SqmExpressibleAccessor<T> toExpressibleAccessor(SqmExpression<T> expression)
visitBetweenPredicateback to summary
public Object visitBetweenPredicate(SqmBetweenPredicate predicate)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitBetweenPredicate.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitBetweenPredicate.

Annotations
@Override
visitComparisonPredicateback to summary
public Object visitComparisonPredicate(SqmComparisonPredicate predicate)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitComparisonPredicate.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitComparisonPredicate.

Annotations
@Override
visitFunctionback to summary
public Object visitFunction(SqmFunction<?> sqmFunction)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitFunction.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitFunction.

Annotations
@Override
visitIndexedPluralAccessPathback to summary
public Object visitIndexedPluralAccessPath(SqmIndexedCollectionAccessPath<?> path)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitIndexedPluralAccessPath.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitIndexedPluralAccessPath.

Annotations
@Override
visitInListPredicateback to summary
public Object visitInListPredicate(SqmInListPredicate<?> predicate)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitInListPredicate.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitInListPredicate.

Annotations
@Override
visitInSubQueryPredicateback to summary
public Object visitInSubQueryPredicate(SqmInSubQueryPredicate<?> predicate)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitInSubQueryPredicate.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitInSubQueryPredicate.

Annotations
@Override
visitIsEmptyPredicateback to summary
public Object visitIsEmptyPredicate(SqmEmptinessPredicate predicate)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitIsEmptyPredicate.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitIsEmptyPredicate.

Annotations
@Override
visitIsNullPredicateback to summary
public Object visitIsNullPredicate(SqmNullnessPredicate predicate)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitIsNullPredicate.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitIsNullPredicate.

Annotations
@Override
visitIsTruePredicateback to summary
public Object visitIsTruePredicate(SqmTruthnessPredicate predicate)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitIsTruePredicate.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitIsTruePredicate.

Annotations
@Override
visitJpaCriteriaParameterback to summary
public SqmJpaCriteriaParameterWrapper<?> visitJpaCriteriaParameter(JpaCriteriaParameter<?> expression)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitJpaCriteriaParameter.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitJpaCriteriaParameter.

This is called while performing an in-flight parameter collection of parameters for jakarta.persistence.criteria.CriteriaQuery#getParameters. That method can be called multiple times and the parameters may have changed in between each call - therefore the parameters must be collected dynamically each time. This form simply returns the JpaCriteriaParameter.

Annotations
@Override
See Also
SqmSelectStatement#resolveParameters()
visitLikePredicateback to summary
public Object visitLikePredicate(SqmLikePredicate predicate)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitLikePredicate.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitLikePredicate.

Annotations
@Override
visitMemberOfPredicateback to summary
public Object visitMemberOfPredicate(SqmMemberOfPredicate predicate)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitMemberOfPredicate.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitMemberOfPredicate.

Annotations
@Override
visitNamedParameterExpressionback to summary
public Object visitNamedParameterExpression(SqmNamedParameter<?> expression)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitNamedParameterExpression.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitNamedParameterExpression.

Annotations
@Override
visitParameterback to summary
private <T extends SqmParameter<?>> T visitParameter(T param)
visitParameterback to summary
private <T> SqmJpaCriteriaParameterWrapper<T> visitParameter(SqmJpaCriteriaParameterWrapper<T> param)
visitPositionalParameterExpressionback to summary
public Object visitPositionalParameterExpression(SqmPositionalParameter<?> expression)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitPositionalParameterExpression.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitPositionalParameterExpression.

Annotations
@Override
visitSearchedCaseExpressionback to summary
public Object visitSearchedCaseExpression(SqmCaseSearched<?> expression)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitSearchedCaseExpression.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitSearchedCaseExpression.

Annotations
@Override
visitSimpleCaseExpressionback to summary
public Object visitSimpleCaseExpression(SqmCaseSimple<?, ?> expression)

Overrides org.hibernate.query.sqm.spi.BaseSemanticQueryWalker.visitSimpleCaseExpression.

Implements org.hibernate.query.sqm.SemanticQueryWalker.visitSimpleCaseExpression.

Annotations
@Override
withTypeInferenceback to summary
private <T> void withTypeInference(SqmExpressibleAccessor<T> inferenceBasis, SqmVisitableNode sqmVisitableNode)