code: private boolean before() throws IOException {
          if (closed) {
              throw new IOException("Attempted read from closed stream.");
          }
          switch (length) {
              case EOF:
                  return false;
              case UNKNOWN:
                  length = readLength();
                  pos = 0;
                  if (length == EOF) {
                      HeaderList.parse(src); // result is ignored
                      return false;
                  }
                  return true;
              default:
                  return true;
          }
      }
docs: Standard processing before reading data.
  
  @return false for eof