org.geotools.feature.collection
Class SubFeatureList

java.lang.Object
  extended by org.geotools.feature.collection.AbstractFeatureCollection
      extended by org.geotools.feature.collection.SubFeatureCollection
          extended by org.geotools.feature.collection.SubFeatureList
All Implemented Interfaces:
RandomFeatureAccess, FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>

public class SubFeatureList
extends SubFeatureCollection
implements RandomFeatureAccess


Field Summary
 
Fields inherited from class org.geotools.feature.collection.SubFeatureCollection
collection, ff, filter
 
Fields inherited from class org.geotools.feature.collection.AbstractFeatureCollection
id, listeners, open, schema
 
Constructor Summary
SubFeatureList(FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> list, org.opengis.filter.Filter filter)
           
SubFeatureList(FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> list, org.opengis.filter.Filter filter, org.opengis.filter.sort.SortBy subSort)
          Create a simple SubFeatureList with the provided filter.
SubFeatureList(FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> list, java.util.List order)
           
SubFeatureList(FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> list, org.opengis.filter.sort.SortBy sort)
           
 
Method Summary
 boolean add(org.opengis.feature.simple.SimpleFeature feature)
          Appends element.
protected  org.opengis.filter.Filter createFilter()
          Lazy create a filter based on index
protected  java.util.List<org.opengis.filter.identity.FeatureId> createIndex()
          Put this SubFeatureList in touch with its inner index
 org.opengis.feature.simple.SimpleFeature get(int position)
          item at the specified index.
 org.opengis.feature.simple.SimpleFeature getFeatureMember(java.lang.String id)
          Access Feature content by feature id.
protected  java.util.List<org.opengis.filter.identity.FeatureId> index()
           
 int indexOf(org.opengis.feature.simple.SimpleFeature feature)
           
 int lastIndexOf(org.opengis.feature.simple.SimpleFeature feature)
           
 java.util.Iterator<org.opengis.feature.simple.SimpleFeature> openIterator()
          Returns a quick iterator that uses get and size methods.
 org.opengis.feature.simple.SimpleFeature remove(int position)
           
 org.opengis.feature.simple.SimpleFeature removeFeatureMember(java.lang.String id)
          Optional Method
 FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> subList(org.opengis.filter.Filter subfilter)
          Sublist of this sublist!
 
Methods inherited from class org.geotools.feature.collection.SubFeatureCollection
accepts, clear, close, closeIterator, collection, features, filter, getBounds, getCount, getID, isEmpty, reader, remove, size, sort, subCollection
 
Methods inherited from class org.geotools.feature.collection.AbstractFeatureCollection
accepts, addAll, addAll, addListener, close, contains, containsAll, getOpenIterators, getSchema, iterator, purge, removeAll, removeListener, retainAll, toArray, toArray
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.geotools.feature.FeatureCollection
accepts, addAll, addAll, addListener, clear, close, close, contains, containsAll, features, getBounds, getID, getSchema, isEmpty, iterator, purge, remove, removeAll, removeListener, retainAll, size, sort, subCollection, toArray, toArray
 

Constructor Detail

SubFeatureList

public SubFeatureList(FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> list,
                      org.opengis.filter.Filter filter)

SubFeatureList

public SubFeatureList(FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> list,
                      org.opengis.filter.sort.SortBy sort)

SubFeatureList

public SubFeatureList(FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> list,
                      org.opengis.filter.Filter filter,
                      org.opengis.filter.sort.SortBy subSort)
Create a simple SubFeatureList with the provided filter.

Parameters:
filter -

SubFeatureList

public SubFeatureList(FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> list,
                      java.util.List order)
Method Detail

get

public org.opengis.feature.simple.SimpleFeature get(int position)
item at the specified index.

Parameters:
index - index of item
Returns:
the item at the specified index.
Throws:
java.lang.IndexOutOfBoundsException - if index is not between 0 and size

createFilter

protected org.opengis.filter.Filter createFilter()
Lazy create a filter based on index

Overrides:
createFilter in class SubFeatureCollection

index

protected java.util.List<org.opengis.filter.identity.FeatureId> index()

createIndex

protected java.util.List<org.opengis.filter.identity.FeatureId> createIndex()
Put this SubFeatureList in touch with its inner index


add

public boolean add(org.opengis.feature.simple.SimpleFeature feature)
Appends element.

This implementation calls add(size(), o).

Note that this implementation throws an UnsupportedOperationException unless add(int, Object) is overridden.

Specified by:
add in interface FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature>
Overrides:
add in class SubFeatureCollection
Parameters:
item - the Object element to be appended to this list.
Returns:
true (as per the general contract of Collection.add).
Throws:
java.lang.UnsupportedOperationException - if the add method is not supported by this Set.
java.lang.ClassCastException - if the class of the specified element prevents it from being added to this set.
java.lang.IllegalArgumentException - some aspect of this element prevents it from being added to this collection.
See Also:
Collection.add(Object)

indexOf

public int indexOf(org.opengis.feature.simple.SimpleFeature feature)

lastIndexOf

public int lastIndexOf(org.opengis.feature.simple.SimpleFeature feature)

subList

public FeatureCollection<org.opengis.feature.simple.SimpleFeatureType,org.opengis.feature.simple.SimpleFeature> subList(org.opengis.filter.Filter subfilter)
Sublist of this sublist!

Implementation will ensure this does not get out of hand, order is maintained and only indexed once.

Overrides:
subList in class AbstractFeatureCollection

getFeatureMember

public org.opengis.feature.simple.SimpleFeature getFeatureMember(java.lang.String id)
                                                          throws java.util.NoSuchElementException
Description copied from interface: RandomFeatureAccess
Access Feature content by feature id.

Specified by:
getFeatureMember in interface RandomFeatureAccess
Returns:
Feature with the indicated or id
Throws:
java.util.NoSuchElementException - if a Feature with the indicated id is not present

removeFeatureMember

public org.opengis.feature.simple.SimpleFeature removeFeatureMember(java.lang.String id)
Description copied from interface: RandomFeatureAccess
Optional Method

Specified by:
removeFeatureMember in interface RandomFeatureAccess

remove

public org.opengis.feature.simple.SimpleFeature remove(int position)

openIterator

public java.util.Iterator<org.opengis.feature.simple.SimpleFeature> openIterator()
Returns a quick iterator that uses get and size methods.

As with all resource collections it is assumed that the iterator will be closed after use.

Overrides:
openIterator in class SubFeatureCollection
Returns:
an iterator over the elements in this list in proper sequence.
See Also:
#modCount


Copyright © 1996-2010 Geotools. All Rights Reserved.