docs: public boolean filterMatches(AbstractItem item)
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(tc, "filterMatches", item);
  
      boolean result = true;
  
      if (selectorTree != null || discriminatorTree != null)
      {
        // Defect 382250, set the unlockCount from MsgStore into the message
        // in the case where the message is being redelivered.
        // 668676, get the message if available
        JsMessage msg = ((SIMPMessage)item).getMessageIfAvailable();
        if ( msg == null)
        {
      	  result = false;
        }
        else
        {
            int redelCount = ((SIMPMessage)item).guessRedeliveredCount();
  
            if (redelCount > 0)
            {
                if(TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                    SibTr.debug(tc, "Set deliverycount into message: " + redelCount);
                msg.setDeliveryCount(redelCount);
            }
  
            // Evaluate message against selector tree
            result =
              consumerDispatcher.getMessageProcessor().getMessageProcessorMatching().evaluateMessage(
                selectorTree,
                discriminatorTree,
                msg);
        }
      }
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "filterMatches", Boolean.valueOf(result));
  
      return result;
    }