Interface Filter
-
- All Known Subinterfaces:
After
,And
,AnyInteracts
,BBOX
,BBOX3D
,Before
,Begins
,BegunBy
,Beyond
,BinaryComparisonOperator
,BinaryLogicOperator
,BinarySpatialOperator
,BinaryTemporalOperator
,BoundedSpatialOperator
,Contains
,Crosses
,Disjoint
,DistanceBufferOperator
,During
,DWithin
,EndedBy
,Ends
,Equals
,Id
,Intersects
,Meets
,MetBy
,MultiValuedFilter
,NativeFilter
,Not
,Or
,OverlappedBy
,Overlaps
,PropertyIsBetween
,PropertyIsEqualTo
,PropertyIsGreaterThan
,PropertyIsGreaterThanOrEqualTo
,PropertyIsLessThan
,PropertyIsLessThanOrEqualTo
,PropertyIsLike
,PropertyIsNil
,PropertyIsNotEqualTo
,PropertyIsNull
,SpatialOperator
,TContains
,TEquals
,Touches
,TOverlaps
,Within
- All Known Implementing Classes:
AbstractFilter
,AbstractPreparedGeometryFilter
,AfterImpl
,AndImpl
,AnyInteractsImpl
,BBOX3DImpl
,BBOXImpl
,BeforeImpl
,BeginsImpl
,BegunByImpl
,BeyondImpl
,BinaryComparisonAbstract
,BinaryLogicAbstract
,BinaryTemporalOperatorImpl
,CartesianDistanceFilter
,CompareFilterImpl
,ContainsImpl
,CrossesImpl
,DisjointImpl
,DuringImpl
,DWithinImpl
,EndedByImpl
,EndsImpl
,EqualsImpl
,ExcludeFilter
,FidFilterImpl
,FilterAbstract
,GeometryFilterImpl
,IncludeFilter
,IntersectsImpl
,IsBetweenImpl
,IsEqualsToImpl
,IsGreaterThanImpl
,IsGreaterThanOrEqualToImpl
,IsLessThenImpl
,IsLessThenOrEqualToImpl
,IsNilImpl
,IsNotEqualToImpl
,IsNullImpl
,JoinId
,LikeFilterImpl
,LogicFilterImpl
,MeetsImpl
,MetByImpl
,MultiCompareFilterImpl
,NativeFilterImpl
,NotImpl
,NullFilterImpl
,OrImpl
,OverlappedByImpl
,OverlapsImpl
,TContainsImpl
,TEqualsImpl
,TouchesImpl
,TOverlapsImpl
,WithinImpl
public interface Filter
Defines a constraint that can be checked against an instance of an object (Usually a Feature).This is an abstract super type of the Filters defined by the Filter specification; you are not free to define your own filters. For extensibility please explore the definition of your own
Function
.Often a filter is used to to define a set feature instances that are to be operated upon. The operating set can be comprised of one or more enumerated features or a set of features defined by specifying spatial and non-spatial constraints on the geometric and scalar properties of a feature type.
Roughly speaking, a filter encodes the information present in the
WHERE
clause of a SQL statement. There are various subclasses of this class that implement many types of filters, such as simple property comparisons or spatial queries.The second use of Filter focuses on expressing constraints (or Facets). This use places restrictions on the allowable and is captured as part of schema information (@linkplain FeatureType). This is similar to the XML concept of "facets".
- Since:
- GeoAPI 2.0
- Author:
- Chris Dillard (SYS Technologies)
-
-
Field Summary
Fields Modifier and Type Field Description static ExcludeFilter
EXCLUDE
Placeholder Filter that evaulates tofalse
.static IncludeFilter
INCLUDE
Placeholder Filter that evaulates totrue
.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Object
accept(FilterVisitor visitor, Object extraData)
Accepts a visitor.boolean
evaluate(Object object)
Give an object, this method determines if the test(s) represented by this filter object are passed.
-
-
-
Field Detail
-
INCLUDE
static final IncludeFilter INCLUDE
Placeholder Filter that evaulates totrue
.Filtering a set with
Filter.INCLUDE
results in the origional set.
-
EXCLUDE
static final ExcludeFilter EXCLUDE
Placeholder Filter that evaulates tofalse
.Filtering a set with
Filter.EXCLUDE
results in the empty Set.
-
-
Method Detail
-
evaluate
boolean evaluate(Object object)
Give an object, this method determines if the test(s) represented by this filter object are passed.This ability is used to allow Queries against both Features and and non spatial data (such as Record) and to express constraints on permissable data values.
- Returns:
true if the test(s) are passed for the provided object
-
accept
Object accept(FilterVisitor visitor, Object extraData)
Accepts a visitor.Implementations of all subinterfaces must have with a method whose content is the following:
return visitor.visit(this, extraData);
-
-