Class FilterEncodingPreProcessor
- All Implemented Interfaces:
FilterVisitor
and { nullFilter or{ fidFilter nullFilter } }for strict it would throw an exception, for low it would be left alone, but for Medium it would end up as:
and{ nullFilter nullFilter }and getFids() would return the fids in the fidFilter.
So the final filter would (this is not standard but a common implementation) return the results of the and filter as well as all the features that match the fids. Which is more than the original filter would accept.
The XML Document writer can operate at different levels of compliance. The geotools level is extremely flexible and forgiving.
All NOT(FidFilter) are changed to Filter.INCLUDE. So make sure that the filter is processed again on the client with the original filter For a description of the difference Compliance levels that can be used see
- Author:
- Jesse Eichar
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionGets the fid filter that contains all the fids.Returns the filter that can be encoded.boolean
Returns true if the filter was one where the request to the server is more general than the actual filter.void
visit
(BinaryComparisonOperator filter) void
visit
(BinaryLogicOperator filter) void
visit
(ExcludeFilter filter) visit
(ExcludeFilter filter, Object extraData) VisitFilter.EXCLUDE
(often used during data structure transformations).void
void
void
visit
(IncludeFilter filter) visit
(IncludeFilter filter, Object extraData) VisitFilter.INCLUDE
(often used during data structure transformations).void
void
visit
(PropertyIsBetween filter) visit
(PropertyIsBetween filter, Object extraData) visit
(PropertyIsEqualTo filter, Object extraData) visit
(PropertyIsGreaterThanOrEqualTo filter, Object extraData) visit
(PropertyIsGreaterThan filter, Object extraData) visit
(PropertyIsLessThanOrEqualTo filter, Object extraData) visit
(PropertyIsLessThan filter, Object extraData) void
visit
(PropertyIsLike filter) visit
(PropertyIsLike filter, Object extraData) visit
(PropertyIsNil filter, Object extraData) visit
(PropertyIsNotEqualTo filter, Object extraData) void
visit
(PropertyIsNull filter) visit
(PropertyIsNull filter, Object extraData) void
visit
(BinarySpatialOperator filter) visit
(Intersects filter, Object extraData) visit
(AnyInteracts anyInteracts, Object extraData) visit
(OverlappedBy overlappedBy, Object extraData) protected void
visitCompareFilter
(Filter filter) protected void
visitGeometryFilter
(SpatialOperator filter) protected void
visitLogicFilter
(Filter filter) void
visitLogicFilter
(Not filter) visitNullFilter
(Object extraData) Used to account for anull
filter value.protected Object
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface FilterVisitor
visit
-
Constructor Details
-
FilterEncodingPreProcessor
-
-
Method Details
-
getFidFilter
Gets the fid filter that contains all the fids.- Returns:
- the fid filter that contains all the fids.
-
getFilter
Returns the filter that can be encoded.- Returns:
- the filter that can be encoded.
-
visit
-
visit
-
visit
-
visit
-
visit
-
visit
-
visitLogicFilter
-
visit
-
visit
-
visit
-
visit
-
visit
-
requiresPostProcessing
public boolean requiresPostProcessing()Returns true if the filter was one where the request to the server is more general than the actual filter. SeeXMLHandlerHints.VALUE_FILTER_COMPLIANCE_MEDIUM
and example of when this can happen.- Returns:
- true if the filter was one where the request to the server is more general than the actual filter.
-
visitLogicFilter
-
visitCompareFilter
-
visitGeometryFilter
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visitNullFilter
Description copied from interface:FilterVisitor
Used to account for anull
filter value.This is particularly used during data structure transofrmations, however the use of
null
is not recommended. Please make use of Filter.NONE and Filter.ALL as placeholder objects that communicate intent.- Specified by:
visitNullFilter
in interfaceFilterVisitor
- Parameters:
extraData
- Value object provided to visitor- Returns:
- subclass defined
-
visit
Description copied from interface:FilterVisitor
VisitFilter.INCLUDE
(often used during data structure transformations).- Specified by:
visit
in interfaceFilterVisitor
- Parameters:
filter
-Filter.INCLUDE
.extraData
- Value object provided to visitor- Returns:
- subclass supplied
-
visit
Description copied from interface:FilterVisitor
VisitFilter.EXCLUDE
(often used during data structure transformations).- Specified by:
visit
in interfaceFilterVisitor
- Parameters:
filter
-Filter.EXCLUDE
.extraData
- Value object provided to visitor- Returns:
- subclass supplied
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visit
- Specified by:
visit
in interfaceFilterVisitor
-
visitTemporalFilter
-