[
https://issues.apache.org/jira/browse/HADOOP-3944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12623784#action_12623784
]
Doug Cutting commented on HADOOP-3944:
--------------------------------------
I don't think ReflectionUtils#newInstance() requires that the constructor is
public. This was done specifically so that internal classes could be excluded
from the javadoc. If TupleWritable is not for end-users, it should not be in
the javadoc. Should we re-open this?
> TupleWritable listed as public class but cannot be used without methods
> private to the package
> ----------------------------------------------------------------------------------------------
>
> Key: HADOOP-3944
> URL: https://issues.apache.org/jira/browse/HADOOP-3944
> Project: Hadoop Core
> Issue Type: Improvement
> Components: documentation
> Affects Versions: 0.17.1
> Reporter: Michael Andrews
> Priority: Minor
>
> Reading the hadoop-core javadocs, it appears as though TupleWritable can be
> used outside of the
> org.apache.hadoop.mapred.join.* package. A user can import TupleWritable but
> cannot use it correctly without the setWritten, and clearWritten methods
> being public. It seems as the though the intent was to make TupleWritable
> hidden from the user as it is dependent on CompositeRecordReader. As a
> possible solution, classes within a package can be made invisible to the user
> by omitting 'public' from the class definition. In the case of
> TupleWritable, this removes the javadoc link from other classes in
> mapred.join and it's not clear if these classes should be hidden from the
> user.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.