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

Enis Soztutar commented on HBASE-10479:
---------------------------------------

We need to fix this sooner rather than later. HBASE-10347 already deprecates 
most of the cache related methods and region location related methods there. 
These should go into the new interface. It seems that in HConnection, by 
convention, we marked client-facing methods as public, and not-client-facing 
methods as package protected. However, there is no concept of package protected 
in interfaces in Java. We should start by deprecating every method not declared 
public in HC and move it to the new class. 

> HConnection interface is public but is used internally, and contains a bunch 
> of methods
> ---------------------------------------------------------------------------------------
>
>                 Key: HBASE-10479
>                 URL: https://issues.apache.org/jira/browse/HBASE-10479
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Sergey Shelukhin
>            Assignee: Sergey Shelukhin
>
> HConnection has too many methods for a public interface, and some of these 
> should not be public.
> It is used extensively for internal purposes, so we keep adding methods to it 
> that may not make sense for public interface.
> The idea is to create a separate internal interface inheriting HConnection, 
> copy some methods to it and deprecate them on HConnection. New methods for 
> internal use would be added to new interface; the deprecated methods would 
> eventually be removed from public interface.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to