Package org.geotools.feature.collection
Class SubFeatureCollection
- Object
-
- BaseFeatureCollection<SimpleFeatureType,SimpleFeature>
-
- BaseSimpleFeatureCollection
-
- SubFeatureCollection
-
- All Implemented Interfaces:
SimpleFeatureCollection,FeatureCollection<SimpleFeatureType,SimpleFeature>
- Direct Known Subclasses:
SubFeatureList
public class SubFeatureCollection extends BaseSimpleFeatureCollection
Reasonable default implementation for subCollection making use of parentSimpleFeatureCollection.features()and provided Filter.This is only a reasonable implementation and is not optimal. It is recommended that implementors construct a new
Queryand useSimpleFeatureSource.getFeatures(Query).- Author:
- Jody Garnett, Refractions Research, Inc.
-
-
Field Summary
Fields Modifier and Type Field Description protected SimpleFeatureCollectioncollectionOriginal Collectionprotected FilterFactoryffprotected FilterfilterFilter-
Fields inherited from class BaseFeatureCollection
id, schema
-
-
Constructor Summary
Constructors Constructor Description SubFeatureCollection(SimpleFeatureCollection collection)SubFeatureCollection(SimpleFeatureCollection collection, Filter subfilter)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected FiltercreateFilter()Override to implement subsettingSimpleFeatureIteratorfeatures()Subclasses required to implement this method to traverse FeatureCollection contents.protected Filterfilter()Generate filter to use for content, makes use ofcreateFilter()if needed.ReferencedEnvelopegetBounds()Calculates the bounds of the features without caching.StringgetID()ID used when serializing to GMLintsize()Returns the number of elements in this collection.SimpleFeatureCollectionsort(SortBy order)Obtained sorted contents, only implemented for SimpleFeature at present.SimpleFeatureCollectionsubCollection(Filter filter)Convenience implementation that just wraps this collection into aFilteringFeatureCollection.-
Methods inherited from class BaseFeatureCollection
accepts, contains, containsAll, getSchema, isEmpty, toArray, toArray
-
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface FeatureCollection
accepts, contains, containsAll, getSchema, isEmpty, toArray, toArray
-
-
-
-
Field Detail
-
filter
protected Filter filter
Filter
-
collection
protected SimpleFeatureCollection collection
Original Collection
-
ff
protected FilterFactory ff
-
-
Constructor Detail
-
SubFeatureCollection
public SubFeatureCollection(SimpleFeatureCollection collection)
-
SubFeatureCollection
public SubFeatureCollection(SimpleFeatureCollection collection, Filter subfilter)
- Parameters:
collection- Collection or AbstractFeatureCollection
-
-
Method Detail
-
features
public SimpleFeatureIterator features()
Description copied from class:BaseSimpleFeatureCollectionSubclasses required to implement this method to traverse FeatureCollection contents.Note that
FeatureIterator.close()is available to clean up after any resource use required during traversal.- Specified by:
featuresin interfaceFeatureCollection<SimpleFeatureType,SimpleFeature>- Specified by:
featuresin interfaceSimpleFeatureCollection- Specified by:
featuresin classBaseSimpleFeatureCollection- Returns:
- A FeatureIterator.
-
size
public int size()
Description copied from class:BaseFeatureCollectionReturns the number of elements in this collection.- Specified by:
sizein interfaceFeatureCollection<SimpleFeatureType,SimpleFeature>- Overrides:
sizein classBaseFeatureCollection<SimpleFeatureType,SimpleFeature>- Returns:
- Number of items, or Interger.MAX_VALUE
- See Also:
Collection.size()
-
filter
protected Filter filter()
Generate filter to use for content, makes use ofcreateFilter()if needed.- Returns:
- Filter to use for content
-
createFilter
protected Filter createFilter()
Override to implement subsetting
-
subCollection
public SimpleFeatureCollection subCollection(Filter filter)
Description copied from class:BaseFeatureCollectionConvenience implementation that just wraps this collection into aFilteringFeatureCollection. Subclasses might want to override this in case the filter can be cascaded to their data sources.- Specified by:
subCollectionin interfaceFeatureCollection<SimpleFeatureType,SimpleFeature>- Specified by:
subCollectionin interfaceSimpleFeatureCollection- Overrides:
subCollectionin classBaseSimpleFeatureCollection- Returns:
- SimpleFeatureCollection identified as subset.
- See Also:
FeatureList
-
sort
public SimpleFeatureCollection sort(SortBy order)
Description copied from class:BaseFeatureCollectionObtained sorted contents, only implemented for SimpleFeature at present.This method only supports SimpleFeature at present, consider use of FeatureSource.features( Query ).
- Specified by:
sortin interfaceFeatureCollection<SimpleFeatureType,SimpleFeature>- Specified by:
sortin interfaceSimpleFeatureCollection- Overrides:
sortin classBaseSimpleFeatureCollection- Parameters:
order- Sort order- Returns:
- FeatureCollection sorted in the indicated order
-
getID
public String getID()
Description copied from interface:FeatureCollectionID used when serializing to GML- Specified by:
getIDin interfaceFeatureCollection<SimpleFeatureType,SimpleFeature>- Overrides:
getIDin classBaseFeatureCollection<SimpleFeatureType,SimpleFeature>
-
getBounds
public ReferencedEnvelope getBounds()
Calculates the bounds of the features without caching.- Specified by:
getBoundsin interfaceFeatureCollection<SimpleFeatureType,SimpleFeature>- Overrides:
getBoundsin classBaseFeatureCollection<SimpleFeatureType,SimpleFeature>- Returns:
- An Envelope containing the total bounds of this collection.
-
-