docs: private void processConsumerSetChangeCallback (CommsByteBuffer buffer, Conversation conversation) {
       if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(this, tc, "processConsumerSetChangeCallback", new Object[]{buffer, conversation});
  
       final ClientConversationState convState = (ClientConversationState) conversation.getAttachment();
       //final SICoreConnection connection = convState.getSICoreConnection();
  
       final short connectionObjectId                = buffer.getShort();
       final short consumerMonitorListenerid             = buffer.getShort();
       final boolean isEmpty = buffer.getBoolean();
       
       if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(this, tc, "connectionObjectId="+connectionObjectId);
       if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(this, tc, "consumerMonitorListenerid="+consumerMonitorListenerid);
       if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(this, tc, "isEmpty="+isEmpty);
      
       // Look up the real ConsumerSetChangeCallback in the local ConsumerMonitorListenerCache
  
       final ConsumerMonitorListenerCache consumerMonitorListenerCache = convState.getConsumerMonitorListenerCache();
       final ConsumerSetChangeCallback consumerSetChangeCallback = consumerMonitorListenerCache.get(consumerMonitorListenerid);
  
       if (consumerSetChangeCallback != null) {
          //Call the listener on a seperate thread.
          ClientAsynchEventThreadPool.getInstance().dispatchConsumerSetChangeCallbackEvent(consumerSetChangeCallback,isEmpty);
       } else {
         if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(this, tc, "consumerMonitorListenerid="+consumerMonitorListenerid+" not found in consumerMonitorListenerCache");
         if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(this, tc, consumerMonitorListenerCache.toString());
  
         SIErrorException e = new SIErrorException(nls.getFormattedMessage("UNABLE_TO_FIND_CONSUMER_MONITOR_LISTENER_SICO8024", new Object[] {consumerMonitorListenerid}, null));
         FFDCFilter.processException(e, CLASS_NAME + ".processConsumerSetChangeCallback", CommsConstants.PROXYRECEIVELISTENER_CONSUMERMON_CALLBACK_01, this);
  
         SibTr.error(tc, "An internal error occurred. The consumerMonitorListenerid "+consumerMonitorListenerid+" received by the client can not be located.");
         if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(this, tc, "processConsumerSetChangeCallback");
         throw e;
       }
  
       if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(this, tc, "processConsumerSetChangeCallback");
     }