Review Board 1.7.22


HBASE-5548 [shell]: Add ability to get table reference

Review Request #4668 - Created April 6, 2012 and submitted

Jesse Yates
0.96.0, 0.94.1
HBASE-5548
Reviewers
hbase
stack
hbase-git
Adding the ability to get a reference to a table in the shell. 

Previously, all commands that acted on a table would need to take the name of the table as a string, which is annoying in an OO REPL. This patch introduces the ability to get and hold a  reference to a table both on creation (via create(...)) and at will (via get_table(...)).

Further, to actually make the table useful, modifications to table specific class were made so you can have a reference and just do things like put, scan, get, etc. on that table reference. To accommodate new table functionality, table specific methods are easily added (one line) in a dynamic fashion via class methods in the Table. See examples in get, put, scan, etc.. 

There is also a lot of admin functionality tied to a table - things like disabling, dropping, describing, etc - that were added to the table class. Now you can do things like 'table.disable' and 'table.describe'. Again these were dynamically added, so new admin functionality for a table is as simple as adding the method name to one line in the Table class.  
Manual and basic unit tests.