in src/main/csharp/Readers/BySelectorMessageReader.cs [232:268]
private IMessage InternalMatch(Message message, bool convertBody)
{
if(messageConverterEx == null)
{
IMessage nmsMessage = messageConverter.ToNmsMessage(message);
evaluationContext.Message = nmsMessage;
if(selectionExpression.Matches(evaluationContext))
{
return nmsMessage;
}
}
else
{
// This version converts the message body only for those
// messages matching the selection criteria.
// Relies on MessageConverterEx for partial conversions.
IMessage nmsMessage = messageConverterEx.ToNmsMessage(
message, false);
evaluationContext.Message = nmsMessage;
if(selectionExpression.Matches(evaluationContext))
{
if(convertBody)
{
messageConverterEx.ConvertMessageBodyToNMS(
message, nmsMessage);
}
return nmsMessage;
}
}
return null;
}