[
https://issues.apache.org/jira/browse/DERBY-6163?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Knut Anders Hatlen updated DERBY-6163:
--------------------------------------
Attachment: d6163-1a.diff
Attached is a patch (1a) that makes all the abstract classes subclasses of
PageBasicOperation non-public, and also all the constructors that did not have
to be public because of the Formatable interface.
The patch also makes the class RawField non-public, even though it's not a
subclass of PageBasicOperation.
All the regression tests ran cleanly with the patch.
> Reduce visibility of methods in subclasses of PageBasicOperation
> ----------------------------------------------------------------
>
> Key: DERBY-6163
> URL: https://issues.apache.org/jira/browse/DERBY-6163
> Project: Derby
> Issue Type: Improvement
> Components: Store
> Affects Versions: 10.11.0.0
> Reporter: Knut Anders Hatlen
> Assignee: Knut Anders Hatlen
> Priority: Minor
> Attachments: d6163-1a.diff
>
>
> org.apache.derby.impl.store.raw.data.PageBasicOperation and its subclasses
> are public. They are however never used outside of the package in which they
> live, so package access should be sufficient for most of their methods.
> Reducing the visibility of the classes and/or their methods silences many
> warnings in my IDE (NetBeans). Typically, the warnings are about public
> methods that have parameters of non-public types.
> Note: These classes implement Formatable, which requires that the classes are
> public and have public no-arg constructors. We can still reduce the
> visibility of the abstract classes in the hierarchy, as well as the
> specialized constructors that take arguments, since they are not used by the
> serialization logic.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira