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
Modifier and TypeClassDescriptionstatic final class
The data structure representing a join. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetJoins()
Returns required query joins.void
joinIfNeeded
(PersistentPropertyPath<?> persistentPropertyPath) Join property relationships if needed.void
visit
(BinaryExpression<?> binaryExpression) VisitBinaryExpression
.void
visit
(FunctionExpression<?> functionExpression) VisitFunctionExpression
.void
visit
(IdExpression<?, ?> idExpression) VisitIdExpression
.void
visit
(LiteralExpression<?> literalExpression) VisitLiteralExpression
.void
visit
(UnaryExpression<?> unaryExpression) VisitUnaryExpression
.void
visit
(BetweenPredicate propertyBetweenPredicate) VisitBetweenPredicate
.void
visit
(BinaryPredicate binaryPredicate) VisitBinaryPredicate
.void
visit
(ConjunctionPredicate conjunction) VisitConjunctionPredicate
.void
visit
(DisjunctionPredicate disjunction) VisitDisjunctionPredicate
.void
visit
(ExistsSubqueryPredicate existsSubqueryPredicate) VisitExistsSubqueryPredicate
.void
visit
(InPredicate<?> inPredicate) VisitInPredicate
.void
visit
(LikePredicate likePredicate) VisitLikePredicate
.void
visit
(NegatedPredicate negate) VisitNegatedPredicate
.void
visit
(UnaryPredicate propertyOp) VisitUnaryPredicate
.void
visit
(AliasedSelection<?> aliasedSelection) VisitAliasedSelection
.void
visit
(CompoundSelection<?> compoundSelection) VisitCompoundSelection
.void
visit
(PersistentEntityRoot<?> entityRoot) VisitPersistentEntityRoot
.void
visit
(PersistentEntitySubquery<?> subquery) VisitPersistentEntitySubquery
.void
visit
(PersistentPropertyPath<?> persistentPropertyPath) VisitPersistentPropertyPath
.void
visit
(jakarta.persistence.criteria.Predicate predicate) VisitPredicate
.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods 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:ExpressionVisitor
VisitPersistentEntityRoot
.- Specified by:
visit
in interfaceExpressionVisitor
- Parameters:
entityRoot
- The entityRoot
-
visit
Description copied from interface:ExpressionVisitor
VisitPersistentEntitySubquery
.- Specified by:
visit
in interfaceExpressionVisitor
- Parameters:
subquery
- The subquery
-
visit
Description copied from interface:ExpressionVisitor
VisitPersistentPropertyPath
.- Specified by:
visit
in interfaceExpressionVisitor
- Parameters:
persistentPropertyPath
- The persistentPropertyPath
-
visit
public void visit(jakarta.persistence.criteria.Predicate predicate) Description copied from interface:ExpressionVisitor
VisitPredicate
.- Specified by:
visit
in interfaceExpressionVisitor
- Parameters:
predicate
- The predicate
-
visit
Description copied from interface:SelectionVisitor
VisitAliasedSelection
.- Specified by:
visit
in interfaceSelectionVisitor
- Parameters:
aliasedSelection
- The aliasedSelection
-
visit
Description copied from interface:SelectionVisitor
VisitCompoundSelection
.- Specified by:
visit
in interfaceSelectionVisitor
- Parameters:
compoundSelection
- The compoundSelection
-
visit
Description copied from interface:ExpressionVisitor
VisitLiteralExpression
.- Specified by:
visit
in interfaceExpressionVisitor
- Parameters:
literalExpression
- The literalExpression
-
visit
Description copied from interface:ExpressionVisitor
VisitIdExpression
.- Specified by:
visit
in interfaceExpressionVisitor
- Parameters:
idExpression
- The idExpression
-
visit
Description copied from interface:ExpressionVisitor
VisitUnaryExpression
.- Specified by:
visit
in interfaceExpressionVisitor
- Parameters:
unaryExpression
- The unary expression
-
visit
Description copied from interface:ExpressionVisitor
VisitBinaryExpression
.- Specified by:
visit
in interfaceExpressionVisitor
- Parameters:
binaryExpression
- The aggregateExpression
-
visit
Description copied from interface:ExpressionVisitor
VisitFunctionExpression
.- Specified by:
visit
in interfaceExpressionVisitor
- Parameters:
functionExpression
- The function expression
-
visit
Description copied from interface:PredicateVisitor
VisitConjunctionPredicate
.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
conjunction
- The conjunction
-
visit
Description copied from interface:PredicateVisitor
VisitDisjunctionPredicate
.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
disjunction
- The disjunction
-
visit
Description copied from interface:PredicateVisitor
VisitNegatedPredicate
.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
negate
- The negated predicate
-
visit
Description copied from interface:PredicateVisitor
VisitUnaryPredicate
.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
propertyOp
- The unary predicate
-
visit
Description copied from interface:PredicateVisitor
VisitBetweenPredicate
.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
propertyBetweenPredicate
- The between predicate
-
visit
Description copied from interface:PredicateVisitor
VisitBinaryPredicate
.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
binaryPredicate
- The binary predicate
-
visit
Description copied from interface:PredicateVisitor
VisitInPredicate
.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
inPredicate
- The IN predicate
-
visit
Description copied from interface:PredicateVisitor
VisitLikePredicate
.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
likePredicate
- The like predicate
-
visit
Description copied from interface:PredicateVisitor
VisitExistsSubqueryPredicate
.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
existsSubqueryPredicate
- The exists subquery predicate
-