From: <jbo...@li...> - 2006-04-20 23:39:16
|
Author: mar...@jb... Date: 2006-04-20 19:39:13 -0400 (Thu, 20 Apr 2006) New Revision: 3866 Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilder.java Log: JBRULES-61 XML Bindings -PackageBulder now has addPackageFromXml Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilder.java =================================================================== --- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilder.java 2006-04-20 23:33:30 UTC (rev 3865) +++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilder.java 2006-04-20 23:39:13 UTC (rev 3866) @@ -41,6 +41,8 @@ import org.drools.semantics.java.PackageStore; import org.drools.semantics.java.RuleBuilder; import org.drools.spi.TypeResolver; +import org.drools.xml.XmlPackageReader; +import org.xml.sax.SAXException; public class PackageBuilder { private JavaCompiler compiler; @@ -99,7 +101,25 @@ this.results.addAll( parser.getErrors() ); addPackage( pkg ); } + + /** + * Load a rule package from XML source. + * @param reader + * @throws DroolsParserException + * @throws IOException + */ + public void addPackageFromXml(Reader reader) throws DroolsParserException, IOException { + XmlPackageReader xmlReader = new XmlPackageReader(); + try { + xmlReader.read( reader ); + } catch ( SAXException e ) { + throw new DroolsParserException( e.getCause() ); + } + + addPackage( xmlReader.getPackageDescr() ); + } + /** * Load a rule package from DRL source using the supplied DSL configuration. * @param source The source of the rules. |