[ 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