public List<byte[]> write(List<InternalLog> logs) throws IOException {
  final List<Put> puts=new ArrayList<Put>(logs.size());
  final List<byte[]> result=new ArrayList<byte[]>(logs.size());
  for (  InternalLog log : logs) {
    final byte[] rowkey=RowkeyBuilder.buildRowkey(log);
    final Put p=new Put(rowkey);
    populateColumnValues(p,log);
    puts.add(p);
    final List<byte[]> indexRowkeys=log.getIndexRowkeys();
    if (indexRowkeys != null) {
      writeIndexes(rowkey,indexRowkeys,puts);
    }
    result.add(rowkey);
  }
  tbl.put(puts);
  return result;
}

public List < byte [ ] > write ( List < InternalLog > logs ) throws IOException { final List < Put > puts = new ArrayList < Put > ( logs . size ( ) ) ; final List < byte [ ] > result = new ArrayList < byte [ ] > ( logs . size ( ) ) ; for ( InternalLog log : logs ) { final byte [ ] rowkey = RowkeyBuilder . buildRowkey ( log ) ; final Put p = new Put ( rowkey ) ; populateColumnValues ( p , log ) ; puts . add ( p ) ; final List < byte [ ] > indexRowkeys = log . getIndexRowkeys ( ) ; if ( indexRowkeys != null ) { writeIndexes ( rowkey , indexRowkeys , puts ) ; } result . add ( rowkey ) ; } tbl . put ( puts ) ; return result ; }
todo need think about if multi - put is necessary , by checking if autoflush works
