Uploaded image for project: 'Spatial Information Systems'
  1. Spatial Information Systems
  2. SIS-596

Better encapsulation of modules internal

    XMLWordPrintableJSON

Details

    Description

      Apache SIS has some internal packages not intended to appear in public API. Some internal packages are read by other SIS modules. Those packages must be declared by qualified exports. In order to avoid exporting more than intended, the following convention can be applied:

      • org.apache.sis.*.internal are strictly internal to the module. Those packages should not be exported at all, not even as qualified exports.
      • org.apache.sis.*.privy are internal packages shared by other modules. "Privy" means "something that is known or understood by only a select few individuals". The "individuals" here are the SIS modules.

      This task is about moving some (not all) classes from internal to privy packages, depending on whether they are used by other modules. The goal is to improve encapsulation by avoiding to export some classes that are internal mechanic even from the point of view of other SIS modules.

      Attachments

        1. ReplaceImports.xml
          4 kB
          Martin Desruisseaux

        Issue Links

          Activity

            People

              desruisseaux Martin Desruisseaux
              desruisseaux Martin Desruisseaux
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: