code: public void moveMessage(boolean discard) throws SIMPControllableNotFoundException, 
                                                      SIMPRuntimeOperationFailedException
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(tc, "moveMessage", Boolean.valueOf(discard));
        
      assertValidControllable();
      
      // This is a pubsub messages so we cannot remove the actual message from the ItemStream.
      // In fact, there is no need to remove the underlying message, we leave that to the stream
      // to call back to the PubSubInputHandler to remove the reference to the message if
      // possible (i.e. others are not also referencing it).
      try
      {
        Stream stream = getStream();
        if(stream != null)
          stream.writeSilenceForced(getStartTick());
      }
      catch (SIException e)
      {
        FFDCFilter.processException(
          e,
          "com.ibm.ws.sib.processor.runtime.LinkTransmitMessageControl.moveMessage",
          "1:184:1.5",
          this);
    
        SIMPRuntimeOperationFailedException finalE =
          new SIMPRuntimeOperationFailedException(
            nls.getFormattedMessage(
              "INTERNAL_MESSAGING_ERROR_CWSIP0003",
              new Object[] {"TransmitMessage.moveMessage",
                  "1:192:1.5",
                            e,
                            new Long(getStartTick())},
              null), e);
  
        SibTr.exception(tc, finalE);
        
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
          SibTr.exit(tc, "moveMessage", finalE);
        
        throw finalE;             
      }
      
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "moveMessage");
    }
docs: /* (non-Javadoc)
  @see com.ibm.ws.sib.processor.runtime.SIMPRemoteMessageControllable#moveMessage(boolean)