code: @Override
  	public final void setMessageListener(MessageListener messageListener) throws JMSException
      {
          super.setMessageListener(messageListener);
          
          // If the connection was already started, wake up the new listener in case there were messages
          // waiting in the destination
          if (messageListener != null && connection.isStarted())
          	engine.getDeliveryAsyncTaskManager().execute(wakeUpAsyncTask);
      }
docs: /* (non-Javadoc)
  @see javax.jms.MessageConsumer#setMessageListener(javax.jms.MessageListener)