Package cz.encircled.joiner.core
Interface PredicateAliasResolver
-
- All Known Implementing Classes:
DefaultPredicateAliasResolver
public interface PredicateAliasResolverImplementation is responsible for predicate aliases lookup in a query- Author:
- Vlad on 10-Feb-17.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description com.querydsl.core.types.PredicateresolveOperation(com.querydsl.core.types.Operation<?> operation, List<JoinDescription> joins, Set<com.querydsl.core.types.Path<?>> usedAliases)Resolves all correct paths used in specifiedoperation<T> com.querydsl.core.types.Path<T>resolvePath(com.querydsl.core.types.Path<T> path, Map<AnnotatedElement,List<JoinDescription>> classToJoin, Set<com.querydsl.core.types.Path<?>> usedAliases)If alias frompathis not present inusedAliases, try to find it in joins.com.querydsl.core.types.PredicateresolvePredicate(com.querydsl.core.types.Predicate predicate, List<JoinDescription> joins, Set<com.querydsl.core.types.Path<?>> usedAliases)Resolves all correct paths used in specifiedpredicate
-
-
-
Method Detail
-
resolvePredicate
com.querydsl.core.types.Predicate resolvePredicate(com.querydsl.core.types.Predicate predicate, List<JoinDescription> joins, Set<com.querydsl.core.types.Path<?>> usedAliases)Resolves all correct paths used in specifiedpredicate- Parameters:
predicate- original predicatejoins- all query joinsusedAliases- paths that are present in joins- Returns:
- rebuilt predicate
- See Also:
resolvePath(Path, Map, Set)
-
resolveOperation
com.querydsl.core.types.Predicate resolveOperation(com.querydsl.core.types.Operation<?> operation, List<JoinDescription> joins, Set<com.querydsl.core.types.Path<?>> usedAliases)Resolves all correct paths used in specifiedoperation- Parameters:
operation- original operationjoins- all query joinsusedAliases- paths that are present in joins- Returns:
- rebuilt predicate
- See Also:
resolvePath(Path, Map, Set)
-
resolvePath
<T> com.querydsl.core.types.Path<T> resolvePath(com.querydsl.core.types.Path<T> path, Map<AnnotatedElement,List<JoinDescription>> classToJoin, Set<com.querydsl.core.types.Path<?>> usedAliases)If alias frompathis not present inusedAliases, try to find it in joins. If unambiguous alias is found, return rebuilt Path with corresponding alias.It other words, it allows to use
QStatus.status.some...instead ofJ#path(QStatusParent.parent, QStatus.status(when target path is unambiguous, i.e. exactly one join with java type Status is present)- Type Parameters:
T- any- Parameters:
path- original pathclassToJoin- java type to present joinsusedAliases- paths that are present in joins- Returns:
- rebuilt or original path
-
-