Hello,
I committed a change that links more the Shapefile files to the DBase file.
The Shapefile class could disappear. The way to read Features from a
shapefile is now :
InputFeatureStream is = new InputFeatureStream(shapeFile, databaseFile);
// Shapefile (.shp) and Database (.dbf) files.
Feature feature = is.readFeature(); // null is returned when the end of the
shapefile / database are reached.
Inside the map of the Feature, the objects values have now the SQL type
associated to their type : Date, Integer, Double, Float or String.
I expect it works. Regarding to the test units available it doesn’t cause
troubles, but... these tests are not checking deeply the problems that can
exist.
1) What control can I do on values red on shapefile (not the database part,
but the shapefile part) to ensure that I am not reading stupid things ?
2) Can we guess Shapefile entry #4 = Record #4 in the Database ? BTW, I
will add a new constructor to InputFeatureStream that will have an SQL request
of the form “SELECT * FROM <database> WHERE <single condition>“ to limit
Feature to a database condition.
3) Deleted records are still not taken into account in Database. If they
came, the record should be skept (but isn’t yet). I hope that when this happens
there is no Shapefile entry associated to this deleted record.
4) Shall I put all the exceptions in a public package instead of their
internal package ? I think it would be better.
Regards,
Marc Le Bihan