code: public void detachAllProducersForNewInputHandler(ProducerInputHandler newHandler)throws SIException
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(tc, "detachAllProducersForNewInputHandler", newHandler);
  
      //detach all producers and update
      synchronized (_producers)
      {
        Iterator<MessageProducer> it = _producers.iterator();
        while(it.hasNext())
        {
          ProducerSessionImpl prod = (ProducerSessionImpl)it.next();
          it.remove();
          //attach this to the new input handler
          newHandler.attachProducer(prod);
          prod.updateInputHandler(newHandler);
        }
      }
  
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "detachAllProducersForNewInputHandler");
    }
docs: /*
  (non-Javadoc)
  @see com.ibm.ws.sib.processor.impl.interfaces.ProducerInputHandler#detachAllProducersForNewInputHandler(com.ibm.ws.sib.processor.impl.interfaces.ProducerInputHandler)