docs: public final void notifyReceiveExclusiveChange(boolean newValue)
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
        SibTr.entry(tc, "notifyReceiveExclusiveChange", new Boolean(newValue));
      boolean notifyConsumers = true;
      synchronized (consumerPoints)
      {
        _cardinalityOne = newValue;
        _cardinalityChange = true;
  
        if (consumerPoints.size() == 0)
        {
          notifyConsumers = false;
        }
        // since we have set cardinalityChange to true, we will not allow any more consumers till we have
        // finished processing the cardinality change
      }
  
      // if there were consumers, we tell the CD to close all consumers.
      if (notifyConsumers)
        super.closeAllConsumersForReceiveExclusive();
      else
      {
        // all consumers are gone so finish processing the cardinality change
        // NOTE: this causes us to flush the stream.
        // Any outstanding transactions will rollback
        try
        {
          cardinalityChangeConsumersDetached();
        }
        catch(SIResourceException e)
        {
          // Exception shouldn't occur so FFDC and rethrow as runtime exception
          FFDCFilter.processException(
            e,
            "com.ibm.ws.sib.processor.impl.RemoteConsumerDispatcher.notifyReceiveExclusiveChange",
            "1:203:1.75",
            this);
  
          SIErrorException e2 =
            new SIErrorException(
              nls.getFormattedMessage(
                "INTERNAL_MESSAGING_ERROR_CWSIP0002",
                new Object[] { "com.ibm.ws.sib.processor.impl.RemoteConsumerDispatcher.notifyReceiveExclusiveChange",
                               "1:211:1.75",
                               e },
                null));
  
          SibTr.exception(tc, e);
          SibTr.error(tc, "INTERNAL_MESSAGING_ERROR_CWSIP0002",
            new Object[] {
              "com.ibm.ws.sib.processor.impl.RemoteConsumerDispatcher.notifyReceiveExclusiveChange",
              "1:219:1.75",
              e });
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(tc, "notifyReceiveExclusiveChange", e2);
          throw e2;
        }
      }
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(tc, "notifyReceiveExclusiveChange");
    }