Class Joiner
- java.lang.Object
-
- io.micronaut.data.model.jpa.criteria.impl.util.Joiner
-
- All Implemented Interfaces:
PredicateVisitor,SelectionVisitor
@Internal public class Joiner extends java.lang.Object implements SelectionVisitor, PredicateVisitor
Traversing the query selection and predicates and extracting required query joins.- Since:
- 3.2
- Author:
- Denis Stepanov
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classJoiner.JoinedThe data structure representing a join.
-
Constructor Summary
Constructors Constructor Description Joiner()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Map<java.lang.String,Joiner.Joined>getJoins()Returns required query joins.voidjoinIfNeeded(PersistentPropertyPath<?> persistentPropertyPath)Join property relationships if needed.voidvisit(IdExpression<?,?> idExpression)VisitIdExpression.voidvisit(LiteralExpression<?> literalExpression)VisitLiteralExpression.voidvisit(ConjunctionPredicate conjunction)VisitConjunctionPredicate.voidvisit(DisjunctionPredicate disjunction)VisitDisjunctionPredicate.voidvisit(ExpressionBinaryPredicate expressionBinaryPredicate)VisitExpressionBinaryPredicate.voidvisit(NegatedPredicate negate)VisitNegatedPredicate.voidvisit(PersistentPropertyBetweenPredicate<?> propertyBetweenPredicate)voidvisit(PersistentPropertyBinaryPredicate<?> propertyToExpressionOp)voidvisit(PersistentPropertyInPredicate<?> propertyIn)voidvisit(PersistentPropertyInValuesPredicate<?> inValues)voidvisit(PersistentPropertyUnaryPredicate<?> propertyOp)voidvisit(AggregateExpression<?,?> aggregateExpression)VisitAggregateExpression.voidvisit(AliasedSelection<?> aliasedSelection)VisitAliasedSelection.voidvisit(CompoundSelection<?> compoundSelection)VisitCompoundSelection.voidvisit(PersistentEntityRoot<?> entityRoot)VisitPersistentEntityRoot.voidvisit(PersistentPropertyPath<?> persistentPropertyPath)VisitPersistentPropertyPath.voidvisit(jakarta.persistence.criteria.Predicate predicate)VisitPredicate.
-
-
-
Method Detail
-
getJoins
public java.util.Map<java.lang.String,Joiner.Joined> getJoins()
Returns required query joins.- Returns:
- The joins
-
joinIfNeeded
public void joinIfNeeded(PersistentPropertyPath<?> persistentPropertyPath)
Join property relationships if needed.- Parameters:
persistentPropertyPath- The property
-
visit
public void visit(PersistentEntityRoot<?> entityRoot)
Description copied from interface:SelectionVisitorVisitPersistentEntityRoot.- Specified by:
visitin interfaceSelectionVisitor- Parameters:
entityRoot- The entityRoot
-
visit
public void visit(PersistentPropertyPath<?> persistentPropertyPath)
Description copied from interface:SelectionVisitorVisitPersistentPropertyPath.- Specified by:
visitin interfaceSelectionVisitor- Parameters:
persistentPropertyPath- The persistentPropertyPath
-
visit
public void visit(jakarta.persistence.criteria.Predicate predicate)
Description copied from interface:SelectionVisitorVisitPredicate.- Specified by:
visitin interfaceSelectionVisitor- Parameters:
predicate- The predicate
-
visit
public void visit(AliasedSelection<?> aliasedSelection)
Description copied from interface:SelectionVisitorVisitAliasedSelection.- Specified by:
visitin interfaceSelectionVisitor- Parameters:
aliasedSelection- The aliasedSelection
-
visit
public void visit(CompoundSelection<?> compoundSelection)
Description copied from interface:SelectionVisitorVisitCompoundSelection.- Specified by:
visitin interfaceSelectionVisitor- Parameters:
compoundSelection- The compoundSelection
-
visit
public void visit(LiteralExpression<?> literalExpression)
Description copied from interface:SelectionVisitorVisitLiteralExpression.- Specified by:
visitin interfaceSelectionVisitor- Parameters:
literalExpression- The literalExpression
-
visit
public void visit(IdExpression<?,?> idExpression)
Description copied from interface:SelectionVisitorVisitIdExpression.- Specified by:
visitin interfaceSelectionVisitor- Parameters:
idExpression- The idExpression
-
visit
public void visit(AggregateExpression<?,?> aggregateExpression)
Description copied from interface:SelectionVisitorVisitAggregateExpression.- Specified by:
visitin interfaceSelectionVisitor- Parameters:
aggregateExpression- The aggregateExpression
-
visit
public void visit(ConjunctionPredicate conjunction)
Description copied from interface:PredicateVisitorVisitConjunctionPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
conjunction- The conjunction
-
visit
public void visit(DisjunctionPredicate disjunction)
Description copied from interface:PredicateVisitorVisitDisjunctionPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
disjunction- The disjunction
-
visit
public void visit(NegatedPredicate negate)
Description copied from interface:PredicateVisitorVisitNegatedPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
negate- The negate
-
visit
public void visit(PersistentPropertyInPredicate<?> propertyIn)
Description copied from interface:PredicateVisitor- Specified by:
visitin interfacePredicateVisitor- Parameters:
propertyIn- The propertyIn
-
visit
public void visit(PersistentPropertyUnaryPredicate<?> propertyOp)
Description copied from interface:PredicateVisitor- Specified by:
visitin interfacePredicateVisitor- Parameters:
propertyOp- The propertyOp
-
visit
public void visit(PersistentPropertyBetweenPredicate<?> propertyBetweenPredicate)
Description copied from interface:PredicateVisitor- Specified by:
visitin interfacePredicateVisitor- Parameters:
propertyBetweenPredicate- The propertyBetweenPredicate
-
visit
public void visit(PersistentPropertyBinaryPredicate<?> propertyToExpressionOp)
Description copied from interface:PredicateVisitor- Specified by:
visitin interfacePredicateVisitor- Parameters:
propertyToExpressionOp- The propertyToExpressionOp
-
visit
public void visit(PersistentPropertyInValuesPredicate<?> inValues)
Description copied from interface:PredicateVisitor- Specified by:
visitin interfacePredicateVisitor- Parameters:
inValues- The inValues
-
visit
public void visit(ExpressionBinaryPredicate expressionBinaryPredicate)
Description copied from interface:PredicateVisitorVisitExpressionBinaryPredicate.- Specified by:
visitin interfacePredicateVisitor- Parameters:
expressionBinaryPredicate- The expressionBinaryPredicate
-
-