public abstract class BinaryComparisonAbstract extends AbstractFilter implements MultiValuedFilter
This implementation gathers up expression1, expression2 and match action support.
For the SAX parsers setExpression1 and setExpression2 can be used to fill in the filter after creation. Everyone else is asked to treat the filter as immutable and use the appropriate FilterFactory2 creation method.
MultiValuedFilter.MatchAction
Modifier and Type | Field and Description |
---|---|
protected Expression |
expression1 |
protected Expression |
expression2 |
LOGGER
ALL, BETWEEN, COMPARE_EQUALS, COMPARE_GREATER_THAN, COMPARE_GREATER_THAN_EQUAL, COMPARE_LESS_THAN, COMPARE_LESS_THAN_EQUAL, COMPARE_NOT_EQUALS, FID, GEOMETRY_BBOX, GEOMETRY_BEYOND, GEOMETRY_CONTAINS, GEOMETRY_CROSSES, GEOMETRY_DISJOINT, GEOMETRY_DWITHIN, GEOMETRY_EQUALS, GEOMETRY_INTERSECTS, GEOMETRY_OVERLAPS, GEOMETRY_TOUCHES, GEOMETRY_WITHIN, LIKE, LOGIC_AND, LOGIC_NOT, LOGIC_OR, NONE, NULL
Modifier | Constructor and Description |
---|---|
protected |
BinaryComparisonAbstract()
No argument constructor for use by SAX parsers.
|
protected |
BinaryComparisonAbstract(Expression expression1,
Expression expression2)
Immutable constructor for use by FilterFactory2
|
protected |
BinaryComparisonAbstract(Expression expression1,
Expression expression2,
boolean matchingCase)
Immutable constructor for use by FilterFactory2
|
Modifier and Type | Method and Description |
---|---|
protected Comparable |
comparable(Object value)
Wraps an object in a Comparable.
|
protected Object[] |
eval(Object object)
Convenience method which evaluates the expressions and trys to align the values to be of the
same type.
|
protected Object[] |
eval(Object v1,
Object v2)
Convenience method which evaluates the expressions and trys to align the values to be of the
same type.
|
Expression |
getExpression1() |
Expression |
getExpression2() |
MultiValuedFilter.MatchAction |
getMatchAction()
* Flag Controlling MatchAction property When one or more of the operands evaluates to
multiple values rather than a single value, which action should be taken?
|
boolean |
isMatchingCase() |
void |
setExpression1(Expression expression) |
void |
setExpression2(Expression expression) |
isCompareFilter, isGeometryDistanceFilter, isGeometryFilter, isLogicFilter, isMathFilter, isSimpleFilter
accepts, eval, eval
protected Expression expression1
protected Expression expression2
protected BinaryComparisonAbstract()
protected BinaryComparisonAbstract(Expression expression1, Expression expression2)
protected BinaryComparisonAbstract(Expression expression1, Expression expression2, boolean matchingCase)
public Expression getExpression1()
public void setExpression1(Expression expression)
public Expression getExpression2()
public void setExpression2(Expression expression)
public boolean isMatchingCase()
public MultiValuedFilter.MatchAction getMatchAction()
MultiValuedFilter
ANY - if any of the possible combinations match, the result is true (aggregated OR) ALL - only if all of the possible combinations match, the result is true (aggregated AND) ONE - only if exactly one of the possible combinations match, the result is true (aggregated XOR)
getMatchAction
in interface MultiValuedFilter
protected Object[] eval(Object object)
If the values can not be aligned, the original values are returned.
protected Object[] eval(Object v1, Object v2)
If the values can not be aligned, the original values are returned.
protected final Comparable comparable(Object value)
value
- The original value.Copyright © 1996–2023 Geotools. All rights reserved.