|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
ObjectPreGeneralizedFeatureCollection
public class PreGeneralizedFeatureCollection
FeatureCollection
for PreGeneralizedSimpleFeature
This collection is read only, modifying methods result in UnsupportedOperationException
Field Summary | |
---|---|
protected FeatureCollection<SimpleFeatureType,SimpleFeature> |
backendCollection
|
protected String |
backendGeomPropertyName
|
protected SimpleFeatureType |
featureType
|
protected String |
geomPropertyName
|
protected int[] |
indexMapping
|
Constructor Summary | |
---|---|
PreGeneralizedFeatureCollection(FeatureCollection<SimpleFeatureType,SimpleFeature> backendCollection,
SimpleFeatureType featureType,
int[] indexMapping,
String geomPropertyName,
String backendGeomPropertyName)
|
Method Summary | |
---|---|
void |
accepts(FeatureVisitor visitor,
ProgressListener progress)
Visit the contents of a feature collection. |
boolean |
add(SimpleFeature arg0)
Add object to this collection. |
boolean |
addAll(Collection arg0)
Add all the objects to the collection. |
boolean |
addAll(FeatureCollection arg0)
|
void |
addListener(CollectionListener listener)
Adds a listener for collection events. |
void |
clear()
|
void |
close(FeatureIterator<SimpleFeature> it)
Clean up after any resources associated with this FeatureIterator in a manner similar to JDO collections. |
void |
close(Iterator it)
Clean up after any resources associated with this itterator in a manner similar to JDO collections. |
boolean |
contains(Object feature)
|
boolean |
containsAll(Collection coll)
|
FeatureIterator<SimpleFeature> |
features()
Obtain a FeatureIterator |
ReferencedEnvelope |
getBounds()
Get the total bounds of this collection which is calculated by doing a union of the bounds of each feature inside of it |
String |
getID()
ID used when serializing to GML |
SimpleFeatureType |
getSchema()
The schema for the child features of this collection. |
boolean |
isEmpty()
|
Iterator<SimpleFeature> |
iterator()
An iterator over this collection, which must be closed after use. |
void |
purge()
Close any outstanding resources released by this resources. |
boolean |
remove(Object arg0)
|
boolean |
removeAll(Collection arg0)
|
void |
removeListener(CollectionListener listener)
Removes a listener for collection events. |
boolean |
retainAll(Collection arg0)
|
int |
size()
|
FeatureCollection<SimpleFeatureType,SimpleFeature> |
sort(SortBy sortBy)
collection.subCollection( myFilter ).sort( {"foo","bar"} ); collection.subCollection( myFilter ).sort( "bar" ).sort("foo") |
FeatureCollection<SimpleFeatureType,SimpleFeature> |
subCollection(Filter filter)
FeatureCollection |
Object[] |
toArray()
|
Object[] |
toArray(Object[] arg0)
|
protected UnsupportedOperationException |
unsupported()
|
Methods inherited from class Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected FeatureCollection<SimpleFeatureType,SimpleFeature> backendCollection
protected SimpleFeatureType featureType
protected String geomPropertyName
protected String backendGeomPropertyName
protected int[] indexMapping
Constructor Detail |
---|
public PreGeneralizedFeatureCollection(FeatureCollection<SimpleFeatureType,SimpleFeature> backendCollection, SimpleFeatureType featureType, int[] indexMapping, String geomPropertyName, String backendGeomPropertyName)
Method Detail |
---|
protected UnsupportedOperationException unsupported()
public void accepts(FeatureVisitor visitor, ProgressListener progress) throws IOException
FeatureCollection
The order of traversal is dependent on the FeatureCollection implementation; some collections are able to make efficient use of an internal index in order to quickly visit features located in the same region.
accepts
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
visitor
- Closure applied to each feature in turn.progress
- Used to report progress, may be used to interrupt the operation
IOException
public boolean add(SimpleFeature arg0)
FeatureCollection
This method is often not impelmented for collections produced as the result of a query.
add
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.add(Object)
public boolean addAll(Collection arg0)
FeatureCollection
This method is often not implemented for collections produced as the results of a query.
addAll
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.addAll(Collection)
public boolean addAll(FeatureCollection arg0)
addAll
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
FeatureCollection.addAll(Collection)
public void addListener(CollectionListener listener) throws NullPointerException
FeatureCollection
When this collection is backed by live data the event notification will follow the guidelines outlined by FeatureListner.
addListener
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
listener
- The listener to add
NullPointerException
- If the listener is null.public void clear()
clear
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.clear()
public void close(FeatureIterator<SimpleFeature> it)
FeatureCollection
Iterator iterator = collection.iterator();
try {
for( Iterator i=collection.iterator(); i.hasNext();){
Feature feature = i.hasNext();
System.out.println( feature.getID() );
}
}
finally {
collection.close( iterator );
}
close
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
public void close(Iterator it)
FeatureCollection
Iterator iterator = collection.iterator();
try {
for( Iterator i=collection.iterator(); i.hasNext();){
Feature feature = (Feature) i.hasNext();
System.out.println( feature.getID() );
}
}
finally {
collection.close( iterator );
}
close
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
public boolean contains(Object feature)
contains
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.contains(Object)
public boolean containsAll(Collection coll)
containsAll
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.containsAll(Collection)
public FeatureIterator<SimpleFeature> features()
FeatureCollection
The implementation of Collection must adhere to the rules of
fail-fast concurrent modification. In addition (to allow for
resource backed collections, the close( Iterator )
method must be called.
This is almost equivalent to:
getAttribute(getFeatureType().getAttributeType(0).getName()).iterator();
.
Iterator<Feature>
FeatureIterator iterator=collection.features();
try {
while( iterator.hasNext() ){
Feature feature = iterator.next();
System.out.println( feature.getID() );
}
}
finally {
collection.close( iterator );
}
GML Note: The contents of this iterator are considered to be defined by featureMember tags (and/or the single allowed FeatureMembers tag). Please see getFeatureType for more details.
features
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
public ReferencedEnvelope getBounds()
FeatureCollection
getBounds
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
public String getID()
FeatureCollection
getID
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
public SimpleFeatureType getSchema()
FeatureCollection
There is a difference between getFeatureType() and getSchema()represents the LCD FeatureType that best represents the contents of this collection.
The method getSchema() is named for compatability with the geotools 2.0 API. In the Geotools 2.2 time frame we should be able to replace this method with a careful check of getFeatureType() and its attributes.
getSchema
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
public boolean isEmpty()
isEmpty
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.isEmpty()
public Iterator<SimpleFeature> iterator()
FeatureCollection
Collection is not guaranteed to be ordered in any manner.
The implementation of Collection must adhere to the rules of
fail-fast concurrent modification. In addition (to allow for
resource backed collections, the close( Iterator )
method must be called.
Example (safe) use:
Iterator iterator = collection.iterator();
try {
while( iterator.hasNext();){
Feature feature = (Feature) iterator.hasNext();
System.out.println( feature.getID() );
}
}
finally {
collection.close( iterator );
}
iterator
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
public void purge()
FeatureCollection
This method should be used with great caution, it is however available to allow the use of the ResourceCollection with algorthims that are unaware of the need to close iterators after use.
Example of using a normal Collections utility method:
Collections.sort( collection );
collection.purge();
purge
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
public boolean remove(Object arg0)
remove
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.remove(Object)
public boolean removeAll(Collection arg0)
removeAll
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.removeAll(Collection)
public void removeListener(CollectionListener listener) throws NullPointerException
FeatureCollection
removeListener
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
listener
- The listener to remove
NullPointerException
- If the listener is null.public boolean retainAll(Collection arg0)
retainAll
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.retainAll(Collection)
public int size()
size
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.size()
public FeatureCollection<SimpleFeatureType,SimpleFeature> sort(SortBy sortBy)
FeatureCollection
sort
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
public FeatureCollection<SimpleFeatureType,SimpleFeature> subCollection(Filter filter)
FeatureCollection
The contents of the returned FeatureCollection
This method is used cut down on the number of filter based methods
required for a useful FeatureCollection
Example Use:
The results of subCollection:
The above recommended use is agreement with the Collections API precident of
List.subList( start, end ).
collection.subCollection( filter ).clear();
subCollection
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
FeatureList
public Object[] toArray()
toArray
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.toArray()
public Object[] toArray(Object[] arg0)
toArray
in interface FeatureCollection<SimpleFeatureType,SimpleFeature>
Collection.toArray(Object[])
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |