code: @Override
      public WsByteBuffer getResponseBodyBuffer() throws IOException, IllegalHttpBodyException {
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.entry(tc, "getResponseBodyBuffer(sync)");
          }
  
          if (!checkBodyValidity()) {
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
                  Tr.exit(tc, "getResponseBodyBuffer(sync): No body allowed");
              }
              return null;
          }
  
          setMultiRead(false);
          // check for any already read buffer
          WsByteBuffer retVal = getNextBuffer();
          if (null == retVal && !isBodyComplete()) {
              // read a buffer
              try {
                  readBodyBuffer(getResponseImpl(), false);
              } catch (BodyCompleteException e) {
                  // no FFDC required
                  if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
                      Tr.exit(tc, "getResponseBodyBuffer(sync): BodyCompleteException");
                  }
                  return null;
              } catch (IllegalHttpBodyException ihe) {
                  // no FFDC required
                  // not possible with response messages
                  if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                      Tr.debug(tc, "Unexpected exception: " + ihe);
                  }
              }
              retVal = getNextBuffer();
          }
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.exit(tc, "getResponseBodyBuffer(sync): " + retVal);
          }
          return retVal;
      }
docs: This gets the next body buffer. If the body is encoded/compressed,
  then the encoding is removed and the "next" buffer returned.
  <p>
  A null response means that there is no body left to read.
  <p>
  Once given a buffer, we keep no record of that buffer. It is the users responsibility to release it.
  <p>
  
  @return WsByteBuffer
  @throws IOException
  -- if a socket exceptions happens
  @throws IllegalHttpBodyException
  -- if the body was malformed