[
https://issues.apache.org/jira/browse/HBASE-22874?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16911700#comment-16911700
]
Geoffrey Jacoby commented on HBASE-22874:
-----------------------------------------
[~shahrs87] - if you want to take it, go for it -- if not I can probably get to
it sometime in the next week or so. I think it's more than a 30 minute task
because it wouldn't just be changing the InterfaceAudience or creating a new
interface with the method "run(String[])", which we already have in the Tool
interface anyway.
I think [~Apache9]'s correct that BulkLoadHFiles / BulkLoadHFilesTool is the
right model here -- there's an IA.Public interface suitable for API usage and a
LimitedPrivate(Tools) implementation class suitable for command line use.
That means refactoring the Canary so that it exposes a true API instead of the
arg-parsed String array (and extracting it into Java interface), and then
refactoring the Tool portion of the canary to parse the args and call the API
instead. Figuring out exactly what that API looks like so that we're
comfortable marking the IA as Public will probably take some thought, because
the Canary has quite a few command arguments.
> Canary should not be IA.Public
> ------------------------------
>
> Key: HBASE-22874
> URL: https://issues.apache.org/jira/browse/HBASE-22874
> Project: HBase
> Issue Type: Bug
> Components: canary
> Reporter: Duo Zhang
> Assignee: Rushabh S Shah
> Priority: Blocker
> Fix For: 3.0.0, 1.5.0, 2.3.0, 2.2.1, 2.1.6, 1.3.6, 1.4.11
>
>
> It can be marked as IA.LimitedPrivate(TOOLS).
--
This message was sent by Atlassian Jira
(v8.3.2#803003)