As part of my work on the org.openjump.core.apitools package I decided to do some refactoring of the FeatureSchema and AttributeInfo class. (This work is being done in my own fork, not in the JPP SVN.)
Here are a summary of my changes: - Replaced the static fields in the AttributeType class with a enum. - Extracted an interface from FeatureSchema called FeatureBlueprint, and made FeatureSchema an implementation of this interface. - Overhauled the AttributeInfo class fro Pirol, and made it a top-level class in the org.openjump.core.feature package. - Modified FeatureBlueprint/FeatureSchema to use the new AttributeType class and the new AttributeValue class. Client code now has the ability to specify a null value, default value, description, and unit identifier for each attribute in a FeatureSchema. (I'm going to use a portion of JSR-275 to define units. This is what GeoTools is doing.) This is NOT required of client code. You can still simply add an attribute by specifying an attribute name and attribute type. I'll start unit testing and writing javadoc comments soon. Then I'll start the process of refactoring the other classes in the core to use the modified API, since I just broke a lot of stuff. :] Let me know if you are interested (or have questions) about my work. Perhaps this fall we can integrate some of my changes into the JPP SVN if they prove useful and not too dangerous. SS ------------------------------------------------------------------------------ _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel