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