public FTable getFTableDescriptor(byte[] tableName) throws IOException {
if (tableName == null || tableName.length == 0)
return null;
MasterMonitorKeepAliveConnection master = getKeepAliveMasterMonitor();
GetTableDescriptorsResponse htds;
try {
List<String> tables = new ArrayList<String>();
tables.add(Bytes.toString(tableName));
GetTableDescriptorsRequest req = RequestConverter
.buildGetTableDescriptorsRequest(tables);
htds = master.getTableDescriptors(null, req);
if (htds.getTableSchemaList().size() > 0) {
return ProtobufUtil.convertITableSchema(htds.getTableSchemaList()
.get(0));
}
return null;
} catch (ServiceException se) {
throw ProtobufUtil.getRemoteException(se);