[
https://issues.apache.org/jira/browse/HADOOP-10431?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13963171#comment-13963171
]
Alejandro Abdelnur commented on HADOOP-10431:
---------------------------------------------
Larry,
What do you mean by separate databinding object? on the KMS server a metadata
is being built using querystring params, on the KMS client it is being build
using values from a Json bean.
1. We could use JSON lib automatic binding, that requires public setters, so we
are back to square one, we need to change visibility.
2. We could create interface/impls of those classes, the API would use the
interfaces, the providers would use the impls. The impls would be in an spi
package. It seems a bit overkilling for simple beans.
3. We could annotate the constructors as @Private or @Limited.
4. We could make the constructors protected, forcing KeyProvider impls to
implement dummy subclasses to use them.
To be able to implement additional KeyProvider we need either an interface or a
visibility change.
> Change visibility of KeyStore KeyVersion/Metadata/Options constructor and
> methods to public
> -------------------------------------------------------------------------------------------
>
> Key: HADOOP-10431
> URL: https://issues.apache.org/jira/browse/HADOOP-10431
> Project: Hadoop Common
> Issue Type: Improvement
> Components: security
> Affects Versions: 3.0.0
> Reporter: Alejandro Abdelnur
> Assignee: Alejandro Abdelnur
> Attachments: HADOOP-10431.patch
>
>
> Making KeyVersion/Metadata/Options constructor and methods public will
> facilitate {{KeyProvider}} implementations to use those classes.
--
This message was sent by Atlassian JIRA
(v6.2#6252)