Class DrlParser


  • public class DrlParser
    extends java.lang.Object
    This is a low level parser API. This will return textual AST representations of the DRL source, including with DSL expanders if appropriate.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static org.kie.internal.builder.conf.LanguageLevelOption DEFAULT_LANGUAGE_LEVEL  
    • Constructor Summary

      Constructors 
      Constructor Description
      DrlParser()  
      DrlParser​(org.kie.internal.builder.conf.LanguageLevelOption languageLevel)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      DefaultExpanderResolver getDefaultResolver​(java.io.Reader dsl)  
      java.util.List<DroolsSentence> getEditorSentences()  
      java.util.List<DroolsError> getErrors()  
      java.lang.String getExpandedDRL​(java.lang.String source, java.io.Reader dsl)
      This will expand the DRL. useful for debugging.
      java.lang.String getExpandedDRL​(java.lang.String source, DefaultExpanderResolver resolver)
      This will expand the DRL using the given expander resolver. useful for debugging.
      Location getLocation()  
      boolean hasErrors()  
      org.drools.drl.ast.descr.PackageDescr parse​(boolean isEditor, java.io.Reader reader)  
      org.drools.drl.ast.descr.PackageDescr parse​(boolean isEditor, java.io.Reader drl, java.io.Reader dsl)  
      org.drools.drl.ast.descr.PackageDescr parse​(boolean isEditor, java.lang.String text)  
      org.drools.drl.ast.descr.PackageDescr parse​(boolean isEditor, java.lang.String source, java.io.Reader dsl)
      Parse and build a rule package from a DRL source with a domain specific language.
      org.drools.drl.ast.descr.PackageDescr parse​(boolean isEditor, org.kie.api.io.Resource resource)  
      org.drools.drl.ast.descr.PackageDescr parse​(boolean isEditor, org.kie.api.io.Resource resource, java.io.InputStream is)  
      org.drools.drl.ast.descr.PackageDescr parse​(java.io.Reader reader)  
      org.drools.drl.ast.descr.PackageDescr parse​(java.io.Reader drl, java.io.Reader dsl)
      Parse and build a rule package from a DRL source with a domain specific language.
      org.drools.drl.ast.descr.PackageDescr parse​(java.lang.String source, java.io.Reader dsl)  
      org.drools.drl.ast.descr.PackageDescr parse​(org.kie.api.io.Resource resource)  
      org.drools.drl.ast.descr.PackageDescr parse​(org.kie.api.io.Resource resource, java.io.InputStream is)  
      org.drools.drl.ast.descr.PackageDescr parse​(org.kie.api.io.Resource resource, java.io.Reader reader)  
      org.drools.drl.ast.descr.PackageDescr parse​(org.kie.api.io.Resource resource, java.lang.String text)
      Parse a rule from text
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • DEFAULT_LANGUAGE_LEVEL

        public static final org.kie.internal.builder.conf.LanguageLevelOption DEFAULT_LANGUAGE_LEVEL
    • Constructor Detail

      • DrlParser

        public DrlParser()
      • DrlParser

        public DrlParser​(org.kie.internal.builder.conf.LanguageLevelOption languageLevel)
    • Method Detail

      • parse

        public org.drools.drl.ast.descr.PackageDescr parse​(java.io.Reader drl,
                                                           java.io.Reader dsl)
                                                    throws DroolsParserException,
                                                           java.io.IOException
        Parse and build a rule package from a DRL source with a domain specific language.
        Throws:
        DroolsParserException
        java.io.IOException
      • parse

        public org.drools.drl.ast.descr.PackageDescr parse​(boolean isEditor,
                                                           java.io.Reader drl,
                                                           java.io.Reader dsl)
                                                    throws DroolsParserException,
                                                           java.io.IOException
        Throws:
        DroolsParserException
        java.io.IOException
      • parse

        public org.drools.drl.ast.descr.PackageDescr parse​(boolean isEditor,
                                                           java.lang.String source,
                                                           java.io.Reader dsl)
                                                    throws DroolsParserException
        Parse and build a rule package from a DRL source with a domain specific language.
        Parameters:
        source - As Text.
        dsl -
        Returns:
        Throws:
        DroolsParserException
      • parse

        public org.drools.drl.ast.descr.PackageDescr parse​(org.kie.api.io.Resource resource,
                                                           java.io.InputStream is)
                                                    throws DroolsParserException,
                                                           java.io.IOException
        Throws:
        DroolsParserException
        java.io.IOException
      • parse

        public org.drools.drl.ast.descr.PackageDescr parse​(boolean isEditor,
                                                           org.kie.api.io.Resource resource)
                                                    throws DroolsParserException,
                                                           java.io.IOException
        Throws:
        DroolsParserException
        java.io.IOException
      • parse

        public org.drools.drl.ast.descr.PackageDescr parse​(boolean isEditor,
                                                           org.kie.api.io.Resource resource,
                                                           java.io.InputStream is)
                                                    throws DroolsParserException,
                                                           java.io.IOException
        Throws:
        DroolsParserException
        java.io.IOException
      • getExpandedDRL

        public java.lang.String getExpandedDRL​(java.lang.String source,
                                               java.io.Reader dsl)
                                        throws DroolsParserException
        This will expand the DRL. useful for debugging.
        Parameters:
        source - - the source which use a DSL
        dsl - - the DSL itself.
        Throws:
        DroolsParserException - If unable to expand in any way.
      • getExpandedDRL

        public java.lang.String getExpandedDRL​(java.lang.String source,
                                               DefaultExpanderResolver resolver)
                                        throws DroolsParserException
        This will expand the DRL using the given expander resolver. useful for debugging.
        Parameters:
        source - - the source which use a DSL
        resolver - - the DSL expander resolver itself.
        Throws:
        DroolsParserException - If unable to expand in any way.
      • hasErrors

        public boolean hasErrors()
        Returns:
        true if there were parser errors.
      • getErrors

        public java.util.List<DroolsError> getErrors()
        Returns:
        a list of errors found while parsing. DroolsError: either ParserError, or ExpanderException
      • getLocation

        public Location getLocation()
      • getEditorSentences

        public java.util.List<DroolsSentence> getEditorSentences()