Author: jgarnett Date: 2006-05-26 01:36:18 -0700 (Fri, 26 May 2006) New Revision: 19680 Added: geotools/branches/fm/module/main/src/org/geotools/feature/simple/FastS= impleFeature.java Modified: geotools/branches/fm/module/main/src/org/geotools/feature/simple/Simpl= eFeatureBuilder.java geotools/branches/fm/module/main/src/org/geotools/feature/simple/Simpl= eFeatureTypeImpl.java geotools/branches/fm/module/main/src/org/geotools/feature/simple/Simpl= eSchema.java geotools/branches/fm/module/main/src/org/geotools/feature/type/Geometr= yTypeImpl.java geotools/branches/fm/module/main/src/org/geotools/feature/type/Propert= yDescriptorImpl.java geotools/branches/fm/module/main/src/org/geotools/feature/type/Propert= yTypeImpl.java geotools/branches/fm/module/main/src/org/geotools/feature/type/TypeFac= toryImpl.java geotools/branches/fm/module/main/test/org/geotools/feature/type/TypeBu= ilderTest.java geotools/branches/fm/module/main/test/org/geotools/feature/type/TypeSy= stemTest.java geotools/branches/fm/module/main/test/org/geotools/filter/FilterTestSu= pport.java geotools/branches/fm/module/main/test/org/geotools/filter/function/Equ= alIntervalFunctionTest.java geotools/branches/fm/module/main/test/org/geotools/filter/function/Fun= ctionTestSupport.java geotools/branches/fm/module/main/test/org/geotools/filter/function/Qua= ntileFunctionTest.java Log: change to putClient properties Added: geotools/branches/fm/module/main/src/org/geotools/feature/simple/F= astSimpleFeature.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/src/org/geotools/feature/simple/Fast= SimpleFeature.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/src/org/geotools/feature/simple/Fast= SimpleFeature.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -0,0 +1,337 @@ +package org.geotools.feature.simple; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; +import java.util.List; + +import org.geotools.geometry.jts.ReferencedEnvelope; +import org.opengis.feature.Attribute; +import org.opengis.feature.GeometryAttribute; +import org.opengis.feature.simple.SimpleFeature; +import org.opengis.feature.simple.SimpleFeatureType; +import org.opengis.feature.type.AttributeDescriptor; +import org.opengis.feature.type.AttributeType; +import org.opengis.feature.type.Name; +import org.opengis.feature.type.PropertyDescriptor; +import org.opengis.feature.type.PropertyType; +import org.opengis.referencing.crs.CoordinateReferenceSystem; +import org.opengis.spatialschema.geometry.BoundingBox; + +import com.vividsolutions.jts.geom.Geometry; + +/** + * This class is designed to be fast and lighweight, making use of the + * assumptions of SimpleFeature to do everything in the easiest manner p= ossible. + * <p> + * This code operates under the assumption that the most common use will= be + * through the SimpleFeatureAPI and that we should lazyly create any wra= pers + * (such as AttributeDescriptor)as needed. + * </p> + * <p> + * In the interests of going quick we will not perform any tests here an= d allow + * a subclass classed StrickSimpleFeature to provide a decent implementa= tion as + * required. + * </p> + *=20 + * @author Jody Garnett + */ +public class FastSimpleFeature implements SimpleFeature { + private SimpleFeatureType type; + + private String id; + + private Object values[]; + + private List list; // list of values + + private List attributes; // attribute descriptors (wrapers) + + private int defaultIndex; + + public FastSimpleFeature(SimpleFeatureType type, String id) { + this(type, id, new Object[type.getProperties().size()]); + } + + public FastSimpleFeature(SimpleFeatureType type, String id, Object[] va= lues) { + this.type =3D type; + this.id =3D id; + this.values =3D values; + this.list =3D Arrays.asList(values); + this.defaultIndex =3D type.indexOf(type.getDefaultGeometry().getName() + .getLocalPart()); + } + + public List types() { + return type.types(); + } + + public List values() { + return list; + } + + public AttributeType getType() { + return type; + } + + public Object get(String name) { + return values[type.indexOf(name)]; + } + + public Object get(int index) { + return values[index]; + } + + public void set(String name, Object value) { + values[type.indexOf(name)] =3D value; + } + + public void set(int index, Object value) { + values[index] =3D value; + } + + public int getNumberOfAttributes() { + return values.length; + } + + public Object defaultGeometry() { + int index =3D type.indexOf(type.getDefaultGeometry().getName() + .getLocalPart()); + return get(type.getDefaultGeometry().getName().getLocalPart()); + } + + public void defaultGeometry(Object arg0) { + set(type.getDefaultGeometry().getName().getLocalPart()); + } + + /** + * List of AttributeDescriptors in the order indicated by SimpleFeature= Type. + *=20 + * This method will mostly be called by generic feature code that has n= ot + * been optimized for the helper methods contained in this class. + *=20 + * AttributeDescriptors here will be wrappers around two core real obje= cts: + * <ul> + * <li>value[index] + * <li>type.get( index ) + * </ul> + */ + public synchronized Object get() { + if (attributes =3D=3D null) { + attributes =3D new ArrayList(values.length); + final int LENGTH =3D values.length; + for (int i =3D 0; i < LENGTH; i++) { + if( i =3D=3D defaultIndex ){ + list.add( new IndexGeometryAttribute(i)); + } + else { + list.add(new IndexAttribute(i)); + } + } + } + return attributes; + } + + /** + * Always will return null because. + * <p> + * To be used with a descriptor this SimpleFeature would be being used = as an + * attirbute in another Feature, not something we are interested in ple= ase + * just go use a normal implementation, we are optimized and limited. + */ + public AttributeDescriptor getDescriptor() { + return null; + } + + /** + * We are expecting an List of Attributes with type and values compatti= ble + * with our contents. + */ + public void set(Object list) throws IllegalArgumentException { + List attributes =3D (List) list; + final int LENGTH =3D values.length; + for (int i =3D 0; i < LENGTH; i++) { + Attribute attribute =3D (Attribute) attributes.get(i); + values[i] =3D attribute.get(); + } + } + + public Collection attributes() { + return attributes(); + } + + public Collection associations() { + return Collections.EMPTY_LIST; + } + + public List get(Name name) { + return Collections.singletonList( get(name.getLocalPart())); + } + + public boolean nillable() { + return false; + } + + public String getID() { + return id; // Feature ID + } + + public PropertyDescriptor descriptor() { + return null; // lack descriptor, not suitable use for SimpleFeature + } + + public Name name() { + return null; // lack name + } + + public void putClientProperty(Object arg0, Object arg1) { + } + + public Object getClientProperty(Object arg0) { + return null; + } + + public CoordinateReferenceSystem getCRS() { + return type.getCRS(); + } + + public void setCRS(CoordinateReferenceSystem crs) { + if (!type.getCRS().equals(crs)) { + throw new IllegalArgumentException("Provided crs does not match"); + } + } + + public BoundingBox getBounds() { + return getDefaultGeometry().getBounds(); + } + + public GeometryAttribute getDefaultGeometry() { + return (GeometryAttribute) attributes.get(defaultIndex); + } + + public void setDefaultGeometry(GeometryAttribute geom) { + values[defaultIndex] =3D geom.get(); + } + + protected class IndexGeometryAttribute extends IndexAttribute implement= s + GeometryAttribute { + BoundingBox bounds =3D null; + + public IndexGeometryAttribute(int index) { + super(index); + } + + public CoordinateReferenceSystem getCRS() { + return type.getCRS(); + } + + public void setCRS(CoordinateReferenceSystem crs) { + if (!type.getCRS().equals(crs)) { + throw new IllegalArgumentException( + "Provided crs does not match"); + } + } + public void setBounds(BoundingBox bbox) { + bounds =3D bbox; + } + public synchronized BoundingBox getBounds() { + if (bounds =3D=3D null) { + if (values[index] instanceof Geometry) { + Geometry geometry =3D (Geometry) values[index]; + bounds =3D new ReferencedEnvelope(geometry + .getEnvelopeInternal(), type.getCRS()); + } + } + return bounds; + } + + public void set(Object geom) { + values[index] =3D geom; + } + + } + + protected class IndexAttribute implements Attribute { + int index; + + IndexDescriptor descriptor; + + public IndexAttribute(int index) { + this.index =3D index; + descriptor =3D new IndexDescriptor(index); + } + + public AttributeDescriptor getDescriptor() { + return descriptor; + } + + public boolean nillable() { + return true; + } + + public AttributeType getType() { + return type.get( index ); + } + + public String getID() { + return null; + } + + public Object get() { + return values[index]; + } + + public void set(Object value) throws IllegalArgumentException { + values[index] =3D value; + } + + public PropertyDescriptor descriptor() { + return descriptor; + } + + public Name name() { + return descriptor.getName(); + } + =09 + } + + protected class IndexDescriptor implements AttributeDescriptor { + int index; + + protected IndexDescriptor(int index) { + this.index =3D index; + } + + public boolean isNillable() { + return true; + } + + public AttributeType getType() { + return type.get(index); + } + + public int getMinOccurs() { + return 1; + } + + public int getMaxOccurs() { + return 1; + } + + public void putUserData(Object arg0, Object arg1) { + } + + public Object getUserData(Object arg0) { + return null; + } + + public Name getName() { + return type.get(index).getName(); + } + + public PropertyType type() { + return type.get(index); + } + } +} Property changes on: geotools/branches/fm/module/main/src/org/geotools/fe= ature/simple/FastSimpleFeature.java ___________________________________________________________________ Name: svn:mime-type + text/plain Name: svn:keywords + Id URL Name: svn:eol-style + native Modified: geotools/branches/fm/module/main/src/org/geotools/feature/simpl= e/SimpleFeatureBuilder.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/src/org/geotools/feature/simple/Simp= leFeatureBuilder.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/src/org/geotools/feature/simple/Simp= leFeatureBuilder.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -11,20 +11,30 @@ import org.opengis.feature.Feature; import org.opengis.feature.GeometryAttribute; =20 -import org.opengis.feature.simple.SimpleFeature; import org.opengis.feature.simple.SimpleFeatureType; import org.opengis.feature.type.AttributeDescriptor; =20 +/** + * This builder will help you put together a SimpleFeature. + * <p> + * Since the simple feature is well simple, this class + * is not strictly required. If you like the coding style + * of chaining together attributes using a builder however + * this class is for you. + * </p> + *=20 + * @author Justin + */ public class SimpleFeatureBuilder extends AttributeBuilder { =20 public SimpleFeatureBuilder(AttributeFactory factory) { super(factory); } =20 + /** Call to add the next attribute to the builder. */ public void add(Object value) { add(null,value); } - =20 public void add(String id, Object value) { int index =3D properties().size(); @@ -66,14 +76,13 @@ } } } - } - =20 + } =20 return feature; } =20 =20 protected void postBuild(ComplexAttribute attribute) { =20 - } + } =20 } Modified: geotools/branches/fm/module/main/src/org/geotools/feature/simpl= e/SimpleFeatureTypeImpl.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/src/org/geotools/feature/simple/Simp= leFeatureTypeImpl.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/src/org/geotools/feature/simple/Simp= leFeatureTypeImpl.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -18,6 +18,12 @@ import org.opengis.referencing.crs.CoordinateReferenceSystem; import org.opengis.util.InternationalString; =20 +/** + * Implementation fo SimpleFeatureType, subtypes must be atomic and + * are stored in a list. + *=20 + * @author Justin + */ public class SimpleFeatureTypeImpl extends FeatureTypeImpl implements SimpleFeatureType { =20 @@ -45,6 +51,17 @@ return (AttributeType) types().get(index); } =20 + public int indexOf(String arg0) { + int index =3D 0; + for( Iterator itr =3D SCHEMA.iterator(); itr.hasNext(); index ++){ + AttributeDescriptor descriptor =3D (AttributeDescriptor) itr.next(); + if( name.equals(descriptor.getName().getLocalPart())){ + return index; + } + } + return -1; + } +=09 /** * Number of available attributes */ @@ -81,5 +98,4 @@ return null; } =09 -=09 } Modified: geotools/branches/fm/module/main/src/org/geotools/feature/simpl= e/SimpleSchema.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/src/org/geotools/feature/simple/Simp= leSchema.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/src/org/geotools/feature/simple/Simp= leSchema.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -25,7 +25,6 @@ * Schema containing a simple set of types. *=20 * @author Justin Deoliveira, The Open Planning Project, jdeolive@openpl= ans.org - * */ public class SimpleSchema extends SchemaImpl { =20 Modified: geotools/branches/fm/module/main/src/org/geotools/feature/type/= GeometryTypeImpl.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/src/org/geotools/feature/type/Geomet= ryTypeImpl.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/src/org/geotools/feature/type/Geomet= ryTypeImpl.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -2,19 +2,13 @@ =20 import java.util.Set; =20 -import org.geotools.referencing.crs.DefaultGeocentricCRS; import org.opengis.feature.type.AttributeType; import org.opengis.feature.type.GeometryType; import org.opengis.feature.type.TypeName; import org.opengis.referencing.crs.CoordinateReferenceSystem; import org.opengis.util.InternationalString; =20 -import com.vividsolutions.jts.geom.Coordinate; -import com.vividsolutions.jts.geom.Geometry; -import com.vividsolutions.jts.geom.GeometryCollection; import com.vividsolutions.jts.geom.GeometryFactory; -import com.vividsolutions.jts.geom.LinearRing; -import com.vividsolutions.jts.geom.PrecisionModel; =20 public class GeometryTypeImpl extends AttributeTypeImpl implements Geome= tryType { =20 @@ -26,7 +20,6 @@ */ private CoordinateReferenceSystem CRS; =20 - public GeometryTypeImpl( TypeName name, Class binding, CoordinateReferenceSystem crs,=20 boolean identified, boolean isAbstract, Set restrictions,=20 @@ -40,56 +33,4 @@ return CRS; } =20 -=09 - /** - * Helper class used to force CS information on JTS Geometry - *=20 - * JD: since this class doesn't implement geotools geometry type it is=20 - * not really accessible. This should be put somewhere else. - */ - private static class CSGeometryFactory extends GeometryFactory { - =20 - static public GeometryFactory DEFAULT =3D new GeometryFactory(); =20 - static public PrecisionModel DEFAULT_PRECISON_MODEL =3D new Precisio= nModel(); - - public CSGeometryFactory(CoordinateReferenceSystem cs) { - super(toPrecisionModel(cs), toSRID(cs)); - } - - public GeometryCollection createGeometryCollection(Geometry[] geomet= ries) { - GeometryCollection gc =3D super.createGeometryCollection(geometr= ies); - - // JTS14 - //gc.setUserData( cs ); - return gc; - } - - public LinearRing createLinearRing(Coordinate[] coordinates) { - LinearRing lr =3D super.createLinearRing(coordinates); - - // JTS14 - //gc.setUserData( cs ); - return lr; - } - - // - // And so on - // Utility Functions - private static int toSRID(CoordinateReferenceSystem cs) { - if ((cs =3D=3D null) || (cs =3D=3D DefaultGeocentricCRS.CARTESIA= N)) { - return 0; - } - - // not sure how to tell SRID from CoordinateSystem? - return 0; - } - - private static PrecisionModel toPrecisionModel(CoordinateReferenceSy= stem cs) { - if ((cs =3D=3D null) || (cs =3D=3D DefaultGeocentricCRS.CARTESIA= N)) { - return DEFAULT_PRECISON_MODEL; - } - - return DEFAULT_PRECISON_MODEL; - } - } } Modified: geotools/branches/fm/module/main/src/org/geotools/feature/type/= PropertyDescriptorImpl.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/src/org/geotools/feature/type/Proper= tyDescriptorImpl.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/src/org/geotools/feature/type/Proper= tyDescriptorImpl.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -10,12 +10,12 @@ Map properties =3D new HashMap(); =09 =09 - public void putClientProperty(Object key, Object value) { + public void putUserData(Object key, Object value) { properties.put(key,value); =20 } =20 - public Object getClientProperty(Object key) { + public Object getUserData(Object key) { return properties.get(key); } =20 Modified: geotools/branches/fm/module/main/src/org/geotools/feature/type/= PropertyTypeImpl.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/src/org/geotools/feature/type/Proper= tyTypeImpl.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/src/org/geotools/feature/type/Proper= tyTypeImpl.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -1,6 +1,8 @@ package org.geotools.feature.type; =20 import java.util.Collections; +import java.util.HashMap; +import java.util.Map; import java.util.Set; =20 import org.geotools.resources.Utilities; @@ -14,6 +16,7 @@ protected final boolean isAbstract; protected final Set restrictions; protected final InternationalString description; + protected final Map userData; =09 public PropertyTypeImpl( TypeName name, boolean isAbstract, Set restrictions,=20 @@ -21,13 +24,13 @@ ) { this.name =3D name; this.isAbstract =3D isAbstract; - this.description =3D description; - =09 if (restrictions =3D=3D null) { this.restrictions =3D restrictions; } else { this.restrictions =3D Collections.unmodifiableSet(restrictions); } + this.description =3D description; + this.userData =3D new HashMap(); =09 } =09 public TypeName getName() { @@ -88,4 +91,16 @@ =20 } =20 + public Object getUserData(Object key) { + return userData.get( key ); + } + + public void putUserData(Object key, Object value) { + if( value =3D=3D null && userData.containsKey( key )){ + userData.remove( key ); + } + else if (value !=3D null ){ + userData.put( key, value ); + } + } } Modified: geotools/branches/fm/module/main/src/org/geotools/feature/type/= TypeFactoryImpl.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/src/org/geotools/feature/type/TypeFa= ctoryImpl.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/src/org/geotools/feature/type/TypeFa= ctoryImpl.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -21,6 +21,7 @@ import org.opengis.feature.type.Name; import org.opengis.feature.type.OperationDescriptor; import org.opengis.feature.type.OperationType; +import org.opengis.feature.type.Schema; import org.opengis.feature.type.StructuralDescriptor; import org.opengis.feature.type.TypeFactory; import org.opengis.feature.type.TypeName; @@ -34,6 +35,10 @@ CRSFactory crsFactory; FilterFactory filterFactory; =20 + public Schema createSchema(String uri) { + return new SchemaImpl( uri ); + } + =20 public CRSFactory getCRSFactory() { return crsFactory; } Modified: geotools/branches/fm/module/main/test/org/geotools/feature/type= /TypeBuilderTest.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/test/org/geotools/feature/type/TypeB= uilderTest.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/test/org/geotools/feature/type/TypeB= uilderTest.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -1,31 +1,17 @@ package org.geotools.feature.type; =20 -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; import java.util.Date; -import java.util.List; =20 import junit.framework.TestCase; =20 import org.geotools.TestContainer; - import org.geotools.feature.TypeBuilder; import org.opengis.feature.type.AssociationType; -import org.opengis.feature.type.AttributeDescriptor; import org.opengis.feature.type.AttributeType; import org.opengis.feature.type.ComplexType; - import org.opengis.feature.type.FeatureCollectionType; import org.opengis.feature.type.FeatureType; - import org.opengis.feature.type.GeometryType; -import org.opengis.feature.type.Name; -import org.opengis.feature.type.Namespace; -import org.opengis.feature.type.Schema; -import org.opengis.feature.type.TypeFactory; -import org.opengis.feature.type.TypeName; -import org.picocontainer.defaults.ConstructorInjectionComponentAdapter; =20 import com.vividsolutions.jts.geom.Point; =20 Modified: geotools/branches/fm/module/main/test/org/geotools/feature/type= /TypeSystemTest.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/test/org/geotools/feature/type/TypeS= ystemTest.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/test/org/geotools/feature/type/TypeS= ystemTest.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -1,7 +1,6 @@ package org.geotools.feature.type; =20 import java.util.ArrayList; -import java.util.Collection; import java.util.Collections; import java.util.Date; import java.util.List; @@ -12,7 +11,6 @@ import org.opengis.feature.type.AttributeDescriptor; import org.opengis.feature.type.AttributeType; import org.opengis.feature.type.ComplexType; - import org.opengis.feature.type.FeatureType; import org.opengis.feature.type.Name; import org.opengis.feature.type.Namespace; Modified: geotools/branches/fm/module/main/test/org/geotools/filter/Filte= rTestSupport.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/test/org/geotools/filter/FilterTestS= upport.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/test/org/geotools/filter/FilterTestS= upport.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -6,19 +6,13 @@ import junit.framework.TestCase; =20 import org.geotools.TestContainer; -import org.geotools.feature.AttributeFactoryImpl; import org.geotools.feature.Types; import org.geotools.feature.simple.SimpleFeatureBuilder; - import org.geotools.feature.simple.SimpleTypeBuilder; -import org.geotools.feature.type.TypeFactoryImpl; import org.opengis.feature.simple.SimpleFeature; - import org.opengis.feature.simple.SimpleFeatureType; - import org.opengis.feature.type.AttributeType; import org.opengis.feature.type.TypeFactory; -import org.picocontainer.defaults.DefaultPicoContainer; =20 import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.GeometryFactory; Modified: geotools/branches/fm/module/main/test/org/geotools/filter/funct= ion/EqualIntervalFunctionTest.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/test/org/geotools/filter/function/Eq= ualIntervalFunctionTest.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/test/org/geotools/filter/function/Eq= ualIntervalFunctionTest.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -8,7 +8,6 @@ import org.geotools.filter.expression.FunctionExpression; import org.geotools.filter.parser.ParseException; import org.opengis.feature.Feature; -import org.opengis.feature.simple.SimpleFeature; =20 /** * Modified: geotools/branches/fm/module/main/test/org/geotools/filter/funct= ion/FunctionTestSupport.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/test/org/geotools/filter/function/Fu= nctionTestSupport.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/test/org/geotools/filter/function/Fu= nctionTestSupport.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -13,19 +13,16 @@ import org.geotools.TestContainer; import org.geotools.feature.Types; import org.geotools.feature.simple.SimpleFeatureBuilder; - import org.geotools.feature.simple.SimpleTypeBuilder; import org.geotools.filter.ExpressionBuilder; import org.geotools.filter.FilterFactory; import org.geotools.filter.FilterFactoryFinder; import org.opengis.feature.FeatureCollection; - import org.opengis.feature.simple.SimpleFeature; import org.opengis.feature.simple.SimpleFeatureType; import org.opengis.feature.type.AssociationType; import org.opengis.feature.type.AttributeType; import org.opengis.feature.type.FeatureCollectionType; - import org.opengis.feature.type.TypeFactory; =20 /** Modified: geotools/branches/fm/module/main/test/org/geotools/filter/funct= ion/QuantileFunctionTest.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- geotools/branches/fm/module/main/test/org/geotools/filter/function/Qu= antileFunctionTest.java 2006-05-26 00:01:56 UTC (rev 19679) +++ geotools/branches/fm/module/main/test/org/geotools/filter/function/Qu= antileFunctionTest.java 2006-05-26 08:36:18 UTC (rev 19680) @@ -1,7 +1,6 @@ package org.geotools.filter.function; =20 import java.util.Collections; -import java.util.Iterator; =20 import org.geotools.feature.FeatureCollections; import org.geotools.feature.Types; @@ -12,7 +11,6 @@ import org.geotools.filter.expression.FunctionExpression; import org.geotools.filter.expression.MathExpression; import org.geotools.filter.parser.ParseException; -import org.opengis.feature.Feature; import org.opengis.feature.FeatureCollection; import org.opengis.feature.simple.SimpleFeature; import org.opengis.feature.type.AssociationType; |