|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
ObjectFilterAbstract
AbstractFilter
BinaryComparisonAbstract
CompareFilterImpl
public abstract class CompareFilterImpl
Defines a comparison filter (can be a math comparison or generic equals). This filter implements a comparison - of some sort - between two expressions. The comparison may be a math comparison or a generic equals comparison. If it is a math comparison, only math expressions are allowed; if it is an equals comparison, any expression types are allowed. Note that this comparison does not attempt to restrict its expressions to be meaningful. This means that it considers itself a valid filter as long as the expression comparison returns a valid result. It does no checking to see whether or not the expression comparison is meaningful with regard to checking feature attributes. In other words, this is a valid filter: 52 = 92, even though it will always return the same result and could be simplified away. It is up the the filter creator, therefore, to attempt to simplify/make meaningful filter logic.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface MultiValuedFilter |
---|
MultiValuedFilter.MatchAction |
Field Summary |
---|
Fields inherited from class BinaryComparisonAbstract |
---|
expression1, expression2 |
Fields inherited from class AbstractFilter |
---|
filterType, permissiveConstruction |
Fields inherited from class FilterAbstract |
---|
factory |
Fields inherited from interface Filter |
---|
ALL, NONE |
Fields inherited from interface Filter |
---|
EXCLUDE, INCLUDE |
Constructor Summary | |
---|---|
protected |
CompareFilterImpl(FilterFactory factory,
Expression e1,
Expression e2)
|
protected |
CompareFilterImpl(FilterFactory factory,
Expression e1,
Expression e2,
boolean matchCase)
|
protected |
CompareFilterImpl(short filterType)
Deprecated. use CompareFilterImpl(org.opengis.filter.FilterFactory, org.opengis.filter.expression.Expression, org.opengis.filter.expression.Expression) |
Method Summary | |
---|---|
abstract Object |
accept(FilterVisitor visitor,
Object extraData)
Used by FilterVisitors to perform some action on this filter instance. |
void |
addLeftValue(Expression leftValue)
Adds the 'left' value to this filter. |
void |
addRightValue(Expression rightValue)
Adds the 'right' value to this filter. |
protected int |
compare(Comparable leftObj,
Comparable rightObj)
Subclass convenience method which compares to instances of comparables in a pretty lax way, converting types among String, Number, Double when appropriate. |
boolean |
equals(Object obj)
Compares this filter to the specified object. |
boolean |
evaluate(SimpleFeature feature)
Determines whether or not a given feature is 'inside' this filter. |
Expression |
getLeftValue()
Gets the left expression. |
Expression |
getRightValue()
Deprecated. use BinaryComparisonAbstract.getExpression2() |
int |
hashCode()
Override of hashCode method. |
void |
setExpression1(Expression leftValue)
|
void |
setExpression2(Expression rightValue)
|
String |
toString()
Returns a string representation of this filter. |
Methods inherited from class BinaryComparisonAbstract |
---|
and, comparable, eval, eval, getExpression1, getExpression2, getMatchAction, isMatchingCase, not, or |
Methods inherited from class AbstractFilter |
---|
accept, contains, getFilterType, isCompareFilter, isGeometryDistanceFilter, isGeometryFilter, isLogicFilter, isMathFilter, isSimpleFilter |
Methods inherited from class FilterAbstract |
---|
accepts, eval, eval, eval |
Methods inherited from class Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface CompareFilter |
---|
contains |
Methods inherited from interface Filter |
---|
accept, and, getFilterType, not, or |
Methods inherited from interface BinaryComparisonOperator |
---|
getExpression1, getExpression2, isMatchingCase |
Methods inherited from interface MultiValuedFilter |
---|
getMatchAction |
Methods inherited from interface Filter |
---|
evaluate |
Constructor Detail |
---|
protected CompareFilterImpl(short filterType) throws IllegalFilterException
CompareFilterImpl(org.opengis.filter.FilterFactory, org.opengis.filter.expression.Expression, org.opengis.filter.expression.Expression)
filterType
- The type of comparison.
IllegalFilterException
- Non-compare type.protected CompareFilterImpl(FilterFactory factory, Expression e1, Expression e2)
protected CompareFilterImpl(FilterFactory factory, Expression e1, Expression e2, boolean matchCase)
Method Detail |
---|
public final void addLeftValue(Expression leftValue) throws IllegalFilterException
addLeftValue
in interface CompareFilter
leftValue
- Expression for 'left' value.
IllegalFilterException
- Filter is not internally consistent.public void setExpression1(Expression leftValue)
setExpression1
in class BinaryComparisonAbstract
public final void addRightValue(Expression rightValue) throws IllegalFilterException
addRightValue
in interface CompareFilter
rightValue
- Expression for 'right' value.
IllegalFilterException
- Filter is not internally consistent.public void setExpression2(Expression rightValue)
setExpression2
in class BinaryComparisonAbstract
public final Expression getLeftValue()
getLeftValue
in interface CompareFilter
BinaryComparisonAbstract.getExpression1()
public final Expression getRightValue()
BinaryComparisonAbstract.getExpression2()
getRightValue
in interface CompareFilter
public boolean evaluate(SimpleFeature feature)
evaluate
in class FilterAbstract
feature
- Specified feature to examine.
protected int compare(Comparable leftObj, Comparable rightObj)
Comparable.compareTo(java.lang.Object)
.public String toString()
toString
in class Object
public boolean equals(Object obj)
equals
in class Object
obj
- - the object to compare this CompareFilter against.
public int hashCode()
hashCode
in class Object
public abstract Object accept(FilterVisitor visitor, Object extraData)
accept
in interface Filter
accept
in class FilterAbstract
visitor
- The visitor which requires access to this filter, the
method must call visitor.visit(this);
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |