code: @Override
      public int read() throws IOException {
          int value = super.read();
          eofReached = value == -1;
          if (!eofReached) {
              bytesRead++;
          }
          return value;
      }
docs: {@inheritDoc}