[jboss-svn-commits] JBL Code SVN: r19236 - 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
Wed Mar 26 08:10:04 EDT 2008


Author: mark.proctor at jboss.com
Date: 2008-03-26 08:10:03 -0400 (Wed, 26 Mar 2008)
New Revision: 19236

Modified:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/PropagationQueuingNode.java
Log:
JBRULES-1520 RightTuple merge for asynchronous Rete propagations
-PropagationQueuingNode now compiles

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/PropagationQueuingNode.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/PropagationQueuingNode.java	2008-03-26 12:08:15 UTC (rev 19235)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/PropagationQueuingNode.java	2008-03-26 12:10:03 UTC (rev 19236)
@@ -379,10 +379,20 @@
 
         public void execute(final ObjectSinkPropagator sink,
                             final InternalWorkingMemory workingMemory) {
-            sink.propagateRetractObject( this.handle,
-                                         this.context,
-                                         workingMemory,
-                                         true );
+            
+            for ( RightTuple rightTuple = this.handle.getRightTuple(); rightTuple != null; rightTuple = (RightTuple) rightTuple.getHandleNext() ) {
+                rightTuple.getRightTupleSink().retractRightTuple( rightTuple,
+                                                                  context,
+                                                                  workingMemory );
+            }
+            this.handle.setRightTuple( null );
+
+            for ( LeftTuple leftTuple = this.handle.getLeftTuple(); leftTuple != null; leftTuple = (LeftTuple) leftTuple.getLeftParentNext() ) {
+                leftTuple.getSink().retractLeftTuple( leftTuple,
+                                                      context,
+                                                      workingMemory );
+            }
+            this.handle.setLeftTuple( null );
         }
     }
 




More information about the jboss-svn-commits mailing list