docs: public void findMatchingSelectorSubs(String theTopic,
                                         Set consumerSet)
    throws SIDiscriminatorSyntaxException                                      
    {
      if (tc.isEntryEnabled())
          SibTr.entry(
            tc,
            "findMatchingSelectorSubs",
            new Object[] { theTopic}); 
      // We can string match against consumers with fully qualified discriminators 
      findMatchingExactSelectorSubs(theTopic, consumerSet);
  
      // Use MatchSpace direct evaluation code once we've isolated candidate
      // expressions through string matching
      if(_areWildcardSelectorSubs)
      {
        // Iterate through the map
        Iterator i = _wildcardSelectorSubs.keySet().iterator();
        while (i.hasNext())
        {
          String consumerTopic = (String)i.next();     
          // Retrieve the non-wildcarded stem
          String stem = _mpm.retrieveNonWildcardStem(consumerTopic);
                
          if (tc.isDebugEnabled()) 
            SibTr.debug(tc, "Found consumer topic: " + consumerTopic + "with stem: " + stem);
          
          // Add candidates to the list
          if(theTopic.startsWith(stem))
          {
            if (tc.isDebugEnabled()) 
              SibTr.debug(tc, "Drive direct evaluation for topic: " + consumerTopic);
         
            if(_mpm.evaluateDiscriminator(theTopic,consumerTopic))
            {
              ArrayList consumerList = (ArrayList)_wildcardSelectorSubs.get(consumerTopic);
              if (tc.isDebugEnabled())
                SibTr.debug(tc, "Add members of list to set");
              consumerSet.addAll(consumerList); 
            }    
          }
        }                                 
      }
     
      if (tc.isEntryEnabled())
        SibTr.exit(tc, "findMatchingSelectorSubs");
    }