public int read(byte[] buf, int off, int len) throws TTransportException {
try {
buffer_.get(buf, off, len);
} catch (BufferUnderflowException e) {
LOG.warn("read buffer underflow", e);
throw new TTransportException("Buffer underflow");
}
return len;
}