code: private Entry readEntry(BufferedReader reader) throws IOException {
      for (String line = reader.readLine(); line != null; line = reader.readLine()) {
        Entry entry = parseEntry(line);
        if (entry != null) {
          return entry;
        }
      }
      return null;
    }
docs: Reads next entry from the reader.
  
  @return entry or <code>null</code> if no more data in the stream
  @throws IOException if reading from stream fails