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

stack commented on HBASE-6495:
------------------------------

You have list of what HBaseAdmin needs beyond HConnection mighty Jesse?
                
> HBaseAdmin shouldn't expect HConnection to be an HConnectionImplementation
> --------------------------------------------------------------------------
>
>                 Key: HBASE-6495
>                 URL: https://issues.apache.org/jira/browse/HBASE-6495
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.96.0, 0.94.1
>            Reporter: Jesse Yates
>             Fix For: 0.96.0, 0.94.1
>
>
> Currently, the HBaseAdmin has a constructor that takes an HConnection, but 
> then immediately casts it to an HConnectionManager.HConnectionImplementation:
> {code}
>   public HBaseAdmin(HConnection connection)
>       throws MasterNotRunningException, ZooKeeperConnectionException {
>     this.conf = connection.getConfiguration();
>     // We want the real class, without showing it our public interface,
>     //  hence the cast.
>     this.connection = 
> (HConnectionManager.HConnectionImplementation)connection;
> {code}
> However, this breaks the explicit contract in the javadocs and makes it 
> basically impossible to mock out the hbaseadmin. 
> We need to either make the hbaseadmin use a basic HConnection and optimize 
> for cases where its smarter or bring up the couple of methods in 
> HConnectionManager.HConnectionImplementation to the HConnection interface.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to