code: public synchronized Buffer read()
  	throws IOException {
  	long offset = file.getFilePointer();
  	byte [] buf = new byte[bufferSize];
  	int read = file.read(buf);
  	if (read == -1) {
  	    return null;
  	} else {
  	    return new Buffer(buf, read, offset);
  	}
      }
docs: In this implementation, each read() returns data sequentially.