docs: public static void rcvResetBrowse(CommsByteBuffer request, Conversation conversation,
                                       int requestNumber, boolean allocatedFromBufferPool,
                                       boolean partOfExchange)
     {
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(tc, "rcvResetBrowse",
                                             new Object[]
                                             {
                                                request,
                                                conversation,
                                                ""+requestNumber,
                                                ""+allocatedFromBufferPool
                                              });
  
        // Strip information from reset request.
        short connectionObjectId = request.getShort();                 // Connection Id
        short browserSessionId = request.getShort();                   // Id of browser session.
  
        if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(tc, "rcvResetBrowse> connectionObjectId = "+connectionObjectId+
                                                 "\nrcvResetBrowse> browserSessionId   = "+browserSessionId);
  
        BrowserSession browserSession = null;
        ConversationState convState = null;
  
        try
        {
           // Locate browser session from conversation state.
           convState = (ConversationState)conversation.getAttachment();
           CATMainConsumer mainConsumer = (CATMainConsumer)convState.getObject(browserSessionId);
           browserSession = mainConsumer.getBrowserSession();
  
           if (browserSession == null)
           {
              // The browser session from the main consumer should not be null here
              SIErrorException e = new SIErrorException(
                 nls.getFormattedMessage("BROWSER_SESSION_NULL_SICO20", null, null)
              );
  
              FFDCFilter.processException(e, CLASS_NAME + ".rcvResetBrowse",
                                          CommsConstants.STATICCATBROWSER_RCVRESETBROWSERSESS_04);
  
              throw e;
           }
        }
        catch(NullPointerException npe)
        {
           FFDCFilter.processException(npe, CLASS_NAME + ".rcvResetBrowse",
                                       CommsConstants.STATICCATBROWSER_RCVRESETBROWSERSESS_01);
  
           if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(tc, "Browser session was null!", npe);
  
           // This is an internal error, so inform the client
           StaticCATHelper.sendExceptionToClient(npe,
                                                 CommsConstants.STATICCATBROWSER_RCVRESETBROWSERSESS_01,   // d186970
                                                 conversation, requestNumber);
        }
  
        if (browserSession != null)
        {
           try
           {
              browserSession.reset();
           }
           catch (SIException e)
           {
              //No FFDC code needed
              //Only FFDC if we haven't received a meTerminated event.
              if(!convState.hasMETerminated())
              {
                 FFDCFilter.processException(e, CLASS_NAME + ".rcvResetBrowse",
                                             CommsConstants.STATICCATBROWSER_RCVRESETBROWSERSESS_02);
              }
  
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(tc, e.getMessage(), e);
  
              // Send error to client.
              StaticCATHelper.sendExceptionToClient(e,
                                                    CommsConstants.STATICCATBROWSER_RCVRESETBROWSERSESS_02,   // d186970
                                                    conversation, requestNumber);
           }
        }
  
        // Send response.
        CommsByteBuffer reply = poolManager.allocate();
        try
        {
           conversation.send(reply,
                             JFapChannelConstants.SEG_RESET_BROWSE_R,
                             requestNumber,
                             JFapChannelConstants.PRIORITY_MEDIUM,
                             true,
                             ThrottlingPolicy.BLOCK_THREAD,
                             null);
        }
        catch (SIException e)
        {
           FFDCFilter.processException(e, CLASS_NAME + ".rcvResetBrowse",
                                       CommsConstants.STATICCATBROWSER_RCVRESETBROWSERSESS_03);
  
           SibTr.error(tc, "COMMUNICATION_ERROR_SICO2020", e);
  
           // Can't really do much as a communications exception implies that
           // we have lost contact with the client anyway.
        }
  
        request.release(allocatedFromBufferPool);
  
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(tc, "rcvResetBrowse");
     }