[jboss-svn-commits] JBL Code SVN: r14619 - labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sun Aug 26 22:30:29 EDT 2007


Author: mark.proctor at jboss.com
Date: 2007-08-26 22:30:28 -0400 (Sun, 26 Aug 2007)
New Revision: 14619

Modified:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooBuilder.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/RuleTerminalNode.java
Log:
JBRULES-1137 Rules are not removed when they have shared nodes


Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooBuilder.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooBuilder.java	2007-08-27 02:30:24 UTC (rev 14618)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooBuilder.java	2007-08-27 02:30:28 UTC (rev 14619)
@@ -209,14 +209,14 @@
     }
     
     public BaseNode[] getTerminalNodes(final Rule rule) {
-        return (BaseNode[]) this.rules.remove( rule );
+        return (BaseNode[]) this.rules.get( rule );
     }
 
     public void removeRule(final Rule rule) {
         // reset working memories for potential propagation
         this.workingMemories = (InternalWorkingMemory[]) this.ruleBase.getWorkingMemories();
 
-        final Object object = this.rules.get( rule );
+        final Object object = this.rules.remove( rule );
 
         final BaseNode[] nodes = (BaseNode[]) object;
         for ( int i = 0, length = nodes.length; i < length; i++ ) {

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/RuleTerminalNode.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/RuleTerminalNode.java	2007-08-27 02:30:24 UTC (rev 14618)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/RuleTerminalNode.java	2007-08-27 02:30:28 UTC (rev 14619)
@@ -455,6 +455,8 @@
             workingMemory.executeQueuedActions();
         }
 
+        removeShare();
+        
         this.tupleSource.remove( this,
                                  workingMemories );
     }




More information about the jboss-svn-commits mailing list