public class PathPredicateEvaluator extends AbstractPredicateEvaluator
Does not support facet extraction.
exact
, either the entire subtree
will match (like appending //* in xpath, but note that this does not include
the base path) (exact=false, default) or only an exact path matches, which
can include wildcards (*); if self
is set, the entire subtree
including the base node will be searchedModifier and Type | Field and Description |
---|---|
static java.lang.String |
EXACT |
static java.lang.String |
FLAT |
static java.lang.String |
PATH |
static java.lang.String |
SELF |
Constructor and Description |
---|
PathPredicateEvaluator() |
Modifier and Type | Method and Description |
---|---|
boolean |
canFilter(Predicate predicate,
EvaluationContext context)
Returns the same as the deprecated
AbstractPredicateEvaluator.isFiltering(Predicate, EvaluationContext) method (ie. |
boolean |
canXpath(Predicate predicate,
EvaluationContext context)
Returns the inverted boolean value of the deprecated
AbstractPredicateEvaluator.isFiltering(Predicate, EvaluationContext) method (ie. |
static java.lang.String |
encodePath(Predicate p)
Encodes absolute paths, but keeps wildcards in case this is
an "exact" query containing wildcards.
|
java.util.Comparator<Row> |
getOrderByComparator(Predicate predicate,
EvaluationContext context)
Default implementation that always returns
null . |
java.lang.String |
getXPathExpression(Predicate p,
EvaluationContext context)
Default implementation that always returns
null , ie. |
boolean |
includes(Predicate p,
Row row,
EvaluationContext context)
Default implementation that always returns
true , ie. |
getFacetExtractor, getOrderByProperties, isFiltering
public static final java.lang.String PATH
public static final java.lang.String EXACT
public static final java.lang.String FLAT
public static final java.lang.String SELF
public static java.lang.String encodePath(Predicate p)
public java.lang.String getXPathExpression(Predicate p, EvaluationContext context)
AbstractPredicateEvaluator
null
, ie. adds
nothing to the XPath query. Subclasses can choose whether they want to
implement this method or use the
AbstractPredicateEvaluator.includes(Predicate, Row, EvaluationContext)
method for advanced
filtering (or both).getXPathExpression
in interface PredicateEvaluator
getXPathExpression
in class AbstractPredicateEvaluator
p
- predicate (for this evaluator type) which is evaluatedcontext
- helper class which provides access to various elements of the
query evaluationpublic boolean includes(Predicate p, Row row, EvaluationContext context)
AbstractPredicateEvaluator
true
, ie. it does
not "touch" the result set at all.includes
in interface PredicateEvaluator
includes
in class AbstractPredicateEvaluator
p
- predicate (for this evaluator type) which is evaluatedrow
- current row of the result set returned through the xpath querycontext
- helper class which provides access to various elements of the
query evaluationtrue
if this row should be part of the final result
set, false
if it should be droppedpublic java.util.Comparator<Row> getOrderByComparator(Predicate predicate, EvaluationContext context)
AbstractPredicateEvaluator
null
.getOrderByComparator
in interface PredicateEvaluator
getOrderByComparator
in class AbstractPredicateEvaluator
predicate
- predicate (for this evaluator type) which is evaluatedcontext
- helper class which provides access to various elements of the
query evaluationnull
public boolean canXpath(Predicate predicate, EvaluationContext context)
AbstractPredicateEvaluator
AbstractPredicateEvaluator.isFiltering(Predicate, EvaluationContext)
method (ie. if not
overridden, true
).canXpath
in interface PredicateEvaluator
canXpath
in class AbstractPredicateEvaluator
predicate
- predicate (for this evaluator type) which is evaluatedcontext
- helper class which provides access to various elements of the
query evaluationtrue
if this evaluator can express itself via xpath,
ie. PredicateEvaluator.getXPathExpression(Predicate, EvaluationContext)
public boolean canFilter(Predicate predicate, EvaluationContext context)
AbstractPredicateEvaluator
AbstractPredicateEvaluator.isFiltering(Predicate, EvaluationContext)
method (ie. if not
overridden, false
).canFilter
in interface PredicateEvaluator
canFilter
in class AbstractPredicateEvaluator
predicate
- predicate (for this evaluator type) which is evaluatedcontext
- helper class which provides access to various elements of the
query evaluationtrue
if this evaluator can be express itself via
filtering, ie.
PredicateEvaluator.includes(Predicate, Row, EvaluationContext)
Copyright © 2010 - 2020 Adobe. All Rights Reserved