[ 
https://issues.apache.org/jira/browse/HBASE-10479?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sergey Shelukhin updated HBASE-10479:
-------------------------------------

    Attachment: HBASE-10479.03.patch

HConnectionManager moved to ConnectionManagerInternal, HCM made a thin public 
wrapper.
I removed or reprecated a lot in HCM. Several create/delete/getConnection 
methods were already deprecated, I frankly have no idea why, they all look 
similarly valid for me.

Lots of changes all over the place due to extensive usage of internals esp. in 
tests.

The class has to be public, although only two methods used outside client 
package are setServerSideHConnectionRetries, and inject nonce generator, maybe 
these should be in yet another wrapper.

> 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
>         Attachments: HBASE-10479.01.patch, HBASE-10479.02.patch, 
> HBASE-10479.03.patch, HBASE-10479.patch
>
>
> 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