hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Solomon Duskis (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-11879) Change TableInputFormatBase to take interface arguments
Date Fri, 12 Sep 2014 15:41:33 GMT

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

Solomon Duskis commented on HBASE-11879:

Does approach #2 also need to have a TableName passed in order to get both the Table and RegionLocator?

> Change TableInputFormatBase to take interface arguments
> -------------------------------------------------------
>                 Key: HBASE-11879
>                 URL: https://issues.apache.org/jira/browse/HBASE-11879
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Carter
>            Assignee: Carter
> As part of the ongoing interface abstraction work, I'm now investigating {{TableInputFormatBase}},
which has two methods that break encapsulation:
> {code}
> protected HTable getHTable();
> protected void setHTable(HTable table);
> {code}
> While these are protected methods, the base @InterfaceAudience.Public is abstract, meaning
that it supports extension by user code.
> I propose deprecating these two methods and replacing them with these four, once the
Table interface is merged:
> {code}
> protected Table getTable();
> protected void setTable(Table table);
> protected RegionLocator getRegionLocator();
> protected void setRegionLocator(RegionLocator regionLocator);
> {code}
> Since users will frequently call {{setTable}} and {{setRegionLocator}} together, it probably
also makes sense to add the following convenience method:
> {code}
> protected void setTableAndRegionLocator(Table table, RegionLocator regionLocator);
> {code}

This message was sent by Atlassian JIRA

View raw message