code: @Override
      public VirtualConnection getRawResponseBodyBuffer(InterChannelCallback callback, boolean bForce) throws BodyCompleteException {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.entry(tc, "getRawResponseBodyBuffer(async)");
          }
          setRawBody(true);
          VirtualConnection vc = getResponseBodyBuffer(callback, bForce);
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.exit(tc, "getRawResponseBodyBuffer(async): " + vc);
          }
          return vc;
      }
docs: Retrieve the next buffer of the body asynchronously. This will avoid any
  body modifications, such as decompression or removal of chunked-encoding
  markers.
  <p>
  If the read can be performed immediately, then a VirtualConnection will be returned and the provided callback will not be used. If the read is being done asychronously, then
  null will be returned and the callback used when complete. The force input flag allows the caller to force the asynchronous read to always occur, and thus the callback to
  always be used.
  <p>
  The caller is responsible for releasing these buffers when finished with them as the HTTP Channel keeps no reference to them.
  
  @param callback
  @param bForce
  @return VirtualConnection
  @throws BodyCompleteException
  -- if the entire body has already been read