|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.geotools.caching.grid.featurecache.readers.GridCachingFeatureCollection
public class GridCachingFeatureCollection
Feature collection that reads features from two sources, a cache and a feature source.
Responsible for reading features & caching features from the feature source.
This is a read only feature collection.
Constructor Summary | |
---|---|
GridCachingFeatureCollection(org.opengis.filter.spatial.BBOX preFilter,
org.opengis.filter.Filter postFilter,
GridFeatureCache g,
FeatureSource<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> fs,
boolean cacheFeatures)
Creates a feature collection that will first read items from the cache then read any missing items from the feature source. |
|
GridCachingFeatureCollection(org.opengis.filter.spatial.BBOX preFilter,
Query query,
GridFeatureCache g,
FeatureSource<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> fs,
boolean cacheFeatures)
Creates a feature collection that will first read itmes from the cache and then read missing items from the feature source. |
|
GridCachingFeatureCollection(com.vividsolutions.jts.geom.Envelope e,
GridFeatureCache g)
Creates a feature collection that will only read items from the cache. |
Method Summary | ||
---|---|---|
void |
accepts(org.opengis.feature.FeatureVisitor visitor,
org.opengis.util.ProgressListener progress)
Visits all features in the collection. |
|
boolean |
add(org.opengis.feature.simple.SimpleFeature obj)
Add object to this collection. |
|
boolean |
addAll(java.util.Collection<? extends org.opengis.feature.simple.SimpleFeature> collection)
Add all the objects to the collection. |
|
boolean |
addAll(FeatureCollection<? extends org.opengis.feature.simple.SimpleFeatureType,? extends org.opengis.feature.simple.SimpleFeature> resource)
|
|
void |
addListener(CollectionListener listener)
Adds a listener for collection events. |
|
void |
clear()
|
|
void |
close(FeatureIterator<org.opengis.feature.simple.SimpleFeature> close)
Closes the feature iterator |
|
void |
close(java.util.Iterator<org.opengis.feature.simple.SimpleFeature> close)
Close the iterator |
|
boolean |
contains(java.lang.Object o)
Determines if the feature collection contains the given object. |
|
boolean |
containsAll(java.util.Collection<?> c)
Determines if the feature collection contains all objects in the collection |
|
FeatureIterator<org.opengis.feature.simple.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 |
|
java.lang.String |
getID()
ID used when serializing to GML |
|
org.opengis.feature.simple.SimpleFeatureType |
getSchema()
The schema for the child features of this collection. |
|
boolean |
isEmpty()
|
|
java.util.Iterator<org.opengis.feature.simple.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(java.lang.Object o)
|
|
boolean |
removeAll(java.util.Collection<?> c)
|
|
void |
removeListener(CollectionListener listener)
Removes a listener for collection events. |
|
boolean |
retainAll(java.util.Collection<?> c)
|
|
int |
size()
Determines the size of the feature collection |
|
FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> |
sort(org.opengis.filter.sort.SortBy order)
collection.subCollection( myFilter ).sort( {"foo","bar"} ); collection.subCollection( myFilter ).sort( "bar" ).sort("foo") |
|
FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> |
subCollection(org.opengis.filter.Filter filter)
FeatureCollection |
|
java.lang.Object[] |
toArray()
|
|
|
toArray(O[] a)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public GridCachingFeatureCollection(org.opengis.filter.spatial.BBOX preFilter, org.opengis.filter.Filter postFilter, GridFeatureCache g, FeatureSource<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> fs, boolean cacheFeatures)
preFilter
- the bounding filter of the requestpostFilter
- the complete request filterg
- fs
- cacheFeatures
- public GridCachingFeatureCollection(org.opengis.filter.spatial.BBOX preFilter, Query query, GridFeatureCache g, FeatureSource<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> fs, boolean cacheFeatures) throws java.io.IOException
preFilter
- the bounding filter of the requestquery
- the queryg
- fs
- cacheFeatures
-
java.io.IOException
public GridCachingFeatureCollection(com.vividsolutions.jts.geom.Envelope e, GridFeatureCache g)
e
- g
- Method Detail |
---|
public void accepts(org.opengis.feature.FeatureVisitor visitor, org.opengis.util.ProgressListener progress) throws java.io.IOException
accepts
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
visitor
- Closure applied to each feature in turn.progress
- Used to report progress, may be used to interrupt the operation
java.io.IOException
public void close(FeatureIterator<org.opengis.feature.simple.SimpleFeature> close)
close
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
public void close(java.util.Iterator<org.opengis.feature.simple.SimpleFeature> close)
close
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
public boolean contains(java.lang.Object o)
contains
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
Collection.contains(Object)
public boolean containsAll(java.util.Collection<?> c)
containsAll
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
Collection.containsAll(Collection)
public FeatureIterator<org.opengis.feature.simple.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<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
public ReferencedEnvelope getBounds()
FeatureCollection
getBounds
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
public java.lang.String getID()
FeatureCollection
getID
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
public org.opengis.feature.simple.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<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
public java.util.Iterator<org.opengis.feature.simple.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<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
public java.lang.Object[] toArray()
toArray
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
Collection.toArray()
public <O> O[] toArray(O[] a)
toArray
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
Collection.toArray(Object[])
public boolean isEmpty()
isEmpty
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
Collection.isEmpty()
public int size()
size
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
Collection.size()
public void removeListener(CollectionListener listener) throws java.lang.NullPointerException
FeatureCollection
removeListener
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
listener
- The listener to remove
java.lang.NullPointerException
- If the listener is null.public void addListener(CollectionListener listener) throws java.lang.NullPointerException
FeatureCollection
When this collection is backed by live data the event notification will follow the guidelines outlined by FeatureListner.
addListener
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
listener
- The listener to add
java.lang.NullPointerException
- If the listener is null.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<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
public boolean remove(java.lang.Object o)
remove
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
Collection.remove(Object)
public boolean removeAll(java.util.Collection<?> c)
removeAll
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
Collection.removeAll(Collection)
public boolean retainAll(java.util.Collection<?> c)
retainAll
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
Collection.retainAll(Collection)
public FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> subCollection(org.opengis.filter.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<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
FeatureList
public FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> sort(org.opengis.filter.sort.SortBy order)
FeatureCollection
sort
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
public boolean add(org.opengis.feature.simple.SimpleFeature obj)
FeatureCollection
This method is often not impelmented for collections produced as the result of a query.
add
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
Collection.add(Object)
public boolean addAll(java.util.Collection<? extends org.opengis.feature.simple.SimpleFeature> collection)
FeatureCollection
This method is often not implemented for collections produced as the results of a query.
addAll
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
Collection.addAll(Collection)
public boolean addAll(FeatureCollection<? extends org.opengis.feature.simple.SimpleFeatureType,? extends org.opengis.feature.simple.SimpleFeature> resource)
addAll
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
FeatureCollection.addAll(Collection)
public void clear()
clear
in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
java.lang.UnsupportedOperationException
Collection.clear()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |