Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
(IndexAware)Predicate API cleanup (#13226) #15142
The end result is that the public
Moved IndexAwarePredicate and VisitablePredicate to query.impl.predicates and refactored/cleaned up the public Predicate-related API so that it does not expose internal APIs anymore. More specifically: - Moved query.IndexAwarePredicate, query.VisitablePredicate, query.SqlPredicate/Parser, query.TruePredicate, to query.impl.predicates - Moved query.impl.FalsePredicate and query.impl.SkipIndexPredicate to query.impl.predicates - Converted PagingPredicate and PartitionPredicate to interfaces and added PagingPredicateImpl and PartitionPredicateImpl to query.impl.predicate. - Converted PredicateBuilder and EntryObject to interfaces (and made EntryObject a nested interface in PredicateBuilder) and added PredicateBuilderImpl to query.impl.predicates - The public API classes/interfaces no longer extend IndexAwarepredicate/ VisitablePredicate; this dependency has been moved to the impl classes. - Introduced new factory methods in Predicates: newPredicateBuilder(), sql(...), pagingPredicate(...), partitionPredicate(...) Fixes #13226
...and moved it to PagingPredicateAccessor. Made it clear in the javadoc of PagingPredicateAccessor that the class is for internal use only.