[
https://issues.apache.org/jira/browse/HADOOP-6668?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tom White updated HADOOP-6668:
------------------------------
Attachment: HADOOP-6668.patch
Thanks for the detailed feedback, Sanjay. I have produced a new patch which
addresses all your points (see below). I've also gone through and added Public
Stable to those classes where I had left it implicit. As you said, this is
getting close now.
> * ContentSummary, FsServerDefaults Public, Evolving. But all the writable
> methods are Private.
Agreed - done.
> * PositionedReadable, Seekable and Syncable - there was an internal debate in
> my corridor on this - lets discuss this on the jira.
I think these are user-facing, hence Public. Seekable#seekToNewSource should be
private though, since it's an internal method.
> * security classes limited private evolving
OK - done. But do we need further changes given MAPREDUCE-1651?
> * DF, DU used by HDFS and MR for checking localfs - hence limitedPrivate
> evolving
Done
> * FsShell - we are only exposing bin/hadoop fs; FsShell is an implementation
> of it. Hence private
Done
> * Trash - private - the public cmds delete and expunge cmds expose the
> functionality
I think the intent is for users to be able to move files to trash, and expunge
trash, from Java programs. I think Hive and Pig may use it too. So I think
it's Public Stable (or Evolving perhaps).
> * Metrics - see my detailed comment above
Done
> * The io.serializer classes are private but the class name is public since it
> can be specified in config (use the same solution as proposed for metric
> plugins.
I made the serializer classes LimitedPrivate (HDFS, MapReduce), and left the
Serialization implementations Public, but with Private methods.
> * GenericOptionsParser, private but Tool, ToolRunner public.
OK - done.
> * ReflectionUtils, limited private.
Client code may use ReflectionUtils.newInstance() - so I would suggest Public
Evolving.
> Apply audience and stability annotations to classes in common
> -------------------------------------------------------------
>
> Key: HADOOP-6668
> URL: https://issues.apache.org/jira/browse/HADOOP-6668
> Project: Hadoop Common
> Issue Type: Sub-task
> Components: documentation
> Reporter: Tom White
> Assignee: Tom White
> Priority: Blocker
> Fix For: 0.21.0
>
> Attachments: common.interface-tw-annotated.txt, HADOOP-6668.patch,
> HADOOP-6668.patch, HADOOP-6668.patch, HADOOP-6668.patch, HADOOP-6668.patch,
> HADOOP-6668.patch, HADOOP-6668.patch
>
>
> Mark private implementation classes with the InterfaceAudience.Private or
> InterfaceAudience.LimitedPrivate annotation to exclude them from user Javadoc
> and JDiff.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.