http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/devapidocs/src-html/org/apache/hadoop/hbase/util/AbstractHBaseTool.OptionsOrderComparator.html
----------------------------------------------------------------------
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/AbstractHBaseTool.OptionsOrderComparator.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/AbstractHBaseTool.OptionsOrderComparator.html
index e56d4d0..5616ff0 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/AbstractHBaseTool.OptionsOrderComparator.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/AbstractHBaseTool.OptionsOrderComparator.html
@@ -145,7 +145,7 @@
 <span class="sourceLineNo">137</span>      }<a name="line.137"></a>
 <span class="sourceLineNo">138</span>      String[] remainingArgs = new 
String[argsList.size()];<a name="line.138"></a>
 <span class="sourceLineNo">139</span>      argsList.toArray(remainingArgs);<a 
name="line.139"></a>
-<span class="sourceLineNo">140</span>      cmd = new 
DefaultParser().parse(options, remainingArgs);<a name="line.140"></a>
+<span class="sourceLineNo">140</span>      cmd = newParser().parse(options, 
remainingArgs);<a name="line.140"></a>
 <span class="sourceLineNo">141</span>    } catch (MissingOptionException e) 
{<a name="line.141"></a>
 <span class="sourceLineNo">142</span>      LOG.error(e.getMessage());<a 
name="line.142"></a>
 <span class="sourceLineNo">143</span>      LOG.error("Use -h or --help for 
usage instructions.");<a name="line.143"></a>
@@ -168,123 +168,133 @@
 <span class="sourceLineNo">160</span>    return ret;<a name="line.160"></a>
 <span class="sourceLineNo">161</span>  }<a name="line.161"></a>
 <span class="sourceLineNo">162</span><a name="line.162"></a>
-<span class="sourceLineNo">163</span>  private boolean isHelpCommand(String[] 
args) throws ParseException {<a name="line.163"></a>
-<span class="sourceLineNo">164</span>    Options helpOption = new 
Options().addOption(HELP_OPTION);<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    // this parses the command line but 
doesn't throw an exception on unknown options<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    CommandLine cl = new 
DefaultParser().parse(helpOption, args, true);<a name="line.166"></a>
-<span class="sourceLineNo">167</span>    return cl.getOptions().length != 0;<a 
name="line.167"></a>
-<span class="sourceLineNo">168</span>  }<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
-<span class="sourceLineNo">170</span>  protected CommandLine 
parseArgs(String[] args) throws ParseException {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>    options.addOption(SHORT_HELP_OPTION, 
LONG_HELP_OPTION, false, "Show usage");<a name="line.171"></a>
-<span class="sourceLineNo">172</span>    addOptions();<a name="line.172"></a>
-<span class="sourceLineNo">173</span>    CommandLineParser parser = new 
BasicParser();<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    return parser.parse(options, args);<a 
name="line.174"></a>
-<span class="sourceLineNo">175</span>  }<a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>  protected void printUsage() {<a 
name="line.177"></a>
-<span class="sourceLineNo">178</span>    printUsage("hbase " + 
getClass().getName() + " &lt;options&gt;", "Options:", "");<a 
name="line.178"></a>
-<span class="sourceLineNo">179</span>  }<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>  protected void printUsage(final String 
usageStr, final String usageHeader,<a name="line.181"></a>
-<span class="sourceLineNo">182</span>      final String usageFooter) {<a 
name="line.182"></a>
-<span class="sourceLineNo">183</span>    HelpFormatter helpFormatter = new 
HelpFormatter();<a name="line.183"></a>
-<span class="sourceLineNo">184</span>    helpFormatter.setWidth(120);<a 
name="line.184"></a>
-<span class="sourceLineNo">185</span>    helpFormatter.setOptionComparator(new 
OptionsOrderComparator());<a name="line.185"></a>
-<span class="sourceLineNo">186</span>    helpFormatter.printHelp(usageStr, 
usageHeader, options, usageFooter);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>  }<a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span>  protected void addOption(Option option) 
{<a name="line.189"></a>
-<span class="sourceLineNo">190</span>    options.addOption(option);<a 
name="line.190"></a>
-<span class="sourceLineNo">191</span>    optionsOrder.put(option, 
optionsCount++);<a name="line.191"></a>
-<span class="sourceLineNo">192</span>  }<a name="line.192"></a>
-<span class="sourceLineNo">193</span><a name="line.193"></a>
-<span class="sourceLineNo">194</span>  protected void addRequiredOption(Option 
option) {<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    option.setRequired(true);<a 
name="line.195"></a>
-<span class="sourceLineNo">196</span>    addOption(option);<a 
name="line.196"></a>
+<span class="sourceLineNo">163</span>  /**<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   * Create the parser to use for parsing 
and validating the command line. Since commons-cli lacks<a name="line.164"></a>
+<span class="sourceLineNo">165</span>   * the capability to validate arbitrary 
combination of options, it may be helpful to bake custom<a name="line.165"></a>
+<span class="sourceLineNo">166</span>   * logic into a specialized parser 
implementation. See LoadTestTool for examples.<a name="line.166"></a>
+<span class="sourceLineNo">167</span>   * @return a new parser specific to the 
current tool<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   */<a name="line.168"></a>
+<span class="sourceLineNo">169</span>  protected CommandLineParser newParser() 
{<a name="line.169"></a>
+<span class="sourceLineNo">170</span>    return new DefaultParser();<a 
name="line.170"></a>
+<span class="sourceLineNo">171</span>  }<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>  private boolean isHelpCommand(String[] 
args) throws ParseException {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    Options helpOption = new 
Options().addOption(HELP_OPTION);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    // this parses the command line but 
doesn't throw an exception on unknown options<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    CommandLine cl = new 
DefaultParser().parse(helpOption, args, true);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    return cl.getOptions().length != 0;<a 
name="line.177"></a>
+<span class="sourceLineNo">178</span>  }<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>  protected CommandLine 
parseArgs(String[] args) throws ParseException {<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    options.addOption(SHORT_HELP_OPTION, 
LONG_HELP_OPTION, false, "Show usage");<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    addOptions();<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    CommandLineParser parser = new 
BasicParser();<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    return parser.parse(options, args);<a 
name="line.184"></a>
+<span class="sourceLineNo">185</span>  }<a name="line.185"></a>
+<span class="sourceLineNo">186</span><a name="line.186"></a>
+<span class="sourceLineNo">187</span>  protected void printUsage() {<a 
name="line.187"></a>
+<span class="sourceLineNo">188</span>    printUsage("hbase " + 
getClass().getName() + " &lt;options&gt;", "Options:", "");<a 
name="line.188"></a>
+<span class="sourceLineNo">189</span>  }<a name="line.189"></a>
+<span class="sourceLineNo">190</span><a name="line.190"></a>
+<span class="sourceLineNo">191</span>  protected void printUsage(final String 
usageStr, final String usageHeader,<a name="line.191"></a>
+<span class="sourceLineNo">192</span>      final String usageFooter) {<a 
name="line.192"></a>
+<span class="sourceLineNo">193</span>    HelpFormatter helpFormatter = new 
HelpFormatter();<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    helpFormatter.setWidth(120);<a 
name="line.194"></a>
+<span class="sourceLineNo">195</span>    helpFormatter.setOptionComparator(new 
OptionsOrderComparator());<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    helpFormatter.printHelp(usageStr, 
usageHeader, options, usageFooter);<a name="line.196"></a>
 <span class="sourceLineNo">197</span>  }<a name="line.197"></a>
 <span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>  protected void 
addRequiredOptWithArg(String opt, String description) {<a name="line.199"></a>
-<span class="sourceLineNo">200</span>    Option option = new Option(opt, true, 
description);<a name="line.200"></a>
-<span class="sourceLineNo">201</span>    option.setRequired(true);<a 
name="line.201"></a>
-<span class="sourceLineNo">202</span>    addOption(option);<a 
name="line.202"></a>
-<span class="sourceLineNo">203</span>  }<a name="line.203"></a>
-<span class="sourceLineNo">204</span><a name="line.204"></a>
-<span class="sourceLineNo">205</span>  protected void 
addRequiredOptWithArg(String shortOpt, String longOpt, String description) {<a 
name="line.205"></a>
-<span class="sourceLineNo">206</span>    Option option = new Option(shortOpt, 
longOpt, true, description);<a name="line.206"></a>
-<span class="sourceLineNo">207</span>    option.setRequired(true);<a 
name="line.207"></a>
-<span class="sourceLineNo">208</span>    addOption(option);<a 
name="line.208"></a>
-<span class="sourceLineNo">209</span>  }<a name="line.209"></a>
-<span class="sourceLineNo">210</span><a name="line.210"></a>
-<span class="sourceLineNo">211</span>  protected void addOptNoArg(String opt, 
String description) {<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    addOption(new Option(opt, false, 
description));<a name="line.212"></a>
+<span class="sourceLineNo">199</span>  protected void addOption(Option option) 
{<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    options.addOption(option);<a 
name="line.200"></a>
+<span class="sourceLineNo">201</span>    optionsOrder.put(option, 
optionsCount++);<a name="line.201"></a>
+<span class="sourceLineNo">202</span>  }<a name="line.202"></a>
+<span class="sourceLineNo">203</span><a name="line.203"></a>
+<span class="sourceLineNo">204</span>  protected void addRequiredOption(Option 
option) {<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    option.setRequired(true);<a 
name="line.205"></a>
+<span class="sourceLineNo">206</span>    addOption(option);<a 
name="line.206"></a>
+<span class="sourceLineNo">207</span>  }<a name="line.207"></a>
+<span class="sourceLineNo">208</span><a name="line.208"></a>
+<span class="sourceLineNo">209</span>  protected void 
addRequiredOptWithArg(String opt, String description) {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>    Option option = new Option(opt, true, 
description);<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    option.setRequired(true);<a 
name="line.211"></a>
+<span class="sourceLineNo">212</span>    addOption(option);<a 
name="line.212"></a>
 <span class="sourceLineNo">213</span>  }<a name="line.213"></a>
 <span class="sourceLineNo">214</span><a name="line.214"></a>
-<span class="sourceLineNo">215</span>  protected void addOptNoArg(String 
shortOpt, String longOpt, String description) {<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    addOption(new Option(shortOpt, 
longOpt, false, description));<a name="line.216"></a>
-<span class="sourceLineNo">217</span>  }<a name="line.217"></a>
-<span class="sourceLineNo">218</span><a name="line.218"></a>
-<span class="sourceLineNo">219</span>  protected void addOptWithArg(String 
opt, String description) {<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    addOption(new Option(opt, true, 
description));<a name="line.220"></a>
-<span class="sourceLineNo">221</span>  }<a name="line.221"></a>
-<span class="sourceLineNo">222</span><a name="line.222"></a>
-<span class="sourceLineNo">223</span>  protected void addOptWithArg(String 
shortOpt, String longOpt, String description) {<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    addOption(new Option(shortOpt, 
longOpt, true, description));<a name="line.224"></a>
-<span class="sourceLineNo">225</span>  }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>  public int getOptionAsInt(CommandLine 
cmd, String opt, int defaultValue) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    if (cmd.hasOption(opt)) {<a 
name="line.228"></a>
-<span class="sourceLineNo">229</span>      return 
Integer.parseInt(cmd.getOptionValue(opt));<a name="line.229"></a>
-<span class="sourceLineNo">230</span>    } else {<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      return defaultValue;<a 
name="line.231"></a>
-<span class="sourceLineNo">232</span>    }<a name="line.232"></a>
-<span class="sourceLineNo">233</span>  }<a name="line.233"></a>
-<span class="sourceLineNo">234</span><a name="line.234"></a>
-<span class="sourceLineNo">235</span>  public long getOptionAsLong(CommandLine 
cmd, String opt, int defaultValue) {<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    if (cmd.hasOption(opt)) {<a 
name="line.236"></a>
-<span class="sourceLineNo">237</span>      return 
Long.parseLong(cmd.getOptionValue(opt));<a name="line.237"></a>
-<span class="sourceLineNo">238</span>    } else {<a name="line.238"></a>
-<span class="sourceLineNo">239</span>      return defaultValue;<a 
name="line.239"></a>
-<span class="sourceLineNo">240</span>    }<a name="line.240"></a>
-<span class="sourceLineNo">241</span>  }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>  public double 
getOptionAsDouble(CommandLine cmd, String opt, double defaultValue) {<a 
name="line.243"></a>
-<span class="sourceLineNo">244</span>    if (cmd.hasOption(opt)) {<a 
name="line.244"></a>
-<span class="sourceLineNo">245</span>      return 
Double.parseDouble(cmd.getOptionValue(opt));<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    } else {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      return defaultValue;<a 
name="line.247"></a>
-<span class="sourceLineNo">248</span>    }<a name="line.248"></a>
-<span class="sourceLineNo">249</span>  }<a name="line.249"></a>
-<span class="sourceLineNo">250</span><a name="line.250"></a>
-<span class="sourceLineNo">251</span>  /**<a name="line.251"></a>
-<span class="sourceLineNo">252</span>   * Parse a number and enforce a 
range.<a name="line.252"></a>
-<span class="sourceLineNo">253</span>   */<a name="line.253"></a>
-<span class="sourceLineNo">254</span>  public static long parseLong(String s, 
long minValue, long maxValue) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>    long l = Long.parseLong(s);<a 
name="line.255"></a>
-<span class="sourceLineNo">256</span>    if (l &lt; minValue || l &gt; 
maxValue) {<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      throw new 
IllegalArgumentException("The value " + l<a name="line.257"></a>
-<span class="sourceLineNo">258</span>          + " is out of range [" + 
minValue + ", " + maxValue + "]");<a name="line.258"></a>
-<span class="sourceLineNo">259</span>    }<a name="line.259"></a>
-<span class="sourceLineNo">260</span>    return l;<a name="line.260"></a>
-<span class="sourceLineNo">261</span>  }<a name="line.261"></a>
-<span class="sourceLineNo">262</span><a name="line.262"></a>
-<span class="sourceLineNo">263</span>  public static int parseInt(String s, 
int minValue, int maxValue) {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    return (int) parseLong(s, minValue, 
maxValue);<a name="line.264"></a>
-<span class="sourceLineNo">265</span>  }<a name="line.265"></a>
-<span class="sourceLineNo">266</span><a name="line.266"></a>
-<span class="sourceLineNo">267</span>  /** Call this from the concrete tool 
class's main function. */<a name="line.267"></a>
-<span class="sourceLineNo">268</span>  protected void doStaticMain(String 
args[]) {<a name="line.268"></a>
-<span class="sourceLineNo">269</span>    int ret;<a name="line.269"></a>
-<span class="sourceLineNo">270</span>    try {<a name="line.270"></a>
-<span class="sourceLineNo">271</span>      ret = 
ToolRunner.run(HBaseConfiguration.create(), this, args);<a name="line.271"></a>
-<span class="sourceLineNo">272</span>    } catch (Exception ex) {<a 
name="line.272"></a>
-<span class="sourceLineNo">273</span>      LOG.error("Error running 
command-line tool", ex);<a name="line.273"></a>
-<span class="sourceLineNo">274</span>      ret = EXIT_FAILURE;<a 
name="line.274"></a>
-<span class="sourceLineNo">275</span>    }<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    System.exit(ret);<a 
name="line.276"></a>
-<span class="sourceLineNo">277</span>  }<a name="line.277"></a>
-<span class="sourceLineNo">278</span><a name="line.278"></a>
-<span class="sourceLineNo">279</span>}<a name="line.279"></a>
+<span class="sourceLineNo">215</span>  protected void 
addRequiredOptWithArg(String shortOpt, String longOpt, String description) {<a 
name="line.215"></a>
+<span class="sourceLineNo">216</span>    Option option = new Option(shortOpt, 
longOpt, true, description);<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    option.setRequired(true);<a 
name="line.217"></a>
+<span class="sourceLineNo">218</span>    addOption(option);<a 
name="line.218"></a>
+<span class="sourceLineNo">219</span>  }<a name="line.219"></a>
+<span class="sourceLineNo">220</span><a name="line.220"></a>
+<span class="sourceLineNo">221</span>  protected void addOptNoArg(String opt, 
String description) {<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    addOption(new Option(opt, false, 
description));<a name="line.222"></a>
+<span class="sourceLineNo">223</span>  }<a name="line.223"></a>
+<span class="sourceLineNo">224</span><a name="line.224"></a>
+<span class="sourceLineNo">225</span>  protected void addOptNoArg(String 
shortOpt, String longOpt, String description) {<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    addOption(new Option(shortOpt, 
longOpt, false, description));<a name="line.226"></a>
+<span class="sourceLineNo">227</span>  }<a name="line.227"></a>
+<span class="sourceLineNo">228</span><a name="line.228"></a>
+<span class="sourceLineNo">229</span>  protected void addOptWithArg(String 
opt, String description) {<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    addOption(new Option(opt, true, 
description));<a name="line.230"></a>
+<span class="sourceLineNo">231</span>  }<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>  protected void addOptWithArg(String 
shortOpt, String longOpt, String description) {<a name="line.233"></a>
+<span class="sourceLineNo">234</span>    addOption(new Option(shortOpt, 
longOpt, true, description));<a name="line.234"></a>
+<span class="sourceLineNo">235</span>  }<a name="line.235"></a>
+<span class="sourceLineNo">236</span><a name="line.236"></a>
+<span class="sourceLineNo">237</span>  public int getOptionAsInt(CommandLine 
cmd, String opt, int defaultValue) {<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    if (cmd.hasOption(opt)) {<a 
name="line.238"></a>
+<span class="sourceLineNo">239</span>      return 
Integer.parseInt(cmd.getOptionValue(opt));<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    } else {<a name="line.240"></a>
+<span class="sourceLineNo">241</span>      return defaultValue;<a 
name="line.241"></a>
+<span class="sourceLineNo">242</span>    }<a name="line.242"></a>
+<span class="sourceLineNo">243</span>  }<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>  public long getOptionAsLong(CommandLine 
cmd, String opt, int defaultValue) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>    if (cmd.hasOption(opt)) {<a 
name="line.246"></a>
+<span class="sourceLineNo">247</span>      return 
Long.parseLong(cmd.getOptionValue(opt));<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    } else {<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      return defaultValue;<a 
name="line.249"></a>
+<span class="sourceLineNo">250</span>    }<a name="line.250"></a>
+<span class="sourceLineNo">251</span>  }<a name="line.251"></a>
+<span class="sourceLineNo">252</span><a name="line.252"></a>
+<span class="sourceLineNo">253</span>  public double 
getOptionAsDouble(CommandLine cmd, String opt, double defaultValue) {<a 
name="line.253"></a>
+<span class="sourceLineNo">254</span>    if (cmd.hasOption(opt)) {<a 
name="line.254"></a>
+<span class="sourceLineNo">255</span>      return 
Double.parseDouble(cmd.getOptionValue(opt));<a name="line.255"></a>
+<span class="sourceLineNo">256</span>    } else {<a name="line.256"></a>
+<span class="sourceLineNo">257</span>      return defaultValue;<a 
name="line.257"></a>
+<span class="sourceLineNo">258</span>    }<a name="line.258"></a>
+<span class="sourceLineNo">259</span>  }<a name="line.259"></a>
+<span class="sourceLineNo">260</span><a name="line.260"></a>
+<span class="sourceLineNo">261</span>  /**<a name="line.261"></a>
+<span class="sourceLineNo">262</span>   * Parse a number and enforce a 
range.<a name="line.262"></a>
+<span class="sourceLineNo">263</span>   */<a name="line.263"></a>
+<span class="sourceLineNo">264</span>  public static long parseLong(String s, 
long minValue, long maxValue) {<a name="line.264"></a>
+<span class="sourceLineNo">265</span>    long l = Long.parseLong(s);<a 
name="line.265"></a>
+<span class="sourceLineNo">266</span>    if (l &lt; minValue || l &gt; 
maxValue) {<a name="line.266"></a>
+<span class="sourceLineNo">267</span>      throw new 
IllegalArgumentException("The value " + l<a name="line.267"></a>
+<span class="sourceLineNo">268</span>          + " is out of range [" + 
minValue + ", " + maxValue + "]");<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    }<a name="line.269"></a>
+<span class="sourceLineNo">270</span>    return l;<a name="line.270"></a>
+<span class="sourceLineNo">271</span>  }<a name="line.271"></a>
+<span class="sourceLineNo">272</span><a name="line.272"></a>
+<span class="sourceLineNo">273</span>  public static int parseInt(String s, 
int minValue, int maxValue) {<a name="line.273"></a>
+<span class="sourceLineNo">274</span>    return (int) parseLong(s, minValue, 
maxValue);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>  }<a name="line.275"></a>
+<span class="sourceLineNo">276</span><a name="line.276"></a>
+<span class="sourceLineNo">277</span>  /** Call this from the concrete tool 
class's main function. */<a name="line.277"></a>
+<span class="sourceLineNo">278</span>  protected void doStaticMain(String 
args[]) {<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    int ret;<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    try {<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      ret = 
ToolRunner.run(HBaseConfiguration.create(), this, args);<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    } catch (Exception ex) {<a 
name="line.282"></a>
+<span class="sourceLineNo">283</span>      LOG.error("Error running 
command-line tool", ex);<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      ret = EXIT_FAILURE;<a 
name="line.284"></a>
+<span class="sourceLineNo">285</span>    }<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    System.exit(ret);<a 
name="line.286"></a>
+<span class="sourceLineNo">287</span>  }<a name="line.287"></a>
+<span class="sourceLineNo">288</span><a name="line.288"></a>
+<span class="sourceLineNo">289</span>}<a name="line.289"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/devapidocs/src-html/org/apache/hadoop/hbase/util/AbstractHBaseTool.html
----------------------------------------------------------------------
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/AbstractHBaseTool.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/AbstractHBaseTool.html
index e56d4d0..5616ff0 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/util/AbstractHBaseTool.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/util/AbstractHBaseTool.html
@@ -145,7 +145,7 @@
 <span class="sourceLineNo">137</span>      }<a name="line.137"></a>
 <span class="sourceLineNo">138</span>      String[] remainingArgs = new 
String[argsList.size()];<a name="line.138"></a>
 <span class="sourceLineNo">139</span>      argsList.toArray(remainingArgs);<a 
name="line.139"></a>
-<span class="sourceLineNo">140</span>      cmd = new 
DefaultParser().parse(options, remainingArgs);<a name="line.140"></a>
+<span class="sourceLineNo">140</span>      cmd = newParser().parse(options, 
remainingArgs);<a name="line.140"></a>
 <span class="sourceLineNo">141</span>    } catch (MissingOptionException e) 
{<a name="line.141"></a>
 <span class="sourceLineNo">142</span>      LOG.error(e.getMessage());<a 
name="line.142"></a>
 <span class="sourceLineNo">143</span>      LOG.error("Use -h or --help for 
usage instructions.");<a name="line.143"></a>
@@ -168,123 +168,133 @@
 <span class="sourceLineNo">160</span>    return ret;<a name="line.160"></a>
 <span class="sourceLineNo">161</span>  }<a name="line.161"></a>
 <span class="sourceLineNo">162</span><a name="line.162"></a>
-<span class="sourceLineNo">163</span>  private boolean isHelpCommand(String[] 
args) throws ParseException {<a name="line.163"></a>
-<span class="sourceLineNo">164</span>    Options helpOption = new 
Options().addOption(HELP_OPTION);<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    // this parses the command line but 
doesn't throw an exception on unknown options<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    CommandLine cl = new 
DefaultParser().parse(helpOption, args, true);<a name="line.166"></a>
-<span class="sourceLineNo">167</span>    return cl.getOptions().length != 0;<a 
name="line.167"></a>
-<span class="sourceLineNo">168</span>  }<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
-<span class="sourceLineNo">170</span>  protected CommandLine 
parseArgs(String[] args) throws ParseException {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>    options.addOption(SHORT_HELP_OPTION, 
LONG_HELP_OPTION, false, "Show usage");<a name="line.171"></a>
-<span class="sourceLineNo">172</span>    addOptions();<a name="line.172"></a>
-<span class="sourceLineNo">173</span>    CommandLineParser parser = new 
BasicParser();<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    return parser.parse(options, args);<a 
name="line.174"></a>
-<span class="sourceLineNo">175</span>  }<a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>  protected void printUsage() {<a 
name="line.177"></a>
-<span class="sourceLineNo">178</span>    printUsage("hbase " + 
getClass().getName() + " &lt;options&gt;", "Options:", "");<a 
name="line.178"></a>
-<span class="sourceLineNo">179</span>  }<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>  protected void printUsage(final String 
usageStr, final String usageHeader,<a name="line.181"></a>
-<span class="sourceLineNo">182</span>      final String usageFooter) {<a 
name="line.182"></a>
-<span class="sourceLineNo">183</span>    HelpFormatter helpFormatter = new 
HelpFormatter();<a name="line.183"></a>
-<span class="sourceLineNo">184</span>    helpFormatter.setWidth(120);<a 
name="line.184"></a>
-<span class="sourceLineNo">185</span>    helpFormatter.setOptionComparator(new 
OptionsOrderComparator());<a name="line.185"></a>
-<span class="sourceLineNo">186</span>    helpFormatter.printHelp(usageStr, 
usageHeader, options, usageFooter);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>  }<a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span>  protected void addOption(Option option) 
{<a name="line.189"></a>
-<span class="sourceLineNo">190</span>    options.addOption(option);<a 
name="line.190"></a>
-<span class="sourceLineNo">191</span>    optionsOrder.put(option, 
optionsCount++);<a name="line.191"></a>
-<span class="sourceLineNo">192</span>  }<a name="line.192"></a>
-<span class="sourceLineNo">193</span><a name="line.193"></a>
-<span class="sourceLineNo">194</span>  protected void addRequiredOption(Option 
option) {<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    option.setRequired(true);<a 
name="line.195"></a>
-<span class="sourceLineNo">196</span>    addOption(option);<a 
name="line.196"></a>
+<span class="sourceLineNo">163</span>  /**<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   * Create the parser to use for parsing 
and validating the command line. Since commons-cli lacks<a name="line.164"></a>
+<span class="sourceLineNo">165</span>   * the capability to validate arbitrary 
combination of options, it may be helpful to bake custom<a name="line.165"></a>
+<span class="sourceLineNo">166</span>   * logic into a specialized parser 
implementation. See LoadTestTool for examples.<a name="line.166"></a>
+<span class="sourceLineNo">167</span>   * @return a new parser specific to the 
current tool<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   */<a name="line.168"></a>
+<span class="sourceLineNo">169</span>  protected CommandLineParser newParser() 
{<a name="line.169"></a>
+<span class="sourceLineNo">170</span>    return new DefaultParser();<a 
name="line.170"></a>
+<span class="sourceLineNo">171</span>  }<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>  private boolean isHelpCommand(String[] 
args) throws ParseException {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    Options helpOption = new 
Options().addOption(HELP_OPTION);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    // this parses the command line but 
doesn't throw an exception on unknown options<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    CommandLine cl = new 
DefaultParser().parse(helpOption, args, true);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    return cl.getOptions().length != 0;<a 
name="line.177"></a>
+<span class="sourceLineNo">178</span>  }<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>  protected CommandLine 
parseArgs(String[] args) throws ParseException {<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    options.addOption(SHORT_HELP_OPTION, 
LONG_HELP_OPTION, false, "Show usage");<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    addOptions();<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    CommandLineParser parser = new 
BasicParser();<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    return parser.parse(options, args);<a 
name="line.184"></a>
+<span class="sourceLineNo">185</span>  }<a name="line.185"></a>
+<span class="sourceLineNo">186</span><a name="line.186"></a>
+<span class="sourceLineNo">187</span>  protected void printUsage() {<a 
name="line.187"></a>
+<span class="sourceLineNo">188</span>    printUsage("hbase " + 
getClass().getName() + " &lt;options&gt;", "Options:", "");<a 
name="line.188"></a>
+<span class="sourceLineNo">189</span>  }<a name="line.189"></a>
+<span class="sourceLineNo">190</span><a name="line.190"></a>
+<span class="sourceLineNo">191</span>  protected void printUsage(final String 
usageStr, final String usageHeader,<a name="line.191"></a>
+<span class="sourceLineNo">192</span>      final String usageFooter) {<a 
name="line.192"></a>
+<span class="sourceLineNo">193</span>    HelpFormatter helpFormatter = new 
HelpFormatter();<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    helpFormatter.setWidth(120);<a 
name="line.194"></a>
+<span class="sourceLineNo">195</span>    helpFormatter.setOptionComparator(new 
OptionsOrderComparator());<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    helpFormatter.printHelp(usageStr, 
usageHeader, options, usageFooter);<a name="line.196"></a>
 <span class="sourceLineNo">197</span>  }<a name="line.197"></a>
 <span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>  protected void 
addRequiredOptWithArg(String opt, String description) {<a name="line.199"></a>
-<span class="sourceLineNo">200</span>    Option option = new Option(opt, true, 
description);<a name="line.200"></a>
-<span class="sourceLineNo">201</span>    option.setRequired(true);<a 
name="line.201"></a>
-<span class="sourceLineNo">202</span>    addOption(option);<a 
name="line.202"></a>
-<span class="sourceLineNo">203</span>  }<a name="line.203"></a>
-<span class="sourceLineNo">204</span><a name="line.204"></a>
-<span class="sourceLineNo">205</span>  protected void 
addRequiredOptWithArg(String shortOpt, String longOpt, String description) {<a 
name="line.205"></a>
-<span class="sourceLineNo">206</span>    Option option = new Option(shortOpt, 
longOpt, true, description);<a name="line.206"></a>
-<span class="sourceLineNo">207</span>    option.setRequired(true);<a 
name="line.207"></a>
-<span class="sourceLineNo">208</span>    addOption(option);<a 
name="line.208"></a>
-<span class="sourceLineNo">209</span>  }<a name="line.209"></a>
-<span class="sourceLineNo">210</span><a name="line.210"></a>
-<span class="sourceLineNo">211</span>  protected void addOptNoArg(String opt, 
String description) {<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    addOption(new Option(opt, false, 
description));<a name="line.212"></a>
+<span class="sourceLineNo">199</span>  protected void addOption(Option option) 
{<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    options.addOption(option);<a 
name="line.200"></a>
+<span class="sourceLineNo">201</span>    optionsOrder.put(option, 
optionsCount++);<a name="line.201"></a>
+<span class="sourceLineNo">202</span>  }<a name="line.202"></a>
+<span class="sourceLineNo">203</span><a name="line.203"></a>
+<span class="sourceLineNo">204</span>  protected void addRequiredOption(Option 
option) {<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    option.setRequired(true);<a 
name="line.205"></a>
+<span class="sourceLineNo">206</span>    addOption(option);<a 
name="line.206"></a>
+<span class="sourceLineNo">207</span>  }<a name="line.207"></a>
+<span class="sourceLineNo">208</span><a name="line.208"></a>
+<span class="sourceLineNo">209</span>  protected void 
addRequiredOptWithArg(String opt, String description) {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>    Option option = new Option(opt, true, 
description);<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    option.setRequired(true);<a 
name="line.211"></a>
+<span class="sourceLineNo">212</span>    addOption(option);<a 
name="line.212"></a>
 <span class="sourceLineNo">213</span>  }<a name="line.213"></a>
 <span class="sourceLineNo">214</span><a name="line.214"></a>
-<span class="sourceLineNo">215</span>  protected void addOptNoArg(String 
shortOpt, String longOpt, String description) {<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    addOption(new Option(shortOpt, 
longOpt, false, description));<a name="line.216"></a>
-<span class="sourceLineNo">217</span>  }<a name="line.217"></a>
-<span class="sourceLineNo">218</span><a name="line.218"></a>
-<span class="sourceLineNo">219</span>  protected void addOptWithArg(String 
opt, String description) {<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    addOption(new Option(opt, true, 
description));<a name="line.220"></a>
-<span class="sourceLineNo">221</span>  }<a name="line.221"></a>
-<span class="sourceLineNo">222</span><a name="line.222"></a>
-<span class="sourceLineNo">223</span>  protected void addOptWithArg(String 
shortOpt, String longOpt, String description) {<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    addOption(new Option(shortOpt, 
longOpt, true, description));<a name="line.224"></a>
-<span class="sourceLineNo">225</span>  }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>  public int getOptionAsInt(CommandLine 
cmd, String opt, int defaultValue) {<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    if (cmd.hasOption(opt)) {<a 
name="line.228"></a>
-<span class="sourceLineNo">229</span>      return 
Integer.parseInt(cmd.getOptionValue(opt));<a name="line.229"></a>
-<span class="sourceLineNo">230</span>    } else {<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      return defaultValue;<a 
name="line.231"></a>
-<span class="sourceLineNo">232</span>    }<a name="line.232"></a>
-<span class="sourceLineNo">233</span>  }<a name="line.233"></a>
-<span class="sourceLineNo">234</span><a name="line.234"></a>
-<span class="sourceLineNo">235</span>  public long getOptionAsLong(CommandLine 
cmd, String opt, int defaultValue) {<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    if (cmd.hasOption(opt)) {<a 
name="line.236"></a>
-<span class="sourceLineNo">237</span>      return 
Long.parseLong(cmd.getOptionValue(opt));<a name="line.237"></a>
-<span class="sourceLineNo">238</span>    } else {<a name="line.238"></a>
-<span class="sourceLineNo">239</span>      return defaultValue;<a 
name="line.239"></a>
-<span class="sourceLineNo">240</span>    }<a name="line.240"></a>
-<span class="sourceLineNo">241</span>  }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>  public double 
getOptionAsDouble(CommandLine cmd, String opt, double defaultValue) {<a 
name="line.243"></a>
-<span class="sourceLineNo">244</span>    if (cmd.hasOption(opt)) {<a 
name="line.244"></a>
-<span class="sourceLineNo">245</span>      return 
Double.parseDouble(cmd.getOptionValue(opt));<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    } else {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>      return defaultValue;<a 
name="line.247"></a>
-<span class="sourceLineNo">248</span>    }<a name="line.248"></a>
-<span class="sourceLineNo">249</span>  }<a name="line.249"></a>
-<span class="sourceLineNo">250</span><a name="line.250"></a>
-<span class="sourceLineNo">251</span>  /**<a name="line.251"></a>
-<span class="sourceLineNo">252</span>   * Parse a number and enforce a 
range.<a name="line.252"></a>
-<span class="sourceLineNo">253</span>   */<a name="line.253"></a>
-<span class="sourceLineNo">254</span>  public static long parseLong(String s, 
long minValue, long maxValue) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>    long l = Long.parseLong(s);<a 
name="line.255"></a>
-<span class="sourceLineNo">256</span>    if (l &lt; minValue || l &gt; 
maxValue) {<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      throw new 
IllegalArgumentException("The value " + l<a name="line.257"></a>
-<span class="sourceLineNo">258</span>          + " is out of range [" + 
minValue + ", " + maxValue + "]");<a name="line.258"></a>
-<span class="sourceLineNo">259</span>    }<a name="line.259"></a>
-<span class="sourceLineNo">260</span>    return l;<a name="line.260"></a>
-<span class="sourceLineNo">261</span>  }<a name="line.261"></a>
-<span class="sourceLineNo">262</span><a name="line.262"></a>
-<span class="sourceLineNo">263</span>  public static int parseInt(String s, 
int minValue, int maxValue) {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    return (int) parseLong(s, minValue, 
maxValue);<a name="line.264"></a>
-<span class="sourceLineNo">265</span>  }<a name="line.265"></a>
-<span class="sourceLineNo">266</span><a name="line.266"></a>
-<span class="sourceLineNo">267</span>  /** Call this from the concrete tool 
class's main function. */<a name="line.267"></a>
-<span class="sourceLineNo">268</span>  protected void doStaticMain(String 
args[]) {<a name="line.268"></a>
-<span class="sourceLineNo">269</span>    int ret;<a name="line.269"></a>
-<span class="sourceLineNo">270</span>    try {<a name="line.270"></a>
-<span class="sourceLineNo">271</span>      ret = 
ToolRunner.run(HBaseConfiguration.create(), this, args);<a name="line.271"></a>
-<span class="sourceLineNo">272</span>    } catch (Exception ex) {<a 
name="line.272"></a>
-<span class="sourceLineNo">273</span>      LOG.error("Error running 
command-line tool", ex);<a name="line.273"></a>
-<span class="sourceLineNo">274</span>      ret = EXIT_FAILURE;<a 
name="line.274"></a>
-<span class="sourceLineNo">275</span>    }<a name="line.275"></a>
-<span class="sourceLineNo">276</span>    System.exit(ret);<a 
name="line.276"></a>
-<span class="sourceLineNo">277</span>  }<a name="line.277"></a>
-<span class="sourceLineNo">278</span><a name="line.278"></a>
-<span class="sourceLineNo">279</span>}<a name="line.279"></a>
+<span class="sourceLineNo">215</span>  protected void 
addRequiredOptWithArg(String shortOpt, String longOpt, String description) {<a 
name="line.215"></a>
+<span class="sourceLineNo">216</span>    Option option = new Option(shortOpt, 
longOpt, true, description);<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    option.setRequired(true);<a 
name="line.217"></a>
+<span class="sourceLineNo">218</span>    addOption(option);<a 
name="line.218"></a>
+<span class="sourceLineNo">219</span>  }<a name="line.219"></a>
+<span class="sourceLineNo">220</span><a name="line.220"></a>
+<span class="sourceLineNo">221</span>  protected void addOptNoArg(String opt, 
String description) {<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    addOption(new Option(opt, false, 
description));<a name="line.222"></a>
+<span class="sourceLineNo">223</span>  }<a name="line.223"></a>
+<span class="sourceLineNo">224</span><a name="line.224"></a>
+<span class="sourceLineNo">225</span>  protected void addOptNoArg(String 
shortOpt, String longOpt, String description) {<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    addOption(new Option(shortOpt, 
longOpt, false, description));<a name="line.226"></a>
+<span class="sourceLineNo">227</span>  }<a name="line.227"></a>
+<span class="sourceLineNo">228</span><a name="line.228"></a>
+<span class="sourceLineNo">229</span>  protected void addOptWithArg(String 
opt, String description) {<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    addOption(new Option(opt, true, 
description));<a name="line.230"></a>
+<span class="sourceLineNo">231</span>  }<a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>  protected void addOptWithArg(String 
shortOpt, String longOpt, String description) {<a name="line.233"></a>
+<span class="sourceLineNo">234</span>    addOption(new Option(shortOpt, 
longOpt, true, description));<a name="line.234"></a>
+<span class="sourceLineNo">235</span>  }<a name="line.235"></a>
+<span class="sourceLineNo">236</span><a name="line.236"></a>
+<span class="sourceLineNo">237</span>  public int getOptionAsInt(CommandLine 
cmd, String opt, int defaultValue) {<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    if (cmd.hasOption(opt)) {<a 
name="line.238"></a>
+<span class="sourceLineNo">239</span>      return 
Integer.parseInt(cmd.getOptionValue(opt));<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    } else {<a name="line.240"></a>
+<span class="sourceLineNo">241</span>      return defaultValue;<a 
name="line.241"></a>
+<span class="sourceLineNo">242</span>    }<a name="line.242"></a>
+<span class="sourceLineNo">243</span>  }<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>  public long getOptionAsLong(CommandLine 
cmd, String opt, int defaultValue) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>    if (cmd.hasOption(opt)) {<a 
name="line.246"></a>
+<span class="sourceLineNo">247</span>      return 
Long.parseLong(cmd.getOptionValue(opt));<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    } else {<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      return defaultValue;<a 
name="line.249"></a>
+<span class="sourceLineNo">250</span>    }<a name="line.250"></a>
+<span class="sourceLineNo">251</span>  }<a name="line.251"></a>
+<span class="sourceLineNo">252</span><a name="line.252"></a>
+<span class="sourceLineNo">253</span>  public double 
getOptionAsDouble(CommandLine cmd, String opt, double defaultValue) {<a 
name="line.253"></a>
+<span class="sourceLineNo">254</span>    if (cmd.hasOption(opt)) {<a 
name="line.254"></a>
+<span class="sourceLineNo">255</span>      return 
Double.parseDouble(cmd.getOptionValue(opt));<a name="line.255"></a>
+<span class="sourceLineNo">256</span>    } else {<a name="line.256"></a>
+<span class="sourceLineNo">257</span>      return defaultValue;<a 
name="line.257"></a>
+<span class="sourceLineNo">258</span>    }<a name="line.258"></a>
+<span class="sourceLineNo">259</span>  }<a name="line.259"></a>
+<span class="sourceLineNo">260</span><a name="line.260"></a>
+<span class="sourceLineNo">261</span>  /**<a name="line.261"></a>
+<span class="sourceLineNo">262</span>   * Parse a number and enforce a 
range.<a name="line.262"></a>
+<span class="sourceLineNo">263</span>   */<a name="line.263"></a>
+<span class="sourceLineNo">264</span>  public static long parseLong(String s, 
long minValue, long maxValue) {<a name="line.264"></a>
+<span class="sourceLineNo">265</span>    long l = Long.parseLong(s);<a 
name="line.265"></a>
+<span class="sourceLineNo">266</span>    if (l &lt; minValue || l &gt; 
maxValue) {<a name="line.266"></a>
+<span class="sourceLineNo">267</span>      throw new 
IllegalArgumentException("The value " + l<a name="line.267"></a>
+<span class="sourceLineNo">268</span>          + " is out of range [" + 
minValue + ", " + maxValue + "]");<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    }<a name="line.269"></a>
+<span class="sourceLineNo">270</span>    return l;<a name="line.270"></a>
+<span class="sourceLineNo">271</span>  }<a name="line.271"></a>
+<span class="sourceLineNo">272</span><a name="line.272"></a>
+<span class="sourceLineNo">273</span>  public static int parseInt(String s, 
int minValue, int maxValue) {<a name="line.273"></a>
+<span class="sourceLineNo">274</span>    return (int) parseLong(s, minValue, 
maxValue);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>  }<a name="line.275"></a>
+<span class="sourceLineNo">276</span><a name="line.276"></a>
+<span class="sourceLineNo">277</span>  /** Call this from the concrete tool 
class's main function. */<a name="line.277"></a>
+<span class="sourceLineNo">278</span>  protected void doStaticMain(String 
args[]) {<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    int ret;<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    try {<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      ret = 
ToolRunner.run(HBaseConfiguration.create(), this, args);<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    } catch (Exception ex) {<a 
name="line.282"></a>
+<span class="sourceLineNo">283</span>      LOG.error("Error running 
command-line tool", ex);<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      ret = EXIT_FAILURE;<a 
name="line.284"></a>
+<span class="sourceLineNo">285</span>    }<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    System.exit(ret);<a 
name="line.286"></a>
+<span class="sourceLineNo">287</span>  }<a name="line.287"></a>
+<span class="sourceLineNo">288</span><a name="line.288"></a>
+<span class="sourceLineNo">289</span>}<a name="line.289"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.DecimalStringSplit.html
----------------------------------------------------------------------
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.DecimalStringSplit.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.DecimalStringSplit.html
index bca6876..1275b2c 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.DecimalStringSplit.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.DecimalStringSplit.html
@@ -339,7 +339,7 @@
 <span class="sourceLineNo">331</span>    opt.addOption(null, "lastrow", 
true,<a name="line.331"></a>
 <span class="sourceLineNo">332</span>        "Last Row in Table for Split 
Algorithm");<a name="line.332"></a>
 <span class="sourceLineNo">333</span>    opt.addOption(null, "risky", false,<a 
name="line.333"></a>
-<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly."<a name="line.334"></a>
+<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly. "<a name="line.334"></a>
 <span class="sourceLineNo">335</span>            + "STRONGLY DISCOURAGED for 
production systems.  ");<a name="line.335"></a>
 <span class="sourceLineNo">336</span>    CommandLine cmd = new 
GnuParser().parse(opt, args);<a name="line.336"></a>
 <span class="sourceLineNo">337</span><a name="line.337"></a>
@@ -364,8 +364,8 @@
 <span class="sourceLineNo">356</span>    boolean oneOperOnly = createTable ^ 
rollingSplit;<a name="line.356"></a>
 <span class="sourceLineNo">357</span><a name="line.357"></a>
 <span class="sourceLineNo">358</span>    if (2 != cmd.getArgList().size() || 
!oneOperOnly || cmd.hasOption("h")) {<a name="line.358"></a>
-<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("RegionSplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
-<span class="sourceLineNo">360</span>          "SPLITALGORITHM is a java class 
name of a class implementing " +<a name="line.360"></a>
+<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("bin/hbase regionsplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
+<span class="sourceLineNo">360</span>          "SPLITALGORITHM is the java 
class name of a class implementing " +<a name="line.360"></a>
 <span class="sourceLineNo">361</span>          "SplitAlgorithm, or one of the 
special strings HexStringSplit or " +<a name="line.361"></a>
 <span class="sourceLineNo">362</span>          "DecimalStringSplit or 
UniformSplit, which are built-in split algorithms. " +<a name="line.362"></a>
 <span class="sourceLineNo">363</span>          "HexStringSplit treats keys as 
hexadecimal ASCII, and " +<a name="line.363"></a>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.HexStringSplit.html
----------------------------------------------------------------------
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.HexStringSplit.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.HexStringSplit.html
index bca6876..1275b2c 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.HexStringSplit.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.HexStringSplit.html
@@ -339,7 +339,7 @@
 <span class="sourceLineNo">331</span>    opt.addOption(null, "lastrow", 
true,<a name="line.331"></a>
 <span class="sourceLineNo">332</span>        "Last Row in Table for Split 
Algorithm");<a name="line.332"></a>
 <span class="sourceLineNo">333</span>    opt.addOption(null, "risky", false,<a 
name="line.333"></a>
-<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly."<a name="line.334"></a>
+<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly. "<a name="line.334"></a>
 <span class="sourceLineNo">335</span>            + "STRONGLY DISCOURAGED for 
production systems.  ");<a name="line.335"></a>
 <span class="sourceLineNo">336</span>    CommandLine cmd = new 
GnuParser().parse(opt, args);<a name="line.336"></a>
 <span class="sourceLineNo">337</span><a name="line.337"></a>
@@ -364,8 +364,8 @@
 <span class="sourceLineNo">356</span>    boolean oneOperOnly = createTable ^ 
rollingSplit;<a name="line.356"></a>
 <span class="sourceLineNo">357</span><a name="line.357"></a>
 <span class="sourceLineNo">358</span>    if (2 != cmd.getArgList().size() || 
!oneOperOnly || cmd.hasOption("h")) {<a name="line.358"></a>
-<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("RegionSplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
-<span class="sourceLineNo">360</span>          "SPLITALGORITHM is a java class 
name of a class implementing " +<a name="line.360"></a>
+<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("bin/hbase regionsplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
+<span class="sourceLineNo">360</span>          "SPLITALGORITHM is the java 
class name of a class implementing " +<a name="line.360"></a>
 <span class="sourceLineNo">361</span>          "SplitAlgorithm, or one of the 
special strings HexStringSplit or " +<a name="line.361"></a>
 <span class="sourceLineNo">362</span>          "DecimalStringSplit or 
UniformSplit, which are built-in split algorithms. " +<a name="line.362"></a>
 <span class="sourceLineNo">363</span>          "HexStringSplit treats keys as 
hexadecimal ASCII, and " +<a name="line.363"></a>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.NumberStringSplit.html
----------------------------------------------------------------------
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.NumberStringSplit.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.NumberStringSplit.html
index bca6876..1275b2c 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.NumberStringSplit.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.NumberStringSplit.html
@@ -339,7 +339,7 @@
 <span class="sourceLineNo">331</span>    opt.addOption(null, "lastrow", 
true,<a name="line.331"></a>
 <span class="sourceLineNo">332</span>        "Last Row in Table for Split 
Algorithm");<a name="line.332"></a>
 <span class="sourceLineNo">333</span>    opt.addOption(null, "risky", false,<a 
name="line.333"></a>
-<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly."<a name="line.334"></a>
+<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly. "<a name="line.334"></a>
 <span class="sourceLineNo">335</span>            + "STRONGLY DISCOURAGED for 
production systems.  ");<a name="line.335"></a>
 <span class="sourceLineNo">336</span>    CommandLine cmd = new 
GnuParser().parse(opt, args);<a name="line.336"></a>
 <span class="sourceLineNo">337</span><a name="line.337"></a>
@@ -364,8 +364,8 @@
 <span class="sourceLineNo">356</span>    boolean oneOperOnly = createTable ^ 
rollingSplit;<a name="line.356"></a>
 <span class="sourceLineNo">357</span><a name="line.357"></a>
 <span class="sourceLineNo">358</span>    if (2 != cmd.getArgList().size() || 
!oneOperOnly || cmd.hasOption("h")) {<a name="line.358"></a>
-<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("RegionSplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
-<span class="sourceLineNo">360</span>          "SPLITALGORITHM is a java class 
name of a class implementing " +<a name="line.360"></a>
+<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("bin/hbase regionsplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
+<span class="sourceLineNo">360</span>          "SPLITALGORITHM is the java 
class name of a class implementing " +<a name="line.360"></a>
 <span class="sourceLineNo">361</span>          "SplitAlgorithm, or one of the 
special strings HexStringSplit or " +<a name="line.361"></a>
 <span class="sourceLineNo">362</span>          "DecimalStringSplit or 
UniformSplit, which are built-in split algorithms. " +<a name="line.362"></a>
 <span class="sourceLineNo">363</span>          "HexStringSplit treats keys as 
hexadecimal ASCII, and " +<a name="line.363"></a>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.SplitAlgorithm.html
----------------------------------------------------------------------
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.SplitAlgorithm.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.SplitAlgorithm.html
index bca6876..1275b2c 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.SplitAlgorithm.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.SplitAlgorithm.html
@@ -339,7 +339,7 @@
 <span class="sourceLineNo">331</span>    opt.addOption(null, "lastrow", 
true,<a name="line.331"></a>
 <span class="sourceLineNo">332</span>        "Last Row in Table for Split 
Algorithm");<a name="line.332"></a>
 <span class="sourceLineNo">333</span>    opt.addOption(null, "risky", false,<a 
name="line.333"></a>
-<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly."<a name="line.334"></a>
+<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly. "<a name="line.334"></a>
 <span class="sourceLineNo">335</span>            + "STRONGLY DISCOURAGED for 
production systems.  ");<a name="line.335"></a>
 <span class="sourceLineNo">336</span>    CommandLine cmd = new 
GnuParser().parse(opt, args);<a name="line.336"></a>
 <span class="sourceLineNo">337</span><a name="line.337"></a>
@@ -364,8 +364,8 @@
 <span class="sourceLineNo">356</span>    boolean oneOperOnly = createTable ^ 
rollingSplit;<a name="line.356"></a>
 <span class="sourceLineNo">357</span><a name="line.357"></a>
 <span class="sourceLineNo">358</span>    if (2 != cmd.getArgList().size() || 
!oneOperOnly || cmd.hasOption("h")) {<a name="line.358"></a>
-<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("RegionSplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
-<span class="sourceLineNo">360</span>          "SPLITALGORITHM is a java class 
name of a class implementing " +<a name="line.360"></a>
+<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("bin/hbase regionsplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
+<span class="sourceLineNo">360</span>          "SPLITALGORITHM is the java 
class name of a class implementing " +<a name="line.360"></a>
 <span class="sourceLineNo">361</span>          "SplitAlgorithm, or one of the 
special strings HexStringSplit or " +<a name="line.361"></a>
 <span class="sourceLineNo">362</span>          "DecimalStringSplit or 
UniformSplit, which are built-in split algorithms. " +<a name="line.362"></a>
 <span class="sourceLineNo">363</span>          "HexStringSplit treats keys as 
hexadecimal ASCII, and " +<a name="line.363"></a>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.UniformSplit.html
----------------------------------------------------------------------
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.UniformSplit.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.UniformSplit.html
index bca6876..1275b2c 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.UniformSplit.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.UniformSplit.html
@@ -339,7 +339,7 @@
 <span class="sourceLineNo">331</span>    opt.addOption(null, "lastrow", 
true,<a name="line.331"></a>
 <span class="sourceLineNo">332</span>        "Last Row in Table for Split 
Algorithm");<a name="line.332"></a>
 <span class="sourceLineNo">333</span>    opt.addOption(null, "risky", false,<a 
name="line.333"></a>
-<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly."<a name="line.334"></a>
+<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly. "<a name="line.334"></a>
 <span class="sourceLineNo">335</span>            + "STRONGLY DISCOURAGED for 
production systems.  ");<a name="line.335"></a>
 <span class="sourceLineNo">336</span>    CommandLine cmd = new 
GnuParser().parse(opt, args);<a name="line.336"></a>
 <span class="sourceLineNo">337</span><a name="line.337"></a>
@@ -364,8 +364,8 @@
 <span class="sourceLineNo">356</span>    boolean oneOperOnly = createTable ^ 
rollingSplit;<a name="line.356"></a>
 <span class="sourceLineNo">357</span><a name="line.357"></a>
 <span class="sourceLineNo">358</span>    if (2 != cmd.getArgList().size() || 
!oneOperOnly || cmd.hasOption("h")) {<a name="line.358"></a>
-<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("RegionSplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
-<span class="sourceLineNo">360</span>          "SPLITALGORITHM is a java class 
name of a class implementing " +<a name="line.360"></a>
+<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("bin/hbase regionsplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
+<span class="sourceLineNo">360</span>          "SPLITALGORITHM is the java 
class name of a class implementing " +<a name="line.360"></a>
 <span class="sourceLineNo">361</span>          "SplitAlgorithm, or one of the 
special strings HexStringSplit or " +<a name="line.361"></a>
 <span class="sourceLineNo">362</span>          "DecimalStringSplit or 
UniformSplit, which are built-in split algorithms. " +<a name="line.362"></a>
 <span class="sourceLineNo">363</span>          "HexStringSplit treats keys as 
hexadecimal ASCII, and " +<a name="line.363"></a>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.html
----------------------------------------------------------------------
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.html
index bca6876..1275b2c 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/util/RegionSplitter.html
@@ -339,7 +339,7 @@
 <span class="sourceLineNo">331</span>    opt.addOption(null, "lastrow", 
true,<a name="line.331"></a>
 <span class="sourceLineNo">332</span>        "Last Row in Table for Split 
Algorithm");<a name="line.332"></a>
 <span class="sourceLineNo">333</span>    opt.addOption(null, "risky", false,<a 
name="line.333"></a>
-<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly."<a name="line.334"></a>
+<span class="sourceLineNo">334</span>        "Skip verification steps to 
complete quickly. "<a name="line.334"></a>
 <span class="sourceLineNo">335</span>            + "STRONGLY DISCOURAGED for 
production systems.  ");<a name="line.335"></a>
 <span class="sourceLineNo">336</span>    CommandLine cmd = new 
GnuParser().parse(opt, args);<a name="line.336"></a>
 <span class="sourceLineNo">337</span><a name="line.337"></a>
@@ -364,8 +364,8 @@
 <span class="sourceLineNo">356</span>    boolean oneOperOnly = createTable ^ 
rollingSplit;<a name="line.356"></a>
 <span class="sourceLineNo">357</span><a name="line.357"></a>
 <span class="sourceLineNo">358</span>    if (2 != cmd.getArgList().size() || 
!oneOperOnly || cmd.hasOption("h")) {<a name="line.358"></a>
-<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("RegionSplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
-<span class="sourceLineNo">360</span>          "SPLITALGORITHM is a java class 
name of a class implementing " +<a name="line.360"></a>
+<span class="sourceLineNo">359</span>      new 
HelpFormatter().printHelp("bin/hbase regionsplitter &lt;TABLE&gt; 
&lt;SPLITALGORITHM&gt;\n"+<a name="line.359"></a>
+<span class="sourceLineNo">360</span>          "SPLITALGORITHM is the java 
class name of a class implementing " +<a name="line.360"></a>
 <span class="sourceLineNo">361</span>          "SplitAlgorithm, or one of the 
special strings HexStringSplit or " +<a name="line.361"></a>
 <span class="sourceLineNo">362</span>          "DecimalStringSplit or 
UniformSplit, which are built-in split algorithms. " +<a name="line.362"></a>
 <span class="sourceLineNo">363</span>          "HexStringSplit treats keys as 
hexadecimal ASCII, and " +<a name="line.363"></a>

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/export_control.html
----------------------------------------------------------------------
diff --git a/export_control.html b/export_control.html
index df42a98..b01e87c 100644
--- a/export_control.html
+++ b/export_control.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Export Control
@@ -321,7 +321,7 @@ for more details.</p>
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/index.html
----------------------------------------------------------------------
diff --git a/index.html b/index.html
index 8b8f785..89f3d8c 100644
--- a/index.html
+++ b/index.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Apache HBase™ Home</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -425,7 +425,7 @@ Apache HBase is an open-source, distributed, versioned, 
non-relational database
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/integration.html
----------------------------------------------------------------------
diff --git a/integration.html b/integration.html
index 54ffc4d..b9f978f 100644
--- a/integration.html
+++ b/integration.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; CI Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -281,7 +281,7 @@
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/issue-tracking.html
----------------------------------------------------------------------
diff --git a/issue-tracking.html b/issue-tracking.html
index 111aef1..d8e489c 100644
--- a/issue-tracking.html
+++ b/issue-tracking.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Issue Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -278,7 +278,7 @@
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/license.html
----------------------------------------------------------------------
diff --git a/license.html b/license.html
index ce6556a..9c9787c 100644
--- a/license.html
+++ b/license.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Licenses</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -481,7 +481,7 @@
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/mail-lists.html
----------------------------------------------------------------------
diff --git a/mail-lists.html b/mail-lists.html
index acf94b7..74eb399 100644
--- a/mail-lists.html
+++ b/mail-lists.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Mailing Lists</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -331,7 +331,7 @@
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/metrics.html
----------------------------------------------------------------------
diff --git a/metrics.html b/metrics.html
index b6d0616..2afa2ef 100644
--- a/metrics.html
+++ b/metrics.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
       Apache HBase (TM) Metrics
@@ -449,7 +449,7 @@ export HBASE_REGIONSERVER_OPTS=&quot;$HBASE_JMX_OPTS 
-Dcom.sun.management.jmxrem
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/old_news.html
----------------------------------------------------------------------
diff --git a/old_news.html b/old_news.html
index c8a1f6e..b534cda 100644
--- a/old_news.html
+++ b/old_news.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Old Apache HBase (TM) News
@@ -404,7 +404,7 @@ under the License. -->
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/plugin-management.html
----------------------------------------------------------------------
diff --git a/plugin-management.html b/plugin-management.html
index 0d46567..2498c28 100644
--- a/plugin-management.html
+++ b/plugin-management.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Plugin Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -430,7 +430,7 @@
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/plugins.html
----------------------------------------------------------------------
diff --git a/plugins.html b/plugins.html
index 11b2e1b..a96bdc6 100644
--- a/plugins.html
+++ b/plugins.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Plugins</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -365,7 +365,7 @@
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/poweredbyhbase.html
----------------------------------------------------------------------
diff --git a/poweredbyhbase.html b/poweredbyhbase.html
index 98eb833..ed4e2bb 100644
--- a/poweredbyhbase.html
+++ b/poweredbyhbase.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Powered By Apache HBase™</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -759,7 +759,7 @@ under the License. -->
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/project-info.html
----------------------------------------------------------------------
diff --git a/project-info.html b/project-info.html
index bf515fe..6df8fc1 100644
--- a/project-info.html
+++ b/project-info.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Information</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -325,7 +325,7 @@
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/project-reports.html
----------------------------------------------------------------------
diff --git a/project-reports.html b/project-reports.html
index d18e00b..3f85cc6 100644
--- a/project-reports.html
+++ b/project-reports.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Generated Reports</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -295,7 +295,7 @@
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/project-summary.html
----------------------------------------------------------------------
diff --git a/project-summary.html b/project-summary.html
index 9c117d9..f738af5 100644
--- a/project-summary.html
+++ b/project-summary.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Summary</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -321,7 +321,7 @@
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/pseudo-distributed.html
----------------------------------------------------------------------
diff --git a/pseudo-distributed.html b/pseudo-distributed.html
index bc31f89..336ddd7 100644
--- a/pseudo-distributed.html
+++ b/pseudo-distributed.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013;  
 Running Apache HBase (TM) in pseudo-distributed mode
@@ -298,7 +298,7 @@ under the License. -->
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/replication.html
----------------------------------------------------------------------
diff --git a/replication.html b/replication.html
index 1843c34..992cdb9 100644
--- a/replication.html
+++ b/replication.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; 
       Apache HBase (TM) Replication
@@ -293,7 +293,7 @@ under the License. -->
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/resources.html
----------------------------------------------------------------------
diff --git a/resources.html b/resources.html
index e105876..b8bbbe6 100644
--- a/resources.html
+++ b/resources.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Other Apache HBase (TM) Resources</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -321,7 +321,7 @@ under the License. -->
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/source-repository.html
----------------------------------------------------------------------
diff --git a/source-repository.html b/source-repository.html
index 02503b2..6257194 100644
--- a/source-repository.html
+++ b/source-repository.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Source Code Management</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -289,7 +289,7 @@
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/sponsors.html
----------------------------------------------------------------------
diff --git a/sponsors.html b/sponsors.html
index c5c6d89..76185fa 100644
--- a/sponsors.html
+++ b/sponsors.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Apache HBase™ Sponsors</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -323,7 +323,7 @@ under the License. -->
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/supportingprojects.html
----------------------------------------------------------------------
diff --git a/supportingprojects.html b/supportingprojects.html
index dff6297..4708a2c 100644
--- a/supportingprojects.html
+++ b/supportingprojects.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Supporting Projects</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -510,7 +510,7 @@ under the License. -->
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/839437ee/team-list.html
----------------------------------------------------------------------
diff --git a/team-list.html b/team-list.html
index bf21403..fb49b05 100644
--- a/team-list.html
+++ b/team-list.html
@@ -7,7 +7,7 @@
   <head>
     <meta charset="UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta name="Date-Revision-yyyymmdd" content="20180330" />
+    <meta name="Date-Revision-yyyymmdd" content="20180331" />
     <meta http-equiv="Content-Language" content="en" />
     <title>Apache HBase &#x2013; Project Team</title>
     <link rel="stylesheet" href="./css/apache-maven-fluido-1.5-HBASE.min.css" 
/>
@@ -720,7 +720,7 @@
                         <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>.
             All rights reserved.      
                     
-                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-30</li>
+                  <li id="publishDate" class="pull-right">Last Published: 
2018-03-31</li>
             </p>
                 </div>
 

Reply via email to