code: public int read() throws IOException {
  
          if (closed) {
              throw new IOException("Attempted read from closed stream.");
          }
          if (eof) {
              return -1;
          }
          if (pos >= chunkSize) {
              nextChunk();
              if (eof) {
                  return -1;
              }
          }
          pos++;
          return in.read();
      }
docs: <p> Returns all the data in a chunked stream in coalesced form. A chunk
  is followed by a CRLF. The method returns -1 as soon as a chunksize of 0
  is detected.</p>
  
  <p> Trailer headers are read automatically at the end of the stream and
  can be obtained with the getResponseFooters() method.</p>
  
  @return -1 of the end of the stream has been reached or the next data
  byte
  @throws IOException If an IO problem occurs