Class CoreParser

    • Field Detail

      • defaultField

        protected java.lang.String defaultField
      • DISALLOW_EXTERNAL_ENTITY_RESOLVER

        public static final org.xml.sax.EntityResolver DISALLOW_EXTERNAL_ENTITY_RESOLVER
    • Constructor Detail

      • CoreParser

        public CoreParser​(Analyzer analyzer,
                          QueryParser parser)
        Construct an XML parser that uses a single instance QueryParser for handling UserQuery tags - all parse operations are synchronised on this parser
        Parameters:
        parser - A QueryParser which will be synchronized on during parse calls.
      • CoreParser

        public CoreParser​(java.lang.String defaultField,
                          Analyzer analyzer)
        Constructs an XML parser that creates a QueryParser for each UserQuery request.
        Parameters:
        defaultField - The default field name used by QueryParsers constructed for UserQuery tags
      • CoreParser

        protected CoreParser​(java.lang.String defaultField,
                             Analyzer analyzer,
                             QueryParser parser)
    • Method Detail

      • parse

        public Query parse​(java.io.InputStream xmlStream)
                    throws ParserException
        Parses the given stream as XML file and returns a Query. By default this disallows external entities for security reasons.
        Throws:
        ParserException
      • addQueryBuilder

        public void addQueryBuilder​(java.lang.String nodeName,
                                    QueryBuilder builder)
      • addSpanBuilder

        public void addSpanBuilder​(java.lang.String nodeName,
                                   SpanQueryBuilder builder)
      • addSpanQueryBuilder

        public void addSpanQueryBuilder​(java.lang.String nodeName,
                                        SpanQueryBuilder builder)
      • getEntityResolver

        protected org.xml.sax.EntityResolver getEntityResolver()
        Returns a SAX EntityResolver to be used by DocumentBuilder. By default this returns DISALLOW_EXTERNAL_ENTITY_RESOLVER, which disallows the expansion of external entities (for security reasons). To restore legacy behavior, override this method to return null.
      • getErrorHandler

        protected org.xml.sax.ErrorHandler getErrorHandler()
        Subclass and override to return a SAX ErrorHandler to be used by DocumentBuilder. By default this returns null so no error handler is used. This method can be used to redirect XML parse errors/warnings to a custom logger.