docs: public void parse(WsByteBuffer transmissionData)
     {
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(this, tc, "parse", transmissionData);
        if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) JFapUtils.debugTraceWsByteBufferInfo(this, tc, transmissionData, "transmissionBuffer");
  
        needMoreData = false;
        boolean encounteredError = false;
  
        while(!needMoreData && !encounteredError)
        {
           switch(state)
           {
              case(STATE_PARSING_PRIMARY_HEADER):
                 parsePrimaryHeader(transmissionData);
                 break;
              case(STATE_PARSING_CONVERSATION_HEADER):
                 parseConversationHeader(transmissionData);
                 break;
              case(STATE_PARSING_SEGMENT_START_HEADER):
                 parseSegmentStartHeader(transmissionData);
                 break;
              case(STATE_PARSING_PRIMARY_ONLY_PAYLOAD):
                 parsePrimaryOnlyPayload(transmissionData);
                 break;
              case(STATE_PARSE_CONVERSATION_PAYLOAD):
                 parseConversationPayload(transmissionData);
                 break;
              case(STATE_PARSE_SEGMENT_START_PAYLOAD):
                 parseSegmentStartPayload(transmissionData);
                 break;
              case(STATE_PARSE_SEGMENT_MIDDLE_PAYLOAD):
                 parseSegmentMiddlePayload(transmissionData);
                 break;
              case(STATE_PARSE_SEGMENT_END_PAYLOAD):
                 parseSegmentEndPayload(transmissionData);
                 break;
              case(STATE_ERROR):
                 encounteredError = true;
                 break;
              default:
                 if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(this, tc, "got into default branch of parse() method case statement");
                 throwable = new SIErrorException("Should not have entered default branch of parse() method case statement");
                 FFDCFilter.processException(throwable, "com.ibm.ws.sib.jfapchannel.impl.InboundTransmissionParser", JFapChannelConstants.INBOUNDXMITPARSER_PARSE_01);
                 state = STATE_ERROR;
                 break;
           }
        }
  
        if (encounteredError)
        {
           if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(this, tc, "encountered error parsing");
           if (TraceComponent.isAnyTracingEnabled() && tc.isEventEnabled()) SibTr.exception(this, tc, throwable);
           connection.invalidate(false, throwable, "parse error while parsing transmission");  // D224570
        }
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(this, tc, "parse");
     }