From: Martin D. <mar...@ge...> - 2008-12-19 09:58:02
|
Thanks a lot Adrian for all those explanation. I take this opportunit for strething my plan about the port of geotidy to Java 5: * Create a Mercurial clone of the Java 6 code repository. * Use some automatic tools that remove all annotations on that clone, not just JAXB ones. For example @Override support is more limited in Java 5 than Java 6, so it is easier to just remove everything. * Creates a org.geotools.internal.future package (not to be public). In this package, put a class with static method for every Java 6 methods I use. For example this package would have the following classes with the following methods: Arrays (from java.util) copyOf(double[],int) copyOf(float[],int) copyOf(long[],int) ... etc ... Math (from java.lang) copySign(double, double) nextUp(double) ... etc ... AffineTransform (from java.awt.geom) invert() quadrantRotation(int) ... etc ... Then use some automatic tools that replace every invocation of Arrays.copyOf(...) by org.geotools.internal.future.Arrays.copyOf(...). Some changes will need to be done by hand, but they will hopefully not be that numerous. * Deploy the JARs of the Java 5 port to the usual GeoTools Maven repository. Deploy the JARs of the original Java 6 version (with JAXB) on an other repository (currently http://geotidy.geomatys.fr/repository/) * Once we have a Java 5 port up and running, we just need to run "hg pull" from time to time to get the change done on the Java 6 branch, run the automatic tools again, and commit the result to the Java 5 repository. I believe it should be a low-effort process. Martin |