[jboss-svn-commits] JBL Code SVN: r14323 - in labs/jbossrules/trunk/drools-compiler/src: test/java/org/drools/compiler and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Aug 16 15:16:17 EDT 2007
Author: tirelli
Date: 2007-08-16 15:16:17 -0400 (Thu, 16 Aug 2007)
New Revision: 14323
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderConfigurationTest.java
Log:
JBRULES-1094: fixing bug
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java 2007-08-16 18:46:43 UTC (rev 14322)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/compiler/PackageBuilderConfiguration.java 2007-08-16 19:16:17 UTC (rev 14323)
@@ -16,8 +16,6 @@
* limitations under the License.
*/
-import java.lang.reflect.Constructor;
-import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
@@ -47,22 +45,20 @@
*/
public class PackageBuilderConfiguration {
+ private static final String ACCUMULATE_FUNCTION_PREFIX = "drools.accumulate.function.";
- private static final String ACCUMULATE_FUNCTION_PREFIX = "drools.accumulate.function.";
+ private Map dialects;
- private Map dialects;
-
- private DialectRegistry dialectRegistry;
+ private DialectRegistry dialectRegistry;
- private String defaultDialect;
+ private String defaultDialect;
- private ClassLoader classLoader;
+ private ClassLoader classLoader;
+ private ChainedProperties chainedProperties;
- private ChainedProperties chainedProperties;
+ private Map accumulateFunctions;
- private Map accumulateFunctions;
-
/**
* Programmatic properties file, added with lease precedence
* @param properties
@@ -103,19 +99,19 @@
if ( properties != null ) {
this.chainedProperties.addProperties( properties );
- }
+ }
this.dialects = new HashMap();
this.chainedProperties.mapStartsWith( this.dialects,
"drools.dialect",
false );
setDefaultDialect( (String) this.dialects.remove( "drools.dialect.default" ) );
-
- this.dialectRegistry = buildDialectRegistry( );
+ this.dialectRegistry = buildDialectRegistry();
+
buildAccumulateFunctionsMap();
}
-
+
public ChainedProperties getChainedProperties() {
return this.chainedProperties;
}
@@ -130,17 +126,18 @@
String dialectClass = (String) entry.getValue();
try {
Class cls = classLoader.loadClass( dialectClass );
- DialectConfiguration dialectConf = ( DialectConfiguration ) cls.newInstance();
+ DialectConfiguration dialectConf = (DialectConfiguration) cls.newInstance();
dialectConf.init( this );
registry.addDialectConfiguration( dialectName,
- dialectConf );
+ dialectConf );
} catch ( Exception e ) {
- throw new RuntimeDroolsException( "Unable to load dialect '" + dialectClass + ":" + dialectName + "'", e );
+ throw new RuntimeDroolsException( "Unable to load dialect '" + dialectClass + ":" + dialectName + "'",
+ e );
}
}
return registry;
}
-
+
public DialectRegistry getDialectRegistry() {
return this.dialectRegistry;
}
@@ -152,14 +149,15 @@
public void setDefaultDialect(String defaultDialect) {
this.defaultDialect = defaultDialect;
}
-
+
public DialectConfiguration getDialectConfiguration(String name) {
- return ( DialectConfiguration ) this.dialectRegistry.getDialectConfiguration( name );
+ return (DialectConfiguration) this.dialectRegistry.getDialectConfiguration( name );
}
-
- public void setDialectConfiguration(String name, DialectConfiguration configuration) {
- this.dialects.put( name,
- configuration );
+
+ public void setDialectConfiguration(String name,
+ DialectConfiguration configuration) {
+ this.dialectRegistry.addDialectConfiguration( name,
+ configuration );
}
public ClassLoader getClassLoader() {
@@ -183,10 +181,10 @@
Map.Entry entry = (Map.Entry) it.next();
String identifier = ((String) entry.getKey()).trim().substring( ACCUMULATE_FUNCTION_PREFIX.length() );
this.accumulateFunctions.put( identifier,
- entry.getValue() );
+ entry.getValue() );
}
}
-
+
public Map getAccumulateFunctionsMap() {
return Collections.unmodifiableMap( this.accumulateFunctions );
}
@@ -194,13 +192,13 @@
public void addAccumulateFunction(String identifier,
String className) {
this.accumulateFunctions.put( identifier,
- className );
+ className );
}
public void addAccumulateFunction(String identifier,
Class clazz) {
this.accumulateFunctions.put( identifier,
- clazz.getName() );
+ clazz.getName() );
}
public AccumulateFunction getAccumulateFunction(String identifier) {
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderConfigurationTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderConfigurationTest.java 2007-08-16 18:46:43 UTC (rev 14322)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/compiler/PackageBuilderConfigurationTest.java 2007-08-16 19:16:17 UTC (rev 14323)
@@ -56,8 +56,8 @@
ChainedProperties chainedProperties = new ChainedProperties( null,
"packagebuilder.conf",
true );
- System.out.println( chainedProperties.getProperty( "drools.dialect.java.compiler",
- null ) );
+ //System.out.println( chainedProperties.getProperty( "drools.dialect.java.compiler",
+ // null ) );
assertNotNull( chainedProperties.getProperty( "drools.dialect.java.compiler",
null ) );
@@ -66,8 +66,8 @@
chainedProperties = new ChainedProperties( null,
"packagebuilder.conf",
false );
- System.out.println( chainedProperties.getProperty( "drools.dialect.java.compiler",
- null ) );
+ //System.out.println( chainedProperties.getProperty( "drools.dialect.java.compiler",
+ // null ) );
assertNull( chainedProperties.getProperty( "drools.dialect.java.compiler",
null ) );
@@ -76,8 +76,8 @@
chainedProperties = new ChainedProperties( null,
"packagebuilder.conf",
true );
- System.out.println( chainedProperties.getProperty( "drools.dialect.java.compiler",
- null ) );
+ //System.out.println( chainedProperties.getProperty( "drools.dialect.java.compiler",
+ // null ) );
assertNotNull( chainedProperties.getProperty( "drools.dialect.java.compiler",
null ) );
}
@@ -136,6 +136,28 @@
cfg2.getDefaultDialect().getClass() );
}
+ public void testProgramaticProperties2() {
+ JavaDialectConfiguration javaConf = new JavaDialectConfiguration();
+ javaConf.setCompiler( JavaDialectConfiguration.ECLIPSE );
+ PackageBuilderConfiguration cfg = new PackageBuilderConfiguration();
+ cfg.setDialectConfiguration( "java", javaConf );
+ JavaDialectConfiguration javaConf2 = (JavaDialectConfiguration) cfg.getDialectConfiguration( "java" );
+ assertSame( javaConf,
+ javaConf2 );
+ assertEquals( JavaDialectConfiguration.ECLIPSE,
+ javaConf2.getCompiler() );
+
+ javaConf = new JavaDialectConfiguration();
+ javaConf.setCompiler( JavaDialectConfiguration.JANINO );
+ cfg = new PackageBuilderConfiguration();
+ cfg.setDialectConfiguration( "java", javaConf );
+ javaConf2 = (JavaDialectConfiguration) cfg.getDialectConfiguration( "java" );
+ assertSame( javaConf,
+ javaConf2 );
+ assertEquals( JavaDialectConfiguration.JANINO,
+ javaConf2.getCompiler() );
+ }
+
public void testMockDialect() {
Package pkg = new Package( "org.pkg1" );
More information about the jboss-svn-commits
mailing list