[jboss-svn-commits] JBL Code SVN: r19263 - labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Mar 27 09:06:56 EDT 2008


Author: mingjin
Date: 2008-03-27 09:06:55 -0400 (Thu, 27 Mar 2008)
New Revision: 19263

Modified:
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/DialectData.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/DialectDatas.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/JavaDialectData.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/MVELDialectData.java
Log:
JBRULES-1535 User provided packages with the same name were merged/changed after calling RuleBase.addPackage
- DialectData: added setDialectDatas method.
- DialectDatas: call setDialectDatas(..) on new DialectData.
- JavaDialectData: implemented setDialectDatas(..).
- MVELDialectData: implemented dummy setDialectDatas(..).

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/DialectData.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/DialectData.java	2008-03-27 02:01:42 UTC (rev 19262)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/DialectData.java	2008-03-27 13:06:55 UTC (rev 19263)
@@ -1,6 +1,6 @@
 package org.drools.rule;
 
-public interface DialectData {
+public interface DialectData extends Cloneable {
     public void removeRule(Package pkg, Rule rule);
 
     public void removeFunction(Package pkg, Function function);
@@ -12,4 +12,6 @@
     public void reload();
 
     public DialectData clone();
+
+    public void setDialectDatas(DialectDatas datas);
 }

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/DialectDatas.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/DialectDatas.java	2008-03-27 02:01:42 UTC (rev 19262)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/DialectDatas.java	2008-03-27 13:06:55 UTC (rev 19263)
@@ -92,7 +92,10 @@
         for (Entry<String, DialectData> entry : newDatas.dialects.entrySet()) {
             DialectData data = this.dialects.get( entry.getKey() );
             if (data == null) {
-                this.dialects.put(entry.getKey(), entry.getValue().clone());
+                DialectData dialectData = entry.getValue().clone();
+                if (dialectData instanceof JavaDialectData)
+                    ((JavaDialectData)dialectData).setDialectDatas(this);
+                this.dialects.put(entry.getKey(), dialectData);
             } else {
                 data.merge( entry.getValue() );
             }

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/JavaDialectData.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/JavaDialectData.java	2008-03-27 02:01:42 UTC (rev 19262)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/JavaDialectData.java	2008-03-27 13:06:55 UTC (rev 19263)
@@ -102,6 +102,10 @@
         return cloneOne;
     }
 
+    public void setDialectDatas(DialectDatas datas) {
+        this.datas  = datas;
+    }
+
     public boolean isDirty() {
         return this.dirty;
     }

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/MVELDialectData.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/MVELDialectData.java	2008-03-27 02:01:42 UTC (rev 19262)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/rule/MVELDialectData.java	2008-03-27 13:06:55 UTC (rev 19263)
@@ -32,6 +32,9 @@
         return clone;
     }
 
+    public void setDialectDatas(DialectDatas datas) {
+    }
+
     public MapFunctionResolverFactory getFunctionFactory() {
 		return this.functionFactory;
 	}
@@ -53,7 +56,7 @@
 	}
 
 	public void merge(DialectData newData) {
-	}
+    }
 
 	public void reload() {
 	}




More information about the jboss-svn-commits mailing list