[jboss-svn-commits] JBL Code SVN: r13394 - in labs/jbossrules/trunk/drools-jbrms/src: test/java/org/drools/brms/server/builder and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Jul 12 03:11:41 EDT 2007
Author: michael.neale at jboss.com
Date: 2007-07-12 03:11:41 -0400 (Thu, 12 Jul 2007)
New Revision: 13394
Modified:
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/BRMSPackageBuilder.java
labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/BRMSPackageBuilderTest.java
Log:
optional ability to set BRMS compiler to ECLIPSE (default is JANINO)
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/BRMSPackageBuilder.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/BRMSPackageBuilder.java 2007-07-12 06:51:42 UTC (rev 13393)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/builder/BRMSPackageBuilder.java 2007-07-12 07:11:41 UTC (rev 13394)
@@ -51,6 +51,9 @@
private List<DSLMappingFile> dslFiles;
private DefaultExpander expander;
+ /** the default compiler. This is nominally JANINO but can be overridden by setting drools.compiler to ECLIPSE */
+ static int COMPILER = getPreferredBRMSCompiler();
+
/**
* This will give you a fresh new PackageBuilder
* using the given classpath.
@@ -80,13 +83,26 @@
PackageBuilderConfiguration config = new PackageBuilderConfiguration();
config.setClassLoader( loader );
- config.setCompiler( PackageBuilderConfiguration.JANINO );
+ config.setCompiler( COMPILER );
return new BRMSPackageBuilder( config );
}
/**
+ * This will return the preferred compiler, according to the System property
+ * drools.compiler (JANINO|ECLIPSE) - default is JANINO due to classpath issues
+ * mainly in tomcat, grrr...
+ */
+ static int getPreferredBRMSCompiler() {
+ if (System.getProperty( "drools.compiler", "JANINO" ).equals( "ECLIPSE" )) {
+ return PackageBuilderConfiguration.ECLIPSE;
+ } else {
+ return PackageBuilderConfiguration.JANINO;
+ }
+ }
+
+ /**
* In the BRMS you should not need to use this, use the getInstance factory method instead.
* @param config
*/
Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/BRMSPackageBuilderTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/BRMSPackageBuilderTest.java 2007-07-12 06:51:42 UTC (rev 13393)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/builder/BRMSPackageBuilderTest.java 2007-07-12 07:11:41 UTC (rev 13394)
@@ -105,6 +105,14 @@
assertNotNull(builder.getDSLExpander());
}
+ public void testDefaultCompiler() {
+ assertEquals(PackageBuilderConfiguration.JANINO, BRMSPackageBuilder.COMPILER);
+ assertEquals(PackageBuilderConfiguration.JANINO, BRMSPackageBuilder.getPreferredBRMSCompiler());
+ System.setProperty( "drools.compiler", "ECLIPSE" );
+ assertEquals(PackageBuilderConfiguration.ECLIPSE, BRMSPackageBuilder.getPreferredBRMSCompiler());
+ System.setProperty( "drools.compiler", "" );
+ assertEquals(PackageBuilderConfiguration.JANINO, BRMSPackageBuilder.getPreferredBRMSCompiler());
+ }
More information about the jboss-svn-commits
mailing list