org.geotools.feature
Class FeatureCollectionIteration
java.lang.Object
org.geotools.feature.FeatureCollectionIteration
- Direct Known Subclasses:
- FilteringIteration
public class FeatureCollectionIteration
- extends java.lang.Object
The FeatureCollectionIteration provides a depth first traversal of a
FeatureCollection which will call the provided call-back Handler. Because
of the complex nature of Features, which may have other Features (or even a
collection of Features) as attributes, the handler is repsonsible for
maintaining its own state as to where in the traversal it is recieving
events from. Many handlers will not need to worry about state.
Implementation Notes: The depth first visitation is implemented
through recursion. The limits to recursion depending on the settings in the
JVM, but some tests show a 2 argument recursive having a limit of ~50000
method calls with a stack size of 512k (the standard setting).
- Author:
- Ian Schneider, USDA-ARS, Chris Holmes, TOPP
Method Summary |
void |
iterate()
Start the iteration. |
protected void |
iterate(java.util.Iterator iterator)
Perform the actual iteration on the Iterator which is provided. |
static void |
iteration(FeatureCollectionIteration.Handler handler,
FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> collection)
A convienience method for obtaining a new iteration and calling iterate. |
protected void |
walker(FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> collection)
Perform the iterative behavior on the given collection. |
protected void |
walker(org.opengis.feature.simple.SimpleFeature feature)
Perform the visitation of an individual Feature. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
handler
protected final FeatureCollectionIteration.Handler handler
- A callback handler for the iteration of the contents of a
FeatureCollection.
FeatureCollectionIteration
public FeatureCollectionIteration(FeatureCollectionIteration.Handler handler,
FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> collection)
throws java.lang.NullPointerException
- Create a new FeatureCollectionIteration with the given handler and
collection.
- Parameters:
handler
- The handler to perform operations on this iteration.collection
- The collection to iterate over.
- Throws:
java.lang.NullPointerException
- If handler or collection are null.
iteration
public static void iteration(FeatureCollectionIteration.Handler handler,
FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> collection)
- A convienience method for obtaining a new iteration and calling iterate.
- Parameters:
handler
- The handler to perform operations on this iteration.collection
- The collection to iterate over.
iterate
public void iterate()
- Start the iteration.
walker
protected void walker(FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> collection)
- Perform the iterative behavior on the given collection. This will alert
the handler with a
handleFeatureCollection
call, followed
by an iterate()
, followed by a
handler.endFeatureCollection()
call.
- Parameters:
collection
- The collection to iterate upon.
iterate
protected void iterate(java.util.Iterator iterator)
- Perform the actual iteration on the Iterator which is provided.
- Parameters:
iterator
- The Iterator to iterate upon.
walker
protected void walker(org.opengis.feature.simple.SimpleFeature feature)
- Perform the visitation of an individual Feature.
- Parameters:
feature
- The Feature to explore.
Copyright © 1996-2010 Geotools. All Rights Reserved.