docs: public MatchParser primeMatchParser(MatchParser parser, 
    		                                String selector, 
    		                                int selectorDomain)
      throws MatchingException
    {
    	MatchParser parserimpl = null;
    	
    	// Drive appropriate parsing dependent on the SelectorDomain
      switch(selectorDomain)
      {
        case 0: // SIMESSAGE
          parserimpl =  MatchParserImpl.prime(parser, selector, false);
          break;
        case 1: // JMS
          parserimpl =  MatchParserImpl.prime(parser, selector, true);
          break;
        case 2: // XPATH10
          // This piece needs to be pluggable. MicroBroker doesn't have this
          // function.
          if(parser == null)
          {
            // Only load the class if we havent done so already
            Class parserClass = null;
            try 
            {
              parserClass =  Class.forName("com.ibm.ws.sib.matchspace.selector.impl.XPath10ParserImpl");
  
              parserimpl = (MatchParser)parserClass.newInstance();
              
              // Set the matching instance into the parser
              parserimpl.setMatching(this);            
            } 
            catch (ClassNotFoundException e) 
            {
              // No FFDC Code Needed.
              // FFDC driven by wrapper class.
              // This signals that we're running a version of the
              // MSpace that doesn't support XPath processing          
              FFDC.processException(cclass,
                "com.ibm.ws.sib.matchspace.impl.MatchingImpl",
                e,
                "1:191:1.18");
              if (tc.isAnyTracingEnabled() && tc.isDebugEnabled())      
                tc.debug(cclass, "UNABLE_TO_CREATE_MATCHING_INSTANCE_CWSIH0007", e);
              throw new MatchingException(e);
            }
            catch (Exception ex)
            {
              // No FFDC Code Needed.
              // FFDC driven by wrapper class.
              FFDC.processException(cclass,
                "com.ibm.ws.sib.matchspace.impl.MatchingImpl",
                ex,
                "1:203:1.18");
              if (tc.isAnyTracingEnabled() && tc.isDebugEnabled())      
                tc.debug(cclass, "UNABLE_TO_CREATE_MATCHING_INSTANCE_CWSIH0007", ex);
            }
          } // eof paserimpl is null
          else
          {
            parserimpl = parser;
          }
          break;
        default:
          MatchingException mex = new MatchingException();
          // No FFDC Code Needed.
          // FFDC driven by wrapper class.
          // We didn't recognise this selector domain
          FFDC.processException(cclass,
            "com.ibm.ws.sib.matchspace.impl.MatchingImpl",
            mex,
            "1:221:1.18");
          if (tc.isAnyTracingEnabled() && tc.isDebugEnabled())      
            tc.debug(cclass, "UNABLE_TO_CREATE_MATCHING_INSTANCE_CWSIH0007", mex);
          throw mex;
      }//switch
  
      return parserimpl;
    }