Package org.geotools.filter
Class FidFilterImpl
- Object
-
- FilterAbstract
-
- AbstractFilter
-
- FidFilterImpl
-
- All Implemented Interfaces:
Filter,Id,FilterType
- Direct Known Subclasses:
JoinId
public class FidFilterImpl extends AbstractFilter implements Id
Defines a ID filter, which holds a list of IDs ( usually feature id;s ). This filter stores a series of IDs, which are used to distinguish features uniquely.Please note that addAllFids( Collection ) may be a performance hog; uDig makes use of its own implementation of FidFilter in order to reuse the internal set of fids between uses.
- Author:
- Rob Hranac, TOPP, Justin Deoliveira, TOPP
TODO: this class shoul be renamed to IdFilterImpl
-
-
Field Summary
-
Fields inherited from interface FilterType
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
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedFidFilterImpl(Set<? extends Identifier> fids)Constructor which takesIdentifier, not String.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Objectaccept(FilterVisitor visitor, Object extraData)Used by FilterVisitors to perform some action on this filter instance.voidaddAllFids(Collection fidsToAdd)Adds a collection of feature IDs to the filter.voidaddFid(String fid)Adds a feature ID to the filter.booleanequals(Object filter)Returns a flag indicating object equality.booleanevaluate(Object feature)Determines whether or not the given feature's ID matches this filter.Set<String>getFidsSet()Accessor method for fid set as Strings.Set<Identifier>getIdentifiers()Returns the set of identifiers used by this filter.Set<Object>getIDs()Set of IDs representing the Identifiers used by this filter.inthashCode()Override of hashCode method.voidremoveAllFids(Collection fidsToRemove)Removes a collection of feature IDs from the filter.voidremoveFid(String fid)Removes a feature ID from the filter.voidsetIDs(Set ids)StringtoString()Returns a string representation of this filter.-
Methods inherited from class AbstractFilter
isCompareFilter, isGeometryDistanceFilter, isGeometryFilter, isLogicFilter, isMathFilter, isSimpleFilter
-
Methods inherited from class FilterAbstract
accepts, eval, eval
-
-
-
-
Constructor Detail
-
FidFilterImpl
protected FidFilterImpl(Set<? extends Identifier> fids)
Constructor which takesIdentifier, not String.
-
-
Method Detail
-
getIDs
public Set<Object> getIDs()
Description copied from interface:IdSet of IDs representing the Identifiers used by this filter.- Specified by:
getIDsin interfaceId- See Also:
Id.getIDs()
-
getIdentifiers
public Set<Identifier> getIdentifiers()
Description copied from interface:IdReturns the set of identifiers used by this filter.- Specified by:
getIdentifiersin interfaceId- See Also:
Id.getIdentifiers()
-
setIDs
public void setIDs(Set ids)
- See Also:
org.geotools.api.filter.identity.FeatureId#setIDs(Set)
-
getFidsSet
public Set<String> getFidsSet()
Accessor method for fid set as Strings.- Returns:
- the internally stored fids.
-
addFid
public final void addFid(String fid)
Adds a feature ID to the filter.- Parameters:
fid- A single feature ID.
-
addAllFids
public void addAllFids(Collection fidsToAdd)
Adds a collection of feature IDs to the filter.- Parameters:
fidsToAdd- A collection of feature IDs as strings.
-
removeFid
public final void removeFid(String fid)
Removes a feature ID from the filter.- Parameters:
fid- A single feature ID.
-
removeAllFids
public void removeAllFids(Collection fidsToRemove)
Removes a collection of feature IDs from the filter.- Parameters:
fidsToRemove- A collection of feature IDs.
-
evaluate
public boolean evaluate(Object feature)
Determines whether or not the given feature's ID matches this filter.In order to get the object's ID, the
PropertyAccessorcapable of dealing withfeaturehas to support the request of the expression"@id"- Specified by:
evaluatein interfaceFilter- Parameters:
feature- Specified feature to examine.- Returns:
- true if the feature's ID matches an fid held by this filter, false otherwise.
- See Also:
SimpleFeaturePropertyAccessorFactory
-
toString
public String toString()
Returns a string representation of this filter.
-
accept
public Object accept(FilterVisitor visitor, Object extraData)
Used by FilterVisitors to perform some action on this filter instance. Typicaly used by Filter decoders, but may also be used by any thing which needs infomration from filter structure. Implementations should always call: visitor.visit(this); It is importatant that this is not left to a parent class unless the parents API is identical.
-
equals
public boolean equals(Object filter)
Returns a flag indicating object equality.
-
-