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

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Sep 18 09:40:09 EDT 2006


Author: tirelli
Date: 2006-09-18 09:40:02 -0400 (Mon, 18 Sep 2006)
New Revision: 6269

Modified:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractWorkingMemory.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InternalWorkingMemory.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/AccumulateNode.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/CompositeTupleSinkAdapter.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooWorkingMemory.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/SingleTupleSinkAdapter.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/TupleSinkPropagator.java
Log:
JBRULES-484: fixing compilation problems

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractWorkingMemory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractWorkingMemory.java	2006-09-18 13:35:47 UTC (rev 6268)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractWorkingMemory.java	2006-09-18 13:40:02 UTC (rev 6269)
@@ -94,6 +94,7 @@
     protected GlobalResolver                  globalResolver;
 
     protected static final Object             NULL                                          = new Serializable() {
+                                                                                                private static final long serialVersionUID = -6666310064415179894L;
                                                                                             };
 
     /** The eventSupport */
@@ -243,7 +244,7 @@
         if ( value == null ) {
             return;
         }
-        
+
         try {
             lock.lock();
             // Make sure the global has been declared in the RuleBase
@@ -262,7 +263,7 @@
             lock.unlock();
         }
     }
-    
+
     public void setGlobalResolver(GlobalResolver globalResolver) {
         this.globalResolver = globalResolver;
     }

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InternalWorkingMemory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InternalWorkingMemory.java	2006-09-18 13:35:47 UTC (rev 6268)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InternalWorkingMemory.java	2006-09-18 13:40:02 UTC (rev 6269)
@@ -4,6 +4,7 @@
 
 import org.drools.WorkingMemory;
 import org.drools.event.AgendaEventSupport;
+import org.drools.spi.FactHandleFactory;
 
 public interface InternalWorkingMemory extends WorkingMemory {
     public long getId();
@@ -20,6 +21,8 @@
     
     public TruthMaintenanceSystem getTruthMaintenanceSystem();
     
-    public void propagateQueuedActions();    
+    public void propagateQueuedActions();
+
+    public FactHandleFactory getFactHandleFactory();    
 }
 

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/AccumulateNode.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/AccumulateNode.java	2006-09-18 13:35:47 UTC (rev 6268)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/AccumulateNode.java	2006-09-18 13:40:02 UTC (rev 6269)
@@ -28,7 +28,6 @@
 import org.drools.rule.Accumulate;
 import org.drools.spi.FieldConstraint;
 import org.drools.spi.PropagationContext;
-import org.drools.spi.Tuple;
 import org.drools.util.LinkedList;
 import org.drools.util.LinkedListEntry;
 
@@ -111,7 +110,7 @@
      */
     public void assertTuple(ReteTuple leftTuple,
                             PropagationContext context,
-                            ReteooWorkingMemory workingMemory) {
+                            InternalWorkingMemory workingMemory) {
 
         final BetaMemory memory = (BetaMemory) workingMemory.getNodeMemory( this );
 
@@ -173,7 +172,7 @@
      */
     public void modifyTuple(ReteTuple leftTuple,
                             PropagationContext context,
-                            ReteooWorkingMemory workingMemory) {
+                            InternalWorkingMemory workingMemory) {
 
         this.retractTuple( leftTuple,
                            context,
@@ -193,7 +192,7 @@
      */
     public void retractTuple(ReteTuple leftTuple,
                              PropagationContext context,
-                             ReteooWorkingMemory workingMemory) {
+                             InternalWorkingMemory workingMemory) {
         final BetaMemory memory = (BetaMemory) workingMemory.getNodeMemory( this );
         memory.remove( workingMemory,
                        leftTuple );
@@ -211,9 +210,10 @@
         // if tuple was propagated
         if ( (leftTuple.getChildEntries() != null) && (leftTuple.getChildEntries().size() > 0) ) {
             // Need to store the accumulate result object for later disposal
-            InternalFactHandle lastHandle = ((ReteTuple) ((LinkedListEntry)leftTuple.getChildEntries().getFirst()).getObject()).getLastHandle();
+            InternalFactHandle lastHandle = ((ReteTuple) ((LinkedListEntry) leftTuple.getChildEntries().getFirst()).getObject()).getLastHandle();
 
-            leftTuple.retractChildEntries( context, workingMemory );
+            leftTuple.retractChildEntries( context,
+                                           workingMemory );
 
             // Destroying the acumulate result object 
             workingMemory.getFactHandleFactory().destroyFactHandle( lastHandle );
@@ -234,8 +234,8 @@
                              InternalWorkingMemory workingMemory) {
 
         final BetaMemory memory = (BetaMemory) workingMemory.getNodeMemory( this );
-        ObjectMatches objectMatches = memory.add( workingMemory,
-                                                  handle );
+        memory.add( workingMemory,
+                    handle );
 
         final BetaNodeConstraints binder = getJoinNodeBinder();
         for ( final Iterator it = memory.leftTupleIterator( workingMemory,
@@ -313,7 +313,7 @@
     /**
      * @inheritDoc
      */
-    public List getPropagatedTuples(ReteooWorkingMemory workingMemory,
+    public List getPropagatedTuples(InternalWorkingMemory workingMemory,
                                     TupleSink sink) {
         final BetaMemory memory = (BetaMemory) workingMemory.getNodeMemory( this );
         //final int index = this.getTupleSinks().indexOf( sink );
@@ -340,11 +340,9 @@
 
         for ( final Iterator it = memory.getLeftTupleMemory().iterator(); it.hasNext(); ) {
             final ReteTuple leftTuple = (ReteTuple) it.next();
-            final ReteTuple child = new ReteTuple( leftTuple );
-            leftTuple.addLinkedTuple( child );
-            ((TupleSink) getTupleSinks().get( getTupleSinks().size() - 1 )).assertTuple( child,
-                                                                                         context,
-                                                                                         workingMemory );
+            this.sink.propagateNewTupleSink( (ReteTuple) leftTuple.getChildEntries().getFirst(),
+                                             context,
+                                             workingMemory );
         }
         this.attachingNewNode = false;
     }

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/CompositeTupleSinkAdapter.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/CompositeTupleSinkAdapter.java	2006-09-18 13:35:47 UTC (rev 6268)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/CompositeTupleSinkAdapter.java	2006-09-18 13:40:02 UTC (rev 6269)
@@ -62,7 +62,7 @@
     public void propagateAssertTuple(final ReteTuple tuple,
                                      final InternalFactHandle handle,
                                      final PropagationContext context,
-                                     final ReteooWorkingMemory workingMemory) {
+                                     final InternalWorkingMemory workingMemory) {
         for ( TupleSinkNode sink = this.sinks.getFirst(); sink != null; sink = sink.getNextTupleSinkNode() ) {
             final ReteTuple joined = new ReteTuple( tuple,
                                                     handle,
@@ -111,6 +111,18 @@
                            workingMemory );
     }
 
+    public void propagateNewTupleSink(ReteTuple tuple,
+                                      PropagationContext context,
+                                      InternalWorkingMemory workingMemory) {
+
+        final TupleSink sink = sinks.getLast();
+        ReteTuple child = new ReteTuple( tuple,
+                                         sink );
+        tuple.addChildEntry( child );
+        child.assertTuple( context,
+                           workingMemory );
+    }
+
     public void propagateNewTupleSink(InternalFactHandle handle,
                                       LinkedList list,
                                       PropagationContext context,

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooWorkingMemory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooWorkingMemory.java	2006-09-18 13:35:47 UTC (rev 6268)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooWorkingMemory.java	2006-09-18 13:40:02 UTC (rev 6269)
@@ -31,7 +31,6 @@
 import org.drools.common.InternalFactHandle;
 import org.drools.common.InternalRuleBase;
 import org.drools.common.PropagationContextImpl;
-import org.drools.common.AbstractWorkingMemory.WorkingMemoryAction;
 import org.drools.rule.Query;
 import org.drools.rule.Rule;
 import org.drools.spi.Activation;

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/SingleTupleSinkAdapter.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/SingleTupleSinkAdapter.java	2006-09-18 13:35:47 UTC (rev 6268)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/SingleTupleSinkAdapter.java	2006-09-18 13:40:02 UTC (rev 6269)
@@ -62,7 +62,7 @@
     public void propagateAssertTuple(final ReteTuple tuple,
                                      final InternalFactHandle handle,
                                      final PropagationContext context,
-                                     final ReteooWorkingMemory workingMemory) {
+                                     final InternalWorkingMemory workingMemory) {
         final ReteTuple joined = new ReteTuple( tuple,
                                                 handle,
                                                 sink );
@@ -91,6 +91,13 @@
 
     }
 
+    public void propagateNewTupleSink(ReteTuple tuple,
+                                      PropagationContext context,
+                                      InternalWorkingMemory workingMemory) {
+        // do nothing, as we have no new tuple sinks
+        throw new RuntimeException( "This is a bug you cannot update new data through this single sink adapter" );
+    }
+
     public List getPropagatedTuples(final Map memory,
                                     final InternalWorkingMemory workingMemory,
                                     final TupleSink sink) {

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/TupleSinkPropagator.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/TupleSinkPropagator.java	2006-09-18 13:35:47 UTC (rev 6268)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/TupleSinkPropagator.java	2006-09-18 13:40:02 UTC (rev 6269)
@@ -14,11 +14,11 @@
                                      TupleMatch tupleMatch,
                                      PropagationContext context,
                                      InternalWorkingMemory workingMemory);
-    
+
     public void propagateAssertTuple(ReteTuple tuple,
                                      PropagationContext context,
-                                     InternalWorkingMemory workingMemory);    
-    
+                                     InternalWorkingMemory workingMemory);
+
     /**
      * Propagates a new tuple adding the given fact handle to the tuple 
      * before propagating.
@@ -29,30 +29,33 @@
      * @param workingMemory
      */
     public void propagateAssertTuple(final ReteTuple tuple,
-                                        final InternalFactHandle handle,
-                                        final PropagationContext context,
-                                        final ReteooWorkingMemory workingMemory);
-    
+                                     final InternalFactHandle handle,
+                                     final PropagationContext context,
+                                     final InternalWorkingMemory workingMemory);
+
     public LinkedList createAndAssertTuple(InternalFactHandle handle,
-                                     PropagationContext context,
-                                     InternalWorkingMemory workingMemory);    
-    
+                                           PropagationContext context,
+                                           InternalWorkingMemory workingMemory);
 
     public TupleSink[] getSinks();
 
     public void propagateNewTupleSink(TupleMatch tupleMatch,
                                       PropagationContext context,
                                       InternalWorkingMemory workingMemory);
-    
+
     public void propagateNewTupleSink(InternalFactHandle handle,
                                       LinkedList list,
                                       PropagationContext context,
-                                      InternalWorkingMemory workingMemory);    
-    
+                                      InternalWorkingMemory workingMemory);
+
+    public void propagateNewTupleSink(ReteTuple tuple,
+                                      PropagationContext context,
+                                      InternalWorkingMemory workingMemory);
+
     public List getPropagatedTuples(final Map memory,
                                     final InternalWorkingMemory workingMemory,
                                     final TupleSink sink);
-    
+
     public int size();
 
 }




More information about the jboss-svn-commits mailing list