[ https://issues.apache.org/jira/browse/HADOOP-8895?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13472412#comment-13472412 ]
Daryn Sharp commented on HADOOP-8895: ------------------------------------- bq. For instance, if a WebHdfsFileSystem could implement TokenRenewer, we might not need DelegationTokenRenewer.Renewable. Correct to the second half. The {{DelegationTokenRenewer.Renewable}} interface only existed for the code being removed, so it too should be removed. I actually intended for {{TokenRenewer}} to be implemented as an interface for classes implementing tokens. This idea was rejected in favor of using lower level renewers that bypassed the token issuing class. I believe part of the idea as a class is to force simple lightweight renewer objects since the service loader will instantiate all of them. Also, the filesystems currently cannot directly implement {{TokenRenewer}} because the service loader instantiation won't be usable. It will either need to instantiate another copy of itself or its lower level client with the token's address, or will need to initialize itself - but filesystems are not designed to be initialized multiple times. This is why I think it's not needed. > TokenRenewer should be an interface, it is currently a fully abstract class > --------------------------------------------------------------------------- > > Key: HADOOP-8895 > URL: https://issues.apache.org/jira/browse/HADOOP-8895 > Project: Hadoop Common > Issue Type: Bug > Affects Versions: 2.0.1-alpha > Reporter: Karthik Kambatla > Assignee: Karthik Kambatla > Priority: Minor > Attachments: HADOOP-8895.patch > > > TokenRenewer is a fully abstract class. Making it an interface will allow > classes extending other classes to implement the interface. -- 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