[
https://issues.apache.org/jira/browse/SIS-596?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17824488#comment-17824488
]
Martin Desruisseaux commented on SIS-596:
-----------------------------------------
The {{ReplaceImports.xml}} Ant script can be used if a project imports SIS
internal packages.
> Better encapsulation of modules internal
> ----------------------------------------
>
> Key: SIS-596
> URL: https://issues.apache.org/jira/browse/SIS-596
> Project: Spatial Information Systems
> Issue Type: Improvement
> Components: Coverage, Features, Metadata, Referencing, Utilities
> Affects Versions: 1.4
> Reporter: Martin Desruisseaux
> Assignee: Martin Desruisseaux
> Priority: Minor
> Fix For: 1.5
>
> Attachments: ReplaceImports.xml
>
>
> 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.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)