Package repast.simphony.space.gis
Class FeatureAgentFactory<T>
java.lang.Object
repast.simphony.space.gis.FeatureAgentFactory<T>
- Direct Known Subclasses:
 DefaultFeatureAgentFactory,ShapefileFeatureAgentFactory
Abstract factory for adapting agents to features. This creates a FeatureType
 given an agent class.
 
 TODO Geotools [minor] - this class would benefit from cleanup since there's lots of
      duplicate code, along with subclasses: 
                ShapefileFeatureAgentFactory
                DefaultFeatureAgentFactory
- Author:
 - Nick Collier, Eric Tatara
 
- 
Field Summary
Fields - 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionprotected voidcreateClassAttributes(Class<T> agentClass) Create a list of class attributes for the FeatureAgentabstract FeatureAgentgetFeature(T agent, Geography geography) protected org.opengis.feature.simple.SimpleFeatureTypegetFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass) protected org.opengis.feature.simple.SimpleFeatureTypegetFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass, List<FeatureAttributeAdapter> adapters) protected org.opengis.feature.simple.SimpleFeatureTypegetShapefileFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass) Gets a feature type appropriate for writing to shapefile.protected org.opengis.feature.simple.SimpleFeatureTypegetShapefileFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass, List<FeatureAttributeAdapter> adapters) Gets a feature type appropriate for writing to shapefile. 
- 
Field Details
- 
GEOM_ATTRIBUTE_NAME
- See Also:
 
 - 
classAttributeList
protected List<repast.simphony.space.gis.FeatureAgentFactory.ObjectClassAttributeData> classAttributeList 
 - 
 - 
Constructor Details
- 
FeatureAgentFactory
public FeatureAgentFactory() 
 - 
 - 
Method Details
- 
getFeature
 - 
getShapefileFeatureType
protected org.opengis.feature.simple.SimpleFeatureType getShapefileFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass) throws IntrospectionException, org.geotools.feature.SchemaException Gets a feature type appropriate for writing to shapefile.- Parameters:
 agentClass-coordRefSystem-geomClass-- Returns:
 - Throws:
 IntrospectionExceptionorg.geotools.feature.SchemaException
 - 
getShapefileFeatureType
protected org.opengis.feature.simple.SimpleFeatureType getShapefileFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass, List<FeatureAttributeAdapter> adapters) throws IntrospectionException, org.geotools.feature.SchemaException Gets a feature type appropriate for writing to shapefile.- Parameters:
 agentClass-coordRefSystem-geomClass-- Returns:
 - Throws:
 IntrospectionExceptionorg.geotools.feature.SchemaException
 - 
getFeatureType
protected org.opengis.feature.simple.SimpleFeatureType getFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass) throws IntrospectionException, org.geotools.feature.SchemaException - Throws:
 IntrospectionExceptionorg.geotools.feature.SchemaException
 - 
getFeatureType
protected org.opengis.feature.simple.SimpleFeatureType getFeatureType(Class agentClass, org.opengis.referencing.crs.CoordinateReferenceSystem coordRefSystem, Class<? extends org.locationtech.jts.geom.Geometry> geomClass, List<FeatureAttributeAdapter> adapters) throws IntrospectionException, org.geotools.feature.SchemaException - Throws:
 IntrospectionExceptionorg.geotools.feature.SchemaException
 - 
createClassAttributes
Create a list of class attributes for the FeatureAgent- Parameters:
 agentClass-
 
 -