/** * @see java.io.InputStream#read() */ public int read() throws IOException { if (current == null) { return -1; } if (current.getUsedSize() <= index) { current = current.getNext(); if (current == null) { return -1; } index = 0; } byte c = current.getByteAt(index); index++; return c; }