docs: public void errorOccurred(SIConnectionLostException exception,
                               int segmentType,
                               int requestNumber,
                               int priority,
                               Conversation conversation)
     {
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(tc, "errorOccurred");
  
        // First job is to FFDC
        FFDCFilter.processException(exception, CLASS_NAME + ".errorOccurred",
                                    CommsConstants.SERVERTRANSPORTRECEIVELISTENER_ERROR_01, this);
  
        if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
        {
           Object[] debug = { "Segment type  : " + segmentType + " (0x" + Integer.toHexString(segmentType) + ")", "Request number: " + requestNumber, "Priority      : " + priority};
           SibTr.debug(tc, "Received an error in the ProxyReceiveListener", debug);
           SibTr.debug(tc, "Primary exception:");
           SibTr.exception(tc, exception);
        }
  
        // At this point we should notify any connection listeners that the connection
        // has failed. If the conversation was null, then we are unable to find out where
        // to deliver exceptions, so don't try.
        if (conversation !=null)
        {
           ClientConversationState convState =
              (ClientConversationState) conversation.getAttachment();
  
           // If in the unlikely event that we get a JFAP exception before we have
           // even initialised properly we are a bit stuffed - so don't even try
           if (convState != null)
           {
              // Otherwise, invoke any callbacks
              SICoreConnection conn = convState.getSICoreConnection();
              final ProxyQueueConversationGroup proxyQueueGroup = convState.getProxyQueueConversationGroup();
              ClientAsynchEventThreadPool.getInstance().dispatchCommsException(conn, proxyQueueGroup, exception);
           }
        }
  
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())  SibTr.exit(tc, "errorOccurred");
     }