[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