public bool Iterate()
{
if(this.listener != null)
{
MessageDispatch dispatch = this.unconsumedMessages.DequeueNoWait();
if(dispatch != null)
{
try
{
ActiveMQMessage message = CreateActiveMQMessage(dispatch);
BeforeMessageIsConsumed(dispatch);
listener(message);
AfterMessageIsConsumed(dispatch, false);
}
catch(NMSException e)
{
this.session.Connection.OnSessionException(this.session, e);
}
return true;
}
}
return false;
}