[ 
https://issues.apache.org/jira/browse/HBASE-10934?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13965148#comment-13965148
 ] 

Enis Soztutar commented on HBASE-10934:
---------------------------------------

I was thinking about this, and I think we should consider whether we want the 
Admin / Table interfaces to be interfaces or abstract classes. Interfaces are 
natural choice, but if we will support users to have their own implementations 
of these interfaces, then adding new methods would break the compilation. 
Abstract classes are more flexible in that sense. 

If we go the interface way, I think we should document that although the API 
would be public, we might add methods freely. 

> Provide HBaseAdminInterface to abstract HBaseAdmin
> --------------------------------------------------
>
>                 Key: HBASE-10934
>                 URL: https://issues.apache.org/jira/browse/HBASE-10934
>             Project: HBase
>          Issue Type: Improvement
>          Components: Client
>            Reporter: Carter
>            Priority: Blocker
>             Fix For: 0.99.0
>
>
> As HBaseAdmin is essentially the administrative API, it would seem to follow 
> Java best practices to provide an interface to access it instead of requiring 
> applications to use the raw object.
> I am proposing (and would be happy to develop):
>  * A new interface, HBaseAdminInterface, that captures the signatures of the 
> API (HBaseAdmin will implement this interface)
>  * A new method, HConnection.getHBaseAdmin(), that returns an instance of the 
> interface



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to