org.apache.hadoop.hbase.thrift
Class ThriftServer.HBaseHandler

java.lang.Object
  extended by org.apache.hadoop.hbase.thrift.ThriftServer.HBaseHandler
All Implemented Interfaces:
org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Enclosing class:
ThriftServer

public static class ThriftServer.HBaseHandler
extends Object
implements org.apache.hadoop.hbase.thrift.generated.Hbase.Iface

The HBaseHandler is a glue object that connects Thrift RPC calls to the HBase client API primarily defined in the HBaseAdmin and HTable objects.


Field Summary
protected  HBaseAdmin admin
           
protected  HBaseConfiguration conf
           
protected  org.apache.commons.logging.Log LOG
           
protected  int nextScannerId
           
protected  HashMap<Integer,ResultScanner> scannerMap
           
 
Method Summary
protected  int addScanner(ResultScanner scanner)
          Assigns a unique ID to the scanner and adds the mapping to an internal hash-map.
 long atomicIncrement(byte[] tableName, byte[] row, byte[] family, byte[] qualifier, long amount)
           
 long atomicIncrement(byte[] tableName, byte[] row, byte[] column, long amount)
          Deprecated. 
 void compact(byte[] tableNameOrRegionName)
           
 void createTable(byte[] tableName, List<org.apache.hadoop.hbase.thrift.generated.ColumnDescriptor> columnFamilies)
           
 void deleteAll(byte[] tableName, byte[] row, byte[] column)
           
 void deleteAllRow(byte[] tableName, byte[] row)
           
 void deleteAllRowTs(byte[] tableName, byte[] row, long timestamp)
           
 void deleteAllTs(byte[] tableName, byte[] row, byte[] column, long timestamp)
           
 void deleteTable(byte[] tableName)
           
 void disableTable(byte[] tableName)
           
 void enableTable(byte[] tableName)
           
 List<org.apache.hadoop.hbase.thrift.generated.TCell> get(byte[] tableName, byte[] row, byte[] column)
          Deprecated. 
 List<org.apache.hadoop.hbase.thrift.generated.TCell> get(byte[] tableName, byte[] row, byte[] family, byte[] qualifier)
           
 Map<byte[],org.apache.hadoop.hbase.thrift.generated.ColumnDescriptor> getColumnDescriptors(byte[] tableName)
           
 List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRow(byte[] tableName, byte[] row)
           
 List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowTs(byte[] tableName, byte[] row, long timestamp)
           
 List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowWithColumns(byte[] tableName, byte[] row, List<byte[]> columns)
           
 List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowWithColumnsTs(byte[] tableName, byte[] row, List<byte[]> columns, long timestamp)
           
protected  ResultScanner getScanner(int id)
          Returns the scanner associated with the specified ID.
protected  HTable getTable(byte[] tableName)
          Creates and returns an HTable instance from a given table name.
 List<byte[]> getTableNames()
           
 List<org.apache.hadoop.hbase.thrift.generated.TRegionInfo> getTableRegions(byte[] tableName)
           
 List<org.apache.hadoop.hbase.thrift.generated.TCell> getVer(byte[] tableName, byte[] row, byte[] family, byte[] qualifier, int numVersions)
           
 List<org.apache.hadoop.hbase.thrift.generated.TCell> getVer(byte[] tableName, byte[] row, byte[] column, int numVersions)
          Deprecated. 
 List<org.apache.hadoop.hbase.thrift.generated.TCell> getVerTs(byte[] tableName, byte[] row, byte[] family, byte[] qualifier, long timestamp, int numVersions)
           
 List<org.apache.hadoop.hbase.thrift.generated.TCell> getVerTs(byte[] tableName, byte[] row, byte[] column, long timestamp, int numVersions)
          Deprecated. 
 boolean isTableEnabled(byte[] tableName)
           
 void majorCompact(byte[] tableNameOrRegionName)
           
 void mutateRow(byte[] tableName, byte[] row, List<org.apache.hadoop.hbase.thrift.generated.Mutation> mutations)
           
 void mutateRows(byte[] tableName, List<org.apache.hadoop.hbase.thrift.generated.BatchMutation> rowBatches)
           
 void mutateRowsTs(byte[] tableName, List<org.apache.hadoop.hbase.thrift.generated.BatchMutation> rowBatches, long timestamp)
           
 void mutateRowTs(byte[] tableName, byte[] row, List<org.apache.hadoop.hbase.thrift.generated.Mutation> mutations, long timestamp)
           
protected  ResultScanner removeScanner(int id)
          Removes the scanner associated with the specified ID from the internal id->scanner hash-map.
 void scannerClose(int id)
           
 List<org.apache.hadoop.hbase.thrift.generated.TRowResult> scannerGet(int id)
           
 List<org.apache.hadoop.hbase.thrift.generated.TRowResult> scannerGetList(int id, int nbRows)
           
 int scannerOpen(byte[] tableName, byte[] startRow, List<byte[]> columns)
           
 int scannerOpenTs(byte[] tableName, byte[] startRow, List<byte[]> columns, long timestamp)
           
 int scannerOpenWithPrefix(byte[] tableName, byte[] startAndPrefix, List<byte[]> columns)
           
 int scannerOpenWithStop(byte[] tableName, byte[] startRow, byte[] stopRow, List<byte[]> columns)
           
 int scannerOpenWithStopTs(byte[] tableName, byte[] startRow, byte[] stopRow, List<byte[]> columns, long timestamp)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

conf

protected HBaseConfiguration conf

admin

protected HBaseAdmin admin

LOG

protected final org.apache.commons.logging.Log LOG

nextScannerId

protected int nextScannerId

scannerMap

protected HashMap<Integer,ResultScanner> scannerMap
Method Detail

getTable

protected HTable getTable(byte[] tableName)
                   throws org.apache.hadoop.hbase.thrift.generated.IOError,
                          IOException
Creates and returns an HTable instance from a given table name.

Parameters:
tableName - name of table
Returns:
HTable object
Throws:
IOException
org.apache.hadoop.hbase.thrift.generated.IOError

addScanner

protected int addScanner(ResultScanner scanner)
Assigns a unique ID to the scanner and adds the mapping to an internal hash-map.

Parameters:
scanner -
Returns:
integer scanner id

getScanner

protected ResultScanner getScanner(int id)
Returns the scanner associated with the specified ID.

Parameters:
id -
Returns:
a Scanner, or null if ID was invalid.

removeScanner

protected ResultScanner removeScanner(int id)
Removes the scanner associated with the specified ID from the internal id->scanner hash-map.

Parameters:
id -
Returns:
a Scanner, or null if ID was invalid.

enableTable

public void enableTable(byte[] tableName)
                 throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
enableTable in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

disableTable

public void disableTable(byte[] tableName)
                  throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
disableTable in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

isTableEnabled

public boolean isTableEnabled(byte[] tableName)
                       throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
isTableEnabled in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

compact

public void compact(byte[] tableNameOrRegionName)
             throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
compact in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

majorCompact

public void majorCompact(byte[] tableNameOrRegionName)
                  throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
majorCompact in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

getTableNames

public List<byte[]> getTableNames()
                           throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
getTableNames in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

getTableRegions

public List<org.apache.hadoop.hbase.thrift.generated.TRegionInfo> getTableRegions(byte[] tableName)
                                                                           throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
getTableRegions in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

get

@Deprecated
public List<org.apache.hadoop.hbase.thrift.generated.TCell> get(byte[] tableName,
                                                                           byte[] row,
                                                                           byte[] column)
                                                         throws org.apache.hadoop.hbase.thrift.generated.IOError
Deprecated. 

Specified by:
get in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

get

public List<org.apache.hadoop.hbase.thrift.generated.TCell> get(byte[] tableName,
                                                                byte[] row,
                                                                byte[] family,
                                                                byte[] qualifier)
                                                         throws org.apache.hadoop.hbase.thrift.generated.IOError
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

getVer

@Deprecated
public List<org.apache.hadoop.hbase.thrift.generated.TCell> getVer(byte[] tableName,
                                                                              byte[] row,
                                                                              byte[] column,
                                                                              int numVersions)
                                                            throws org.apache.hadoop.hbase.thrift.generated.IOError
Deprecated. 

Specified by:
getVer in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

getVer

public List<org.apache.hadoop.hbase.thrift.generated.TCell> getVer(byte[] tableName,
                                                                   byte[] row,
                                                                   byte[] family,
                                                                   byte[] qualifier,
                                                                   int numVersions)
                                                            throws org.apache.hadoop.hbase.thrift.generated.IOError
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

getVerTs

@Deprecated
public List<org.apache.hadoop.hbase.thrift.generated.TCell> getVerTs(byte[] tableName,
                                                                                byte[] row,
                                                                                byte[] column,
                                                                                long timestamp,
                                                                                int numVersions)
                                                              throws org.apache.hadoop.hbase.thrift.generated.IOError
Deprecated. 

Specified by:
getVerTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

getVerTs

public List<org.apache.hadoop.hbase.thrift.generated.TCell> getVerTs(byte[] tableName,
                                                                     byte[] row,
                                                                     byte[] family,
                                                                     byte[] qualifier,
                                                                     long timestamp,
                                                                     int numVersions)
                                                              throws org.apache.hadoop.hbase.thrift.generated.IOError
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

getRow

public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRow(byte[] tableName,
                                                                        byte[] row)
                                                                 throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
getRow in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

getRowWithColumns

public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowWithColumns(byte[] tableName,
                                                                                   byte[] row,
                                                                                   List<byte[]> columns)
                                                                            throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
getRowWithColumns in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

getRowTs

public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowTs(byte[] tableName,
                                                                          byte[] row,
                                                                          long timestamp)
                                                                   throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
getRowTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

getRowWithColumnsTs

public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> getRowWithColumnsTs(byte[] tableName,
                                                                                     byte[] row,
                                                                                     List<byte[]> columns,
                                                                                     long timestamp)
                                                                              throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
getRowWithColumnsTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

deleteAll

public void deleteAll(byte[] tableName,
                      byte[] row,
                      byte[] column)
               throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
deleteAll in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

deleteAllTs

public void deleteAllTs(byte[] tableName,
                        byte[] row,
                        byte[] column,
                        long timestamp)
                 throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
deleteAllTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

deleteAllRow

public void deleteAllRow(byte[] tableName,
                         byte[] row)
                  throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
deleteAllRow in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

deleteAllRowTs

public void deleteAllRowTs(byte[] tableName,
                           byte[] row,
                           long timestamp)
                    throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
deleteAllRowTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

createTable

public void createTable(byte[] tableName,
                        List<org.apache.hadoop.hbase.thrift.generated.ColumnDescriptor> columnFamilies)
                 throws org.apache.hadoop.hbase.thrift.generated.IOError,
                        org.apache.hadoop.hbase.thrift.generated.IllegalArgument,
                        org.apache.hadoop.hbase.thrift.generated.AlreadyExists
Specified by:
createTable in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.hadoop.hbase.thrift.generated.IllegalArgument
org.apache.hadoop.hbase.thrift.generated.AlreadyExists

deleteTable

public void deleteTable(byte[] tableName)
                 throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
deleteTable in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

mutateRow

public void mutateRow(byte[] tableName,
                      byte[] row,
                      List<org.apache.hadoop.hbase.thrift.generated.Mutation> mutations)
               throws org.apache.hadoop.hbase.thrift.generated.IOError,
                      org.apache.hadoop.hbase.thrift.generated.IllegalArgument
Specified by:
mutateRow in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.hadoop.hbase.thrift.generated.IllegalArgument

mutateRowTs

public void mutateRowTs(byte[] tableName,
                        byte[] row,
                        List<org.apache.hadoop.hbase.thrift.generated.Mutation> mutations,
                        long timestamp)
                 throws org.apache.hadoop.hbase.thrift.generated.IOError,
                        org.apache.hadoop.hbase.thrift.generated.IllegalArgument
Specified by:
mutateRowTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.hadoop.hbase.thrift.generated.IllegalArgument

mutateRows

public void mutateRows(byte[] tableName,
                       List<org.apache.hadoop.hbase.thrift.generated.BatchMutation> rowBatches)
                throws org.apache.hadoop.hbase.thrift.generated.IOError,
                       org.apache.hadoop.hbase.thrift.generated.IllegalArgument,
                       org.apache.thrift.TException
Specified by:
mutateRows in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.hadoop.hbase.thrift.generated.IllegalArgument
org.apache.thrift.TException

mutateRowsTs

public void mutateRowsTs(byte[] tableName,
                         List<org.apache.hadoop.hbase.thrift.generated.BatchMutation> rowBatches,
                         long timestamp)
                  throws org.apache.hadoop.hbase.thrift.generated.IOError,
                         org.apache.hadoop.hbase.thrift.generated.IllegalArgument,
                         org.apache.thrift.TException
Specified by:
mutateRowsTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.hadoop.hbase.thrift.generated.IllegalArgument
org.apache.thrift.TException

atomicIncrement

@Deprecated
public long atomicIncrement(byte[] tableName,
                                       byte[] row,
                                       byte[] column,
                                       long amount)
                     throws org.apache.hadoop.hbase.thrift.generated.IOError,
                            org.apache.hadoop.hbase.thrift.generated.IllegalArgument,
                            org.apache.thrift.TException
Deprecated. 

Specified by:
atomicIncrement in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.hadoop.hbase.thrift.generated.IllegalArgument
org.apache.thrift.TException

atomicIncrement

public long atomicIncrement(byte[] tableName,
                            byte[] row,
                            byte[] family,
                            byte[] qualifier,
                            long amount)
                     throws org.apache.hadoop.hbase.thrift.generated.IOError,
                            org.apache.hadoop.hbase.thrift.generated.IllegalArgument,
                            org.apache.thrift.TException
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.hadoop.hbase.thrift.generated.IllegalArgument
org.apache.thrift.TException

scannerClose

public void scannerClose(int id)
                  throws org.apache.hadoop.hbase.thrift.generated.IOError,
                         org.apache.hadoop.hbase.thrift.generated.IllegalArgument
Specified by:
scannerClose in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.hadoop.hbase.thrift.generated.IllegalArgument

scannerGetList

public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> scannerGetList(int id,
                                                                                int nbRows)
                                                                         throws org.apache.hadoop.hbase.thrift.generated.IllegalArgument,
                                                                                org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
scannerGetList in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IllegalArgument
org.apache.hadoop.hbase.thrift.generated.IOError

scannerGet

public List<org.apache.hadoop.hbase.thrift.generated.TRowResult> scannerGet(int id)
                                                                     throws org.apache.hadoop.hbase.thrift.generated.IllegalArgument,
                                                                            org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
scannerGet in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IllegalArgument
org.apache.hadoop.hbase.thrift.generated.IOError

scannerOpen

public int scannerOpen(byte[] tableName,
                       byte[] startRow,
                       List<byte[]> columns)
                throws org.apache.hadoop.hbase.thrift.generated.IOError
Specified by:
scannerOpen in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError

scannerOpenWithStop

public int scannerOpenWithStop(byte[] tableName,
                               byte[] startRow,
                               byte[] stopRow,
                               List<byte[]> columns)
                        throws org.apache.hadoop.hbase.thrift.generated.IOError,
                               org.apache.thrift.TException
Specified by:
scannerOpenWithStop in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.thrift.TException

scannerOpenWithPrefix

public int scannerOpenWithPrefix(byte[] tableName,
                                 byte[] startAndPrefix,
                                 List<byte[]> columns)
                          throws org.apache.hadoop.hbase.thrift.generated.IOError,
                                 org.apache.thrift.TException
Specified by:
scannerOpenWithPrefix in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.thrift.TException

scannerOpenTs

public int scannerOpenTs(byte[] tableName,
                         byte[] startRow,
                         List<byte[]> columns,
                         long timestamp)
                  throws org.apache.hadoop.hbase.thrift.generated.IOError,
                         org.apache.thrift.TException
Specified by:
scannerOpenTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.thrift.TException

scannerOpenWithStopTs

public int scannerOpenWithStopTs(byte[] tableName,
                                 byte[] startRow,
                                 byte[] stopRow,
                                 List<byte[]> columns,
                                 long timestamp)
                          throws org.apache.hadoop.hbase.thrift.generated.IOError,
                                 org.apache.thrift.TException
Specified by:
scannerOpenWithStopTs in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.thrift.TException

getColumnDescriptors

public Map<byte[],org.apache.hadoop.hbase.thrift.generated.ColumnDescriptor> getColumnDescriptors(byte[] tableName)
                                                                                           throws org.apache.hadoop.hbase.thrift.generated.IOError,
                                                                                                  org.apache.thrift.TException
Specified by:
getColumnDescriptors in interface org.apache.hadoop.hbase.thrift.generated.Hbase.Iface
Throws:
org.apache.hadoop.hbase.thrift.generated.IOError
org.apache.thrift.TException


Copyright © 2010 The Apache Software Foundation