org.deegree.feature
Class GenericFeatureCollection

java.lang.Object
  extended by org.deegree.feature.AbstractFeature
      extended by org.deegree.feature.AbstractFeatureCollection
          extended by org.deegree.feature.GenericFeatureCollection
All Implemented Interfaces:
Iterable<Feature>, Collection<Feature>, GMLObject, Object, TypedObjectNode, Feature, FeatureCollection

public class GenericFeatureCollection
extends AbstractFeatureCollection

Allows the representation of arbitrary FeatureCollections, including those that use FeatureCollectionTypes with additional properties.

Version:
$Revision:$, $Date:$
Author:
Markus Schneider , last edited by: $Author:$

Field Summary
 
Fields inherited from class org.deegree.feature.AbstractFeature
fid, ft, standardProps
 
Constructor Summary
GenericFeatureCollection()
          Creates a new empty GenericFeatureCollection instance without type information.
GenericFeatureCollection(FeatureCollectionType ft, String fid, List<Property> props, ExtraProps extraProps, GMLVersion version)
          Creates a new GenericFeatureCollection instance with type information and content specified using properties.
GenericFeatureCollection(String fid, Collection<Feature> memberFeatures)
          Creates a new GenericFeatureCollection instance without type information that contains the given features.
 
Method Summary
 boolean add(Feature e)
           
 boolean addAll(Collection<? extends Feature> c)
           
 void clear()
           
 boolean contains(Object o)
           
 boolean containsAll(Collection<?> c)
           
 Property[] getGeometryProperties()
          Returns all geometry-valued properties in order.
 QName getName()
          Returns the name of the feature.
 Property[] getProperties()
          Returns all properties in order, excluding standard GML properties such as gml:name.
 Property[] getProperties(QName propName)
          Returns the properties with the given name, in order.
 Property getProperty(QName propName)
          Returns the property with the given name.
 boolean isEmpty()
           
 Iterator<Feature> iterator()
           
 boolean remove(Object o)
           
 boolean removeAll(Collection<?> c)
           
 boolean retainAll(Collection<?> c)
           
 void setProperties(List<Property> props)
          Called during construction to initialize the properties of the feature.
 void setPropertyValue(QName propName, int occurrence, TypedObjectNode value)
          Sets the value of a specific occurrence of a property with a given name (or removes the property feature).
 int size()
           
 Object[] toArray()
           
<T> T[]
toArray(T[] a)
           
 
Methods inherited from class org.deegree.feature.AbstractFeatureCollection
calcEnvelope, getEnvelope, getMembers, getType
 
Methods inherited from class org.deegree.feature.AbstractFeature
getExtraProperties, getGMLProperties, getId, getProperties, getProperties, getProperty, setExtraProperties, setId, setProperties, setPropertyValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.deegree.feature.Feature
getExtraProperties, getGMLProperties, getId, getProperties, getProperties, getProperty, setExtraProperties, setId, setProperties, setPropertyValue
 
Methods inherited from interface java.util.Collection
equals, hashCode
 

Constructor Detail

GenericFeatureCollection

public GenericFeatureCollection(FeatureCollectionType ft,
                                String fid,
                                List<Property> props,
                                ExtraProps extraProps,
                                GMLVersion version)
Creates a new GenericFeatureCollection instance with type information and content specified using properties.

Parameters:
ft - feature collection type, must not be null
fid - feature id, may be null
props - properties (including feature member/feature member array properties), must not be null
version - GML version (determines the names/types of the standard properties), or null (then no standard GML properties are allowed)

GenericFeatureCollection

public GenericFeatureCollection(String fid,
                                Collection<Feature> memberFeatures)
Creates a new GenericFeatureCollection instance without type information that contains the given features.

Parameters:
fid -
memberFeatures -

GenericFeatureCollection

public GenericFeatureCollection()
Creates a new empty GenericFeatureCollection instance without type information.

Method Detail

getName

public QName getName()
Description copied from interface: Feature
Returns the name of the feature.

In a GML representation of the feature, this corresponds to the feature element's name.

Specified by:
getName in interface Feature
Overrides:
getName in class AbstractFeature
Returns:
the name of the feature instance, never null

getProperties

public Property[] getProperties()
Description copied from interface: Feature
Returns all properties in order, excluding standard GML properties such as gml:name.

Returns:
all properties, excluding standard GML properties, may be empty, but never null

setProperties

public void setProperties(List<Property> props)
                   throws IllegalArgumentException
Description copied from interface: Feature
Called during construction to initialize the properties of the feature.

Throws:
IllegalArgumentException - if the property names or values are not compatible with the feature type

iterator

public Iterator<Feature> iterator()

add

public boolean add(Feature e)

addAll

public boolean addAll(Collection<? extends Feature> c)

clear

public void clear()

contains

public boolean contains(Object o)

containsAll

public boolean containsAll(Collection<?> c)

isEmpty

public boolean isEmpty()

remove

public boolean remove(Object o)

removeAll

public boolean removeAll(Collection<?> c)

retainAll

public boolean retainAll(Collection<?> c)

size

public int size()

toArray

public Object[] toArray()

toArray

public <T> T[] toArray(T[] a)

setPropertyValue

public void setPropertyValue(QName propName,
                             int occurrence,
                             TypedObjectNode value)
Description copied from interface: Feature
Sets the value of a specific occurrence of a property with a given name (or removes the property feature).

Parameters:
propName - property name
occurrence - index of the property, starting with zero. If the property is not a multi-property (i.e. maxOccurs=1), this is always zero.
value - new value of the property or null (removes the property)

getProperties

public Property[] getProperties(QName propName)
Description copied from interface: Feature
Returns the properties with the given name, in order.

Parameters:
propName - name of the requested properties
Returns:
the properties with the given name, in order, may be empty, but never null

getProperty

public Property getProperty(QName propName)
Description copied from interface: Feature
Returns the property with the given name.

Parameters:
propName - name of the requested property
Returns:
the property with the given name

getGeometryProperties

public Property[] getGeometryProperties()
Description copied from interface: Feature
Returns all geometry-valued properties in order.

Returns:
all geometry properties


Copyright © 2011. All Rights Reserved.