Class Joiner
java.lang.Object
io.micronaut.data.model.jpa.criteria.impl.util.Joiner
- All Implemented Interfaces:
ExpressionVisitor,PredicateVisitor,SelectionVisitor
Traversing the query selection and predicates and extracting required query joins.
- Since:
- 3.2
- Author:
- Denis Stepanov
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classThe data structure representing a join. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetJoins()Returns required query joins.voidjoinIfNeeded(PersistentPropertyPath<?> persistentPropertyPath) Join property relationships if needed.voidvisit(BinaryExpression<?> binaryExpression) VisitBinaryExpression.voidvisit(FunctionExpression<?> functionExpression) VisitFunctionExpression.voidvisit(IdExpression<?, ?> idExpression) VisitIdExpression.voidvisit(LiteralExpression<?> literalExpression) VisitLiteralExpression.voidvisit(UnaryExpression<?> unaryExpression) VisitUnaryExpression.voidvisit(BetweenPredicate propertyBetweenPredicate) VisitBetweenPredicate.voidvisit(BinaryPredicate binaryPredicate) VisitBinaryPredicate.voidvisit(ConjunctionPredicate conjunction) VisitConjunctionPredicate.voidvisit(DisjunctionPredicate disjunction) VisitDisjunctionPredicate.voidvisit(ExistsSubqueryPredicate existsSubqueryPredicate) VisitExistsSubqueryPredicate.voidvisit(InPredicate<?> inPredicate) VisitInPredicate.voidvisit(LikePredicate likePredicate) VisitLikePredicate.voidvisit(NegatedPredicate negate) VisitNegatedPredicate.voidvisit(UnaryPredicate propertyOp) VisitUnaryPredicate.voidvisit(AliasedSelection<?> aliasedSelection) VisitAliasedSelection.voidvisit(CompoundSelection<?> compoundSelection) VisitCompoundSelection.voidvisit(PersistentEntityRoot<?> entityRoot) VisitPersistentEntityRoot.voidvisit(PersistentEntitySubquery<?> subquery) VisitPersistentEntitySubquery.voidvisit(PersistentPropertyPath<?> persistentPropertyPath) VisitPersistentPropertyPath.voidvisit(jakarta.persistence.criteria.Predicate predicate) VisitPredicate.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.micronaut.data.model.jpa.criteria.impl.SelectionVisitor
visit, visit
-
Constructor Details
-
Joiner
public Joiner()
-
-
Method Details
-
getJoins
Returns required query joins.- Returns:
- The joins
-
joinIfNeeded
Join property relationships if needed.- Parameters:
persistentPropertyPath- The property
-
visit
Description copied from interface:ExpressionVisitorVisitPersistentEntityRoot.- Specified by:
visitin interfaceExpressionVisitor- Parameters:
entityRoot- The entityRoot
-
visit
Description copied from interface:ExpressionVisitorVisitPersistentEntitySubquery.- Specified by:
visitin interfaceExpressionVisitor- Parameters:
subquery- The subquery
-
visit
Description copied from interface:ExpressionVisitorVisitPersistentPropertyPath.- Specified by:
visitin interfaceExpressionVisitor- Parameters:
persistentPropertyPath- The persistentPropertyPath
-
visit
public void visit(jakarta.persistence.criteria.Predicate predicate) Description copied from interface:ExpressionVisitorVisitPredicate.- Specified by:
visitin interfaceExpressionVisitor- Parameters:
predicate- The predicate
-
visit
Description copied from interface:SelectionVisitorVisitAliasedSelection.- Specified by:
visitin interfaceSelectionVisitor- Parameters:
aliasedSelection- The aliasedSelection
-
visit
Description copied from interface:SelectionVisitorVisitCompoundSelection.- Specified by:
visitin interfaceSelectionVisitor- Parameters:
compoundSelection- The compoundSelection
-
visit
Description copied from interface:ExpressionVisitorVisitLiteralExpression.- Specified by:
visitin interfaceExpressionVisitor- Parameters:
literalExpression- The literalExpression
-
visit
Description copied from interface:ExpressionVisitorVisitIdExpression.- Specified by:
visitin interfaceExpressionVisitor- Parameters:
idExpression- The idExpression
-
visit
Description copied from interface:ExpressionVisitorVisitUnaryExpression.- Specified by:
visitin interfaceExpressionVisitor- Parameters:
unaryExpression- The unary expression
-
visit
Description copied from interface:ExpressionVisitorVisitBinaryExpression.- Specified by:
visitin interfaceExpressionVisitor- Parameters:
binaryExpression- The aggregateExpression
-
visit
Description copied from interface:ExpressionVisitorVisitFunctionExpression.- Specified by:
visitin interfaceExpressionVisitor- Parameters:
functionExpression- The function expression
-
visit
Description copied from interface:PredicateVisitorVisitConjunctionPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
conjunction- The conjunction
-
visit
Description copied from interface:PredicateVisitorVisitDisjunctionPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
disjunction- The disjunction
-
visit
Description copied from interface:PredicateVisitorVisitNegatedPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
negate- The negated predicate
-
visit
Description copied from interface:PredicateVisitorVisitUnaryPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
propertyOp- The unary predicate
-
visit
Description copied from interface:PredicateVisitorVisitBetweenPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
propertyBetweenPredicate- The between predicate
-
visit
Description copied from interface:PredicateVisitorVisitBinaryPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
binaryPredicate- The binary predicate
-
visit
Description copied from interface:PredicateVisitorVisitInPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
inPredicate- The IN predicate
-
visit
Description copied from interface:PredicateVisitorVisitLikePredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
likePredicate- The like predicate
-
visit
Description copied from interface:PredicateVisitorVisitExistsSubqueryPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
existsSubqueryPredicate- The exists subquery predicate
-