Package cz.encircled.joiner.core
Class DefaultPredicateAliasResolver
- java.lang.Object
-
- cz.encircled.joiner.core.DefaultPredicateAliasResolver
-
- All Implemented Interfaces:
PredicateAliasResolver
public class DefaultPredicateAliasResolver extends Object implements PredicateAliasResolver
- Author:
- Vlad on 10-Feb-17.
- See Also:
PredicateAliasResolver
-
-
Constructor Summary
Constructors Constructor Description DefaultPredicateAliasResolver(Joiner joiner)
-
Method Summary
All Methods Instance Methods Concrete 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
-
-
-
Constructor Detail
-
DefaultPredicateAliasResolver
public DefaultPredicateAliasResolver(Joiner joiner)
-
-
Method Detail
-
resolvePredicate
public com.querydsl.core.types.Predicate resolvePredicate(com.querydsl.core.types.Predicate predicate, List<JoinDescription> joins, Set<com.querydsl.core.types.Path<?>> usedAliases)Description copied from interface:PredicateAliasResolverResolves all correct paths used in specifiedpredicate- Specified by:
resolvePredicatein interfacePredicateAliasResolver- Parameters:
predicate- original predicatejoins- all query joinsusedAliases- paths that are present in joins- Returns:
- rebuilt predicate
- See Also:
PredicateAliasResolver.resolvePath(Path, Map, Set)
-
resolveOperation
public com.querydsl.core.types.Predicate resolveOperation(com.querydsl.core.types.Operation<?> operation, List<JoinDescription> joins, Set<com.querydsl.core.types.Path<?>> usedAliases)Description copied from interface:PredicateAliasResolverResolves all correct paths used in specifiedoperation- Specified by:
resolveOperationin interfacePredicateAliasResolver- Parameters:
operation- original operationjoins- all query joinsusedAliases- paths that are present in joins- Returns:
- rebuilt predicate
- See Also:
PredicateAliasResolver.resolvePath(Path, Map, Set)
-
resolvePath
public <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)Description copied from interface:PredicateAliasResolverIf 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)- Specified by:
resolvePathin interfacePredicateAliasResolver- Type Parameters:
T- any- Parameters:
path- original pathclassToJoin- java type to present joinsusedAliases- paths that are present in joins- Returns:
- rebuilt or original path
-
-