code: private boolean giveMessageToConsumer(
                                            SIMPMessage msg,
                                            TransactionCommon tran,
                                            DispatchableConsumerPoint consumerPoint,
                                            boolean storedByCD)
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(
                          tc,
                          "giveMessageToConsumer",
                          new Object[] { msg, tran, consumerPoint, Boolean.valueOf(storedByCD) });
  
          boolean messageTaken = false;
  
          // Identify the fact that the message originated on a local queue point
          // in order for consumer key groups to find the correct getCursor later on
          if (msg.getLocalisingMEUuid() == null)
              msg.setLocalisingME(_messageProcessor.getMessagingEngineUuid());
  
          //Put the message to the consumer
          messageTaken = consumerPoint.put(msg, storedByCD);
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(tc, "giveMessageToConsumer", Boolean.valueOf(messageTaken));
  
          return messageTaken;
      }
docs: Actually hand the message on to a consumerPoint. This is where no-local and
  exception destination processing is done.
  
  @param msg The message being delivered
  @param tran The transaction being used
  @param consumerPoint The consumer point to give the message to
  @param storedByCD true if the message is stored on the CD's itemstream
  @return true if the message was taken by the consumer point
  @throws SIStoreException thrown if there was a problem in the message store