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
(ConjunctionPredicate conjunction) VisitConjunctionPredicate
.void
visit
(DisjunctionPredicate disjunction) VisitDisjunctionPredicate
.void
visit
(ExpressionBinaryPredicate expressionBinaryPredicate) VisitExpressionBinaryPredicate
.void
visit
(LikePredicate likePredicate) VisitLikePredicate
.void
visit
(NegatedPredicate negate) VisitNegatedPredicate
.void
visit
(PersistentPropertyBetweenPredicate<?> propertyBetweenPredicate) void
visit
(PersistentPropertyBinaryPredicate<?> propertyToExpressionOp) void
visit
(PersistentPropertyInPredicate<?> inValues) void
visit
(PersistentPropertyUnaryPredicate<?> propertyOp) void
visit
(AliasedSelection<?> aliasedSelection) VisitAliasedSelection
.void
visit
(CompoundSelection<?> compoundSelection) VisitCompoundSelection
.void
visit
(PersistentEntityRoot<?> entityRoot) VisitPersistentEntityRoot
.void
visit
(PersistentPropertyPath<?> persistentPropertyPath) VisitPersistentPropertyPath
.void
visit
(jakarta.persistence.criteria.Predicate predicate) VisitPredicate
.
-
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
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 negate
-
visit
Description copied from interface:PredicateVisitor
- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
propertyOp
- The propertyOp
-
visit
Description copied from interface:PredicateVisitor
- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
propertyBetweenPredicate
- The propertyBetweenPredicate
-
visit
Description copied from interface:PredicateVisitor
- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
propertyToExpressionOp
- The propertyToExpressionOp
-
visit
Description copied from interface:PredicateVisitor
- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
inValues
- The propertyIn
-
visit
Description copied from interface:PredicateVisitor
VisitExpressionBinaryPredicate
.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
expressionBinaryPredicate
- The expressionBinaryPredicate
-
visit
Description copied from interface:PredicateVisitor
VisitLikePredicate
.- Specified by:
visit
in interfacePredicateVisitor
- Parameters:
likePredicate
- The like predicate
-