[ 
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)

Reply via email to