Hello all

I would like to prepare a SIS Release Candidate (RC) soon. But before
doing so, I would like a consolidation of the ShapeFile API. This does
not affect the internal JDBC implementation, only the public API (even
if incomplete, we can complete later). The package is:

https://builds.apache.org/job/sis-dev/javadoc/org/apache/sis/storage/shapefile/package-summary.html

My suggestions:

  * Make FieldDescriptor and FieldDescriptors class package-privated,
    because they seem to be implementation details internal to the
    Shapefile reader.
  * Make DataType and ShapeTypeEnum package-privated for now, because I
    think that they may be partially replaced by more generic
    constructs. For example the categorization of geometries in point,
    polyline, polygon, etc. is not specific to the Shapefile format.
  * Make Database a package-private class, or move it in an internal
    package for now, as it depends on AbstractAutoChecker (which we
    suggested to move in an internal package too) and to give us more
    time to review its API:
      o For example the current Database API provides a public
        getByteBuffer() method which returns the MappedByteBuffer used
        internally by the Database. I think it is quite dangerous to
        expose publicly such Database internal.
  * ShapeFile should extend DataStore, and its fields should be private.


What do you think?

    Martin

Reply via email to