[jboss-svn-commits] JBL Code SVN: r23891 - in labs/jbossrules/trunk: drools-compiler/src/test/java/org/drools/testframework and 6 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sun Nov 16 23:53:32 EST 2008


Author: mark.proctor at jboss.com
Date: 2008-11-16 23:53:31 -0500 (Sun, 16 Nov 2008)
New Revision: 23891

Added:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/SerializableAgendaGroup.java
Removed:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/knowlegebase/impl/KnowledgeRuntimeEventImpl.java
Modified:
   labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/ActivationEvent.java
   labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/AgendaEventListener.java
   labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/AgendaGroupEvent.java
   labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/DefaultAgendaEventListener.java
   labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/DefaultWorkingMemoryEventListener.java
   labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/WorkingMemoryEvent.java
   labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/WorkingMemoryEventListener.java
   labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/MockWorkingMemory.java
   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/event/process/impl/ProcessEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationCancelledEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationCreatedEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AfterActivationFiredEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupPoppedEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupPushedEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/BeforeActivationFiredEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectInsertedEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectRetractedEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectUpdatedEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/SerializableActivation.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/WorkingMemoryEventImpl.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/impl/StatefulKnowledgeSessionImpl.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/event/rule/AgendaEventSupportTest.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/event/rule/WorkingMemoryEventSupportTest.java
Log:
JBRULES-1734 Drools API 
-Made events consistent with KnowledgeRuntime

Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/ActivationEvent.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/ActivationEvent.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/ActivationEvent.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -16,10 +16,11 @@
  * limitations under the License.
  */
 
+import org.drools.event.KnowledgeRuntimeEvent;
 import org.drools.runtime.rule.Activation;
 
 
-public interface ActivationEvent {
+public interface ActivationEvent extends KnowledgeRuntimeEvent {
 
     public Activation getActivation();
 

Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/AgendaEventListener.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/AgendaEventListener.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/AgendaEventListener.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -18,27 +18,19 @@
 
 import java.util.EventListener;
 
-import org.drools.runtime.rule.WorkingMemory;
 
-
 public interface AgendaEventListener
     extends
     EventListener {
-    void activationCreated(ActivationCreatedEvent event,
-                           WorkingMemory workingMemory);
+    void activationCreated(ActivationCreatedEvent event);
 
-    void activationCancelled(ActivationCancelledEvent event,
-                             WorkingMemory workingMemory);
+    void activationCancelled(ActivationCancelledEvent event);
 
-    void beforeActivationFired(BeforeActivationFiredEvent event,
-                               WorkingMemory workingMemory);
+    void beforeActivationFired(BeforeActivationFiredEvent event);
 
-    void afterActivationFired(AfterActivationFiredEvent event,
-                              WorkingMemory workingMemory);
+    void afterActivationFired(AfterActivationFiredEvent event);
 
-    void agendaGroupPopped(AgendaGroupPoppedEvent event,
-                           WorkingMemory workingMemory);
+    void agendaGroupPopped(AgendaGroupPoppedEvent event);
 
-    void agendaGroupPushed(AgendaGroupPushedEvent event,
-                           WorkingMemory workingMemory);
+    void agendaGroupPushed(AgendaGroupPushedEvent event);
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/AgendaGroupEvent.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/AgendaGroupEvent.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/AgendaGroupEvent.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -18,9 +18,10 @@
 
 import java.util.EventObject;
 
+import org.drools.event.KnowledgeRuntimeEvent;
 import org.drools.runtime.rule.AgendaGroup;
 
-public interface AgendaGroupEvent {
+public interface AgendaGroupEvent extends KnowledgeRuntimeEvent  {
 
     public AgendaGroup getAgendaGroup();
 

Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/DefaultAgendaEventListener.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/DefaultAgendaEventListener.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/DefaultAgendaEventListener.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -1,38 +1,33 @@
 package org.drools.event.rule;
 
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.rule.WorkingMemory;
 
 public class DefaultAgendaEventListener
     implements
     AgendaEventListener {
 
-    public void activationCancelled(ActivationCancelledEvent event,
-                                    WorkingMemory workingMemory) {
+    public void activationCancelled(ActivationCancelledEvent event) {
         // intentionally left blank
     }
 
-    public void activationCreated(ActivationCreatedEvent event,
-                                  WorkingMemory workingMemory) {
+    public void activationCreated(ActivationCreatedEvent event) {
         // intentionally left blank
     }
 
-    public void afterActivationFired(AfterActivationFiredEvent event,
-                                     WorkingMemory workingMemory) {
+    public void afterActivationFired(AfterActivationFiredEvent event) {
         // intentionally left blank
     }
 
-    public void agendaGroupPopped(AgendaGroupPoppedEvent event,
-                                  WorkingMemory workingMemory) {
+    public void agendaGroupPopped(AgendaGroupPoppedEvent event) {
         // intentionally left blank
     }
 
-    public void agendaGroupPushed(AgendaGroupPushedEvent event,
-                                  WorkingMemory workingMemory) {
+    public void agendaGroupPushed(AgendaGroupPushedEvent event) {
         // intentionally left blank
     }
 
-    public void beforeActivationFired(BeforeActivationFiredEvent event,
-                                      WorkingMemory workingMemory) {
+    public void beforeActivationFired(BeforeActivationFiredEvent event) {
         // intentionally left blank
     }
 

Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/DefaultWorkingMemoryEventListener.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/DefaultWorkingMemoryEventListener.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/DefaultWorkingMemoryEventListener.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -1,5 +1,7 @@
 package org.drools.event.rule;
 
+import org.drools.runtime.KnowledgeRuntime;
+
 public class DefaultWorkingMemoryEventListener
     implements
     WorkingMemoryEventListener {

Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/WorkingMemoryEvent.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/WorkingMemoryEvent.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/WorkingMemoryEvent.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -1,14 +1,9 @@
 package org.drools.event.rule;
 
+import org.drools.event.KnowledgeRuntimeEvent;
 import org.drools.runtime.rule.PropagationContext;
 import org.drools.runtime.rule.WorkingMemory;
 
-public interface WorkingMemoryEvent {
-    
-    /**
-     * This method returns null after it is Serialized
-     */    
-    public WorkingMemory getWorkingMemory();
-    
+public interface WorkingMemoryEvent extends KnowledgeRuntimeEvent {        
     public PropagationContext getPropagationContext();
 }

Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/WorkingMemoryEventListener.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/WorkingMemoryEventListener.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/event/rule/WorkingMemoryEventListener.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -18,6 +18,8 @@
 
 import java.util.EventListener;
 
+import org.drools.runtime.KnowledgeRuntime;
+
 public interface WorkingMemoryEventListener
     extends
     EventListener {

Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/MockWorkingMemory.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/MockWorkingMemory.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/testframework/MockWorkingMemory.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -43,6 +43,7 @@
 import org.drools.reteoo.PartitionTaskManager;
 import org.drools.rule.Rule;
 import org.drools.rule.TimeMachine;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.spi.Activation;
 import org.drools.spi.AgendaFilter;
 import org.drools.spi.AsyncExceptionHandler;
@@ -491,4 +492,14 @@
         
     }
 
+    public KnowledgeRuntime getKnowledgeRuntime() {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
+    public void setKnowledgeRuntime(KnowledgeRuntime kruntime) {
+        // TODO Auto-generated method stub
+        
+    }
+
 }

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	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractWorkingMemory.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -84,6 +84,7 @@
 import org.drools.rule.Rule;
 import org.drools.rule.TimeMachine;
 import org.drools.ruleflow.core.RuleFlowProcess;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.process.EventListener;
 import org.drools.runtime.process.WorkItemHandler;
 import org.drools.spi.Activation;
@@ -202,6 +203,8 @@
     protected transient AtomicReference<java.util.concurrent.ExecutorService> threadPool = new AtomicReference<java.util.concurrent.ExecutorService>();
 
     private Map<InternalFactHandle, PropagationContext>      modifyContexts;
+    
+    private KnowledgeRuntime                                 kruntime;
 
     // ------------------------------------------------------------
     // Constructors
@@ -1793,5 +1796,13 @@
         this.stopPartitionManagers();
         this.timerManager.dispose();
     }
+    
+    public void setKnowledgeRuntime(KnowledgeRuntime kruntime) {
+        this.kruntime = kruntime;
+    }
+    
+    public KnowledgeRuntime getKnowledgeRuntime() {
+        return this.kruntime;
+    }       
 
 }

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	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InternalWorkingMemory.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -15,6 +15,7 @@
 import org.drools.reteoo.PartitionTaskManager;
 import org.drools.rule.Rule;
 import org.drools.rule.TimeMachine;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.spi.Activation;
 import org.drools.spi.FactHandleFactory;
 import org.drools.spi.PropagationContext;
@@ -108,4 +109,8 @@
      * @return the PartitionTaskManager
      */
     public PartitionTaskManager getPartitionManager( RuleBasePartitionId partitionId );
+    
+    public void setKnowledgeRuntime(KnowledgeRuntime kruntime);
+    
+    public KnowledgeRuntime getKnowledgeRuntime();
 }

Deleted: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/knowlegebase/impl/KnowledgeRuntimeEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/knowlegebase/impl/KnowledgeRuntimeEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/knowlegebase/impl/KnowledgeRuntimeEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -1,30 +0,0 @@
-package org.drools.event.knowlegebase.impl;
-
-import java.io.Externalizable;
-import java.io.IOException;
-import java.io.ObjectInput;
-import java.io.ObjectOutput;
-
-import org.drools.event.KnowledgeRuntimeEvent;
-import org.drools.runtime.KnowledgeRuntime;
-
-public class KnowledgeRuntimeEventImpl implements KnowledgeRuntimeEvent, Externalizable {
-	
-    private KnowledgeRuntime knowledgeRuntime;
-    
-    public KnowledgeRuntimeEventImpl(KnowledgeRuntime knowledgeRuntime) {
-        this.knowledgeRuntime = knowledgeRuntime;
-    }
-    
-    public void writeExternal(ObjectOutput out) throws IOException {
-    } 
-    
-    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {        
-        this.knowledgeRuntime = null; // null because we don't serialise this
-    }    
-    
-    public KnowledgeRuntime getKnowledgeRuntime() {
-        return knowledgeRuntime;
-    }
-    
-}

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/process/impl/ProcessEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/process/impl/ProcessEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/process/impl/ProcessEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -1,39 +1,51 @@
 package org.drools.event.process.impl;
 
+import java.io.Externalizable;
 import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
 
 import org.drools.WorkingMemory;
-import org.drools.event.knowlegebase.impl.KnowledgeRuntimeEventImpl;
+import org.drools.common.InternalWorkingMemory;
 import org.drools.event.process.ProcessEvent;
 import org.drools.impl.StatefulKnowledgeSessionImpl;
 import org.drools.reteoo.ReteooStatefulSession;
 import org.drools.reteoo.ReteooWorkingMemory;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.process.ProcessInstance;
 
-public class ProcessEventImpl extends KnowledgeRuntimeEventImpl implements ProcessEvent {
+public class ProcessEventImpl implements ProcessEvent, Externalizable {
 
     private ProcessInstance processInstance;
+    
+    private KnowledgeRuntime kruntime;
+    
+    public ProcessEventImpl() {
+        
+    }
 
     public ProcessEventImpl(org.drools.event.ProcessEvent event, WorkingMemory workingMemory) {
-        super( new StatefulKnowledgeSessionImpl( (ReteooWorkingMemory) workingMemory ));
-        processInstance = event.getProcessInstance();
+        this.processInstance = event.getProcessInstance();
+        this.kruntime =  ((InternalWorkingMemory)workingMemory).getKnowledgeRuntime();
+        
     }
     
     public void writeExternal(ObjectOutput out) throws IOException {
-        super.writeExternal( out );
         out.writeObject( processInstance );
     }
     
     public void readExternal(ObjectInput in) throws IOException,
                                             ClassNotFoundException {
-        super.readExternal( in );
         this.processInstance = (ProcessInstance) in.readObject();
+        this.kruntime = null; // null because we don't serialise this
     }
 
 	public ProcessInstance getProcessInstance() {
 		return processInstance;
 	}
 
+    public KnowledgeRuntime getKnowledgeRuntime() {
+        return this.kruntime;
+    }
+
 }

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationCancelledEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationCancelledEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationCancelledEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -1,6 +1,7 @@
 package org.drools.event.rule.impl;
 
 import org.drools.event.rule.ActivationCancelledEvent;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.rule.Activation;
 
 /*
@@ -22,8 +23,8 @@
 
 public class ActivationCancelledEventImpl extends ActivationEventImpl implements ActivationCancelledEvent {
 
-    public ActivationCancelledEventImpl(Activation activation) {
-        super( activation );
+    public ActivationCancelledEventImpl(Activation activation, KnowledgeRuntime kruntime) {
+        super( activation, kruntime );
     }
 
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationCreatedEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationCreatedEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationCreatedEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -1,6 +1,7 @@
 package org.drools.event.rule.impl;
 
 import org.drools.event.rule.ActivationCreatedEvent;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.rule.Activation;
 
 /*
@@ -21,8 +22,8 @@
 
 public class ActivationCreatedEventImpl extends ActivationEventImpl implements ActivationCreatedEvent {
 
-    public ActivationCreatedEventImpl(Activation activation) {
-        super( activation );
+    public ActivationCreatedEventImpl(Activation activation, KnowledgeRuntime kruntime) {
+        super( activation, kruntime );
     }
 
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ActivationEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -16,21 +16,44 @@
  * limitations under the License.
  */
 
+import java.io.Externalizable;
+import java.io.IOException;
+import java.io.ObjectInput;
+import java.io.ObjectOutput;
+
 import org.drools.event.rule.ActivationCancelledEvent;
 import org.drools.event.rule.ActivationCreatedEvent;
 import org.drools.event.rule.ActivationEvent;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.rule.Activation;
 
 
-public class ActivationEventImpl implements ActivationEvent, ActivationCreatedEvent, ActivationCancelledEvent {
+public class ActivationEventImpl implements ActivationEvent, Externalizable {
     private Activation activation;
+    private KnowledgeRuntime kruntime;
     
-    public ActivationEventImpl(Activation activation) {
+    public ActivationEventImpl(Activation activation, KnowledgeRuntime kruntime) {
         this.activation = activation;
+        this.kruntime = kruntime;
     }
     
     public Activation getActivation() {
         return this.activation;
     }
 
+    public KnowledgeRuntime getKnowledgeRuntime() {
+        return this.kruntime;
+    }
+    
+    public void writeExternal(ObjectOutput out) throws IOException {
+        new SerializableActivation( this.activation ).writeExternal( out );
+    }
+
+    public void readExternal(ObjectInput in) throws IOException,
+                                            ClassNotFoundException {
+        this.activation = new SerializableActivation();
+        ((SerializableActivation)this.activation).readExternal( in );
+        this.kruntime = null; // we null this as it isn't serializable;
+    }
+
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AfterActivationFiredEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AfterActivationFiredEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AfterActivationFiredEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -1,6 +1,7 @@
 package org.drools.event.rule.impl;
 
 import org.drools.event.rule.AfterActivationFiredEvent;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.rule.Activation;
 
 /*
@@ -21,8 +22,8 @@
 
 public class AfterActivationFiredEventImpl  extends ActivationEventImpl implements AfterActivationFiredEvent {
 
-    public AfterActivationFiredEventImpl(Activation activation) {
-        super( activation );
+    public AfterActivationFiredEventImpl(Activation activation, KnowledgeRuntime kruntime) {
+        super( activation, kruntime );
     }
 
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -16,19 +16,40 @@
  * limitations under the License.
  */
 
-import java.util.EventObject;
+import java.io.Externalizable;
+import java.io.IOException;
+import java.io.ObjectInput;
+import java.io.ObjectOutput;
 
 import org.drools.event.rule.AgendaGroupEvent;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.rule.AgendaGroup;
 
-public class AgendaGroupEventImpl implements AgendaGroupEvent {
+public class AgendaGroupEventImpl implements AgendaGroupEvent, Externalizable {
     private AgendaGroup agendaGroup;
+    KnowledgeRuntime kruntime;
 
-    public AgendaGroupEventImpl(AgendaGroup agendaGroup) {
+    public AgendaGroupEventImpl(AgendaGroup agendaGroup, KnowledgeRuntime kruntime) {
         this.agendaGroup = agendaGroup;
+        this.kruntime = kruntime;
     }
 
     public AgendaGroup getAgendaGroup() {
         return agendaGroup;
-    }        
+    }
+
+    public KnowledgeRuntime getKnowledgeRuntime() {
+        return this.kruntime;
+    }
+
+    public void writeExternal(ObjectOutput out) throws IOException {
+        new SerializableAgendaGroup( this.agendaGroup ).writeExternal( out );
+    } 
+    
+    public void readExternal(ObjectInput in) throws IOException,
+                                            ClassNotFoundException {
+        this.agendaGroup = new SerializableAgendaGroup( );
+        ((SerializableAgendaGroup)this.agendaGroup).readExternal( in );
+        this.kruntime = null; // we null this as it isn't serializable; 
+    }       
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupPoppedEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupPoppedEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupPoppedEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -1,6 +1,7 @@
 package org.drools.event.rule.impl;
 
 import org.drools.event.rule.AgendaGroupPoppedEvent;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.rule.AgendaGroup;
 
 /*
@@ -21,8 +22,8 @@
 
 public class AgendaGroupPoppedEventImpl extends AgendaGroupEventImpl implements AgendaGroupPoppedEvent {
 
-    public AgendaGroupPoppedEventImpl(AgendaGroup agendaGroup) {
-        super( agendaGroup );
+    public AgendaGroupPoppedEventImpl(AgendaGroup agendaGroup, KnowledgeRuntime kruntime) {
+        super( agendaGroup, kruntime );
     }
 
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupPushedEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupPushedEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/AgendaGroupPushedEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -1,6 +1,7 @@
 package org.drools.event.rule.impl;
 
 import org.drools.event.rule.AgendaGroupPushedEvent;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.rule.AgendaGroup;
 
 /*
@@ -21,8 +22,8 @@
 
 public class AgendaGroupPushedEventImpl extends AgendaGroupEventImpl implements AgendaGroupPushedEvent {
 
-    public AgendaGroupPushedEventImpl(AgendaGroup agendaGroup) {
-        super( agendaGroup );
+    public AgendaGroupPushedEventImpl(AgendaGroup agendaGroup, KnowledgeRuntime kruntime) {
+        super( agendaGroup, kruntime );
     }
 
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/BeforeActivationFiredEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/BeforeActivationFiredEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/BeforeActivationFiredEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -1,6 +1,7 @@
 package org.drools.event.rule.impl;
 
 import org.drools.event.rule.BeforeActivationFiredEvent;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.rule.Activation;
 
 /*
@@ -22,8 +23,8 @@
 
 public class BeforeActivationFiredEventImpl extends ActivationEventImpl implements BeforeActivationFiredEvent {
 
-    public BeforeActivationFiredEventImpl(Activation activation) {
-        super( activation );
+    public BeforeActivationFiredEventImpl(Activation activation, KnowledgeRuntime kruntime) {
+        super( activation, kruntime );
     }
 
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectInsertedEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectInsertedEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectInsertedEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -4,6 +4,7 @@
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
 
+import org.drools.common.InternalWorkingMemory;
 import org.drools.event.rule.ObjectInsertedEvent;
 import org.drools.impl.StatefulKnowledgeSessionImpl;
 import org.drools.reteoo.ReteooStatefulSession;
@@ -18,7 +19,7 @@
     private Object      object;
 
     public ObjectInsertedEventImpl(org.drools.event.ObjectInsertedEvent event) {
-        super( (WorkingMemory) new StatefulKnowledgeSessionImpl( (ReteooWorkingMemory) event.getWorkingMemory() ), event.getPropagationContext() );
+        super( ((InternalWorkingMemory) event.getWorkingMemory() ).getKnowledgeRuntime(), event.getPropagationContext() );
         factHandle = event.getFactHandle();
         object = event.getObject();
     }

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectRetractedEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectRetractedEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectRetractedEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -4,6 +4,7 @@
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
 
+import org.drools.common.InternalWorkingMemory;
 import org.drools.event.rule.ObjectRetractedEvent;
 import org.drools.impl.StatefulKnowledgeSessionImpl;
 import org.drools.reteoo.ReteooStatefulSession;
@@ -16,7 +17,7 @@
     private Object oldbOject;
     
     public ObjectRetractedEventImpl( org.drools.event.ObjectRetractedEvent event) {
-        super( (WorkingMemory) new StatefulKnowledgeSessionImpl( (ReteooWorkingMemory) event.getWorkingMemory() ), event.getPropagationContext() );
+        super( ((InternalWorkingMemory) event.getWorkingMemory() ).getKnowledgeRuntime(), event.getPropagationContext() );
         factHandle = event.getFactHandle();
         oldbOject = event.getOldObject();
     }

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectUpdatedEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectUpdatedEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/ObjectUpdatedEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -4,6 +4,7 @@
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
 
+import org.drools.common.InternalWorkingMemory;
 import org.drools.event.rule.ObjectUpdatedEvent;
 import org.drools.impl.StatefulKnowledgeSessionImpl;
 import org.drools.reteoo.ReteooStatefulSession;
@@ -17,7 +18,7 @@
     private Object      oldObject;
     
     public ObjectUpdatedEventImpl(org.drools.event.ObjectUpdatedEvent event) {
-        super( (WorkingMemory) new StatefulKnowledgeSessionImpl( (ReteooWorkingMemory) event.getWorkingMemory() ), event.getPropagationContext() );
+        super( ((InternalWorkingMemory) event.getWorkingMemory() ).getKnowledgeRuntime(), event.getPropagationContext() );
         factHandle = event.getFactHandle();
         object = event.getObject();
         object = event.getOldObject();

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/SerializableActivation.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/SerializableActivation.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/SerializableActivation.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -15,10 +15,14 @@
     implements
     Activation,
     Externalizable {
-    private Rule                   rule;
-    private Collection<? extends FactHandle> factHandles;
-    private PropagationContext     propgationContext;
+    private Rule                              rule;
+    private Collection< ? extends FactHandle> factHandles;
+    private PropagationContext                propgationContext;
 
+    public SerializableActivation() {
+        
+    }
+    
     public SerializableActivation(Activation activation) {
         this.rule = activation.getRule();
         this.factHandles = activation.getFactHandles();
@@ -36,7 +40,7 @@
         return this.rule;
     }
 
-    public Collection<? extends FactHandle> getFactHandles() {
+    public Collection< ? extends FactHandle> getFactHandles() {
         return this.factHandles;
     }
 

Added: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/SerializableAgendaGroup.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/SerializableAgendaGroup.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/SerializableAgendaGroup.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -0,0 +1,35 @@
+package org.drools.event.rule.impl;
+
+import java.io.Externalizable;
+import java.io.IOException;
+import java.io.ObjectInput;
+import java.io.ObjectOutput;
+
+import org.drools.runtime.rule.AgendaGroup;
+
+public class SerializableAgendaGroup implements AgendaGroup, Externalizable {
+    
+    private String name;
+    
+    SerializableAgendaGroup() {
+        
+    }
+    
+    SerializableAgendaGroup(AgendaGroup agendaGroup) {
+        this.name = agendaGroup.getName();
+    }
+
+    public void writeExternal(ObjectOutput out) throws IOException {
+        out.writeUTF( this.name );
+    }
+    
+    public void readExternal(ObjectInput in) throws IOException,
+                                            ClassNotFoundException {
+        this.name = in.readUTF();
+    }
+    
+    public String getName() {
+        return this.name;
+    }    
+
+}

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/WorkingMemoryEventImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/WorkingMemoryEventImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/rule/impl/WorkingMemoryEventImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -6,35 +6,40 @@
 import java.io.ObjectOutput;
 
 import org.drools.event.rule.WorkingMemoryEvent;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.rule.PropagationContext;
 import org.drools.runtime.rule.WorkingMemory;
 
 public class WorkingMemoryEventImpl implements WorkingMemoryEvent, Externalizable {
-    private WorkingMemory ruleRuntime;
+    private KnowledgeRuntime kruntime;
     
-    private PropagationContext propagationContext;
+    private PropagationContext propagationContext;     
     
+    public WorkingMemoryEventImpl() {
+        
+    }
+                                      
+    public WorkingMemoryEventImpl(KnowledgeRuntime kruntime, PropagationContext propagationContext) {
+        this.kruntime = kruntime;
+        this.propagationContext = propagationContext;
+    }
+    
+    public KnowledgeRuntime getKnowledgeRuntime() {
+        return this.kruntime;
+    }
+    
+    public PropagationContext getPropagationContext() {
+        return this.propagationContext;
+    }   
+    
     public void writeExternal(ObjectOutput out) throws IOException {
         new SerializablePropagationContext( propagationContext ).writeExternal( out );
     } 
     
     public void readExternal(ObjectInput in) throws IOException,
                                             ClassNotFoundException {        
-        this.ruleRuntime = null; // null because we don't serialise this
+        this.kruntime = null; // null because we don't serialise this
         this.propagationContext = new SerializablePropagationContext();
         ((SerializablePropagationContext)this.propagationContext).readExternal( in );
-    }    
-    
-    public WorkingMemoryEventImpl(WorkingMemory ruleRuntime, PropagationContext propagationContext) {
-        this.ruleRuntime = ruleRuntime;
-        this.propagationContext = propagationContext;
-    }
-    
-    public WorkingMemory getWorkingMemory() {
-        return this.ruleRuntime;
-    }
-    
-    public PropagationContext getPropagationContext() {
-        return this.propagationContext;
-    }   
+    }      
 }

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/impl/StatefulKnowledgeSessionImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/impl/StatefulKnowledgeSessionImpl.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/impl/StatefulKnowledgeSessionImpl.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -12,6 +12,7 @@
 import org.drools.KnowledgeBase;
 import org.drools.WorkingMemory;
 import org.drools.common.InternalFactHandle;
+import org.drools.common.InternalWorkingMemory;
 import org.drools.common.ObjectStore;
 import org.drools.concurrent.FutureAdapter;
 import org.drools.event.ActivationCancelledEvent;
@@ -47,6 +48,7 @@
 import org.drools.reteoo.ReteooStatefulSession;
 import org.drools.reteoo.ReteooWorkingMemory;
 import org.drools.runtime.GlobalResolver;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.StatefulKnowledgeSession;
 import org.drools.runtime.process.ProcessInstance;
 import org.drools.runtime.process.WorkItemManager;
@@ -74,6 +76,7 @@
     public StatefulKnowledgeSessionImpl(ReteooWorkingMemory session,
                                         KnowledgeBaseImpl kbase) {
         this.session = session;
+        this.session.setKnowledgeRuntime( this );
         this.kbase = kbase;
         this.mappedWorkingMemoryListeners = new IdentityHashMap<WorkingMemoryEventListener, WorkingMemoryEventListenerWrapper>();
         this.mappedAgendaListeners = new IdentityHashMap<AgendaEventListener, AgendaEventListenerWrapper>();
@@ -419,7 +422,7 @@
     public static class AgendaEventListenerWrapper
         implements
         org.drools.event.AgendaEventListener {
-        private AgendaEventListener listener;
+        private AgendaEventListener listener;      
 
         public AgendaEventListenerWrapper(AgendaEventListener listener) {
             this.listener = listener;
@@ -428,39 +431,39 @@
         public void activationCancelled(ActivationCancelledEvent event,
                                         WorkingMemory workingMemory) {
 
-            listener.activationCancelled( new ActivationCancelledEventImpl( event.getActivation() ),
-                                          null );
+            listener.activationCancelled( new ActivationCancelledEventImpl( event.getActivation(),
+                                          ((InternalWorkingMemory)workingMemory).getKnowledgeRuntime() ) );
 
         }
 
         public void activationCreated(ActivationCreatedEvent event,
                                       WorkingMemory workingMemory) {
-            listener.activationCreated( new ActivationCreatedEventImpl( event.getActivation() ),
-                                        null );
+            listener.activationCreated( new ActivationCreatedEventImpl( event.getActivation(),
+                                        ((InternalWorkingMemory)workingMemory).getKnowledgeRuntime() ) );
         }
 
         public void beforeActivationFired(BeforeActivationFiredEvent event,
                                           WorkingMemory workingMemory) {
-            listener.beforeActivationFired( new BeforeActivationFiredEventImpl( event.getActivation() ),
-                                            null );
+            listener.beforeActivationFired( new BeforeActivationFiredEventImpl( event.getActivation(),
+                                            ((InternalWorkingMemory)workingMemory).getKnowledgeRuntime() ) );
         }
 
         public void afterActivationFired(AfterActivationFiredEvent event,
                                          WorkingMemory workingMemory) {
-            listener.afterActivationFired( new AfterActivationFiredEventImpl( event.getActivation() ),
-                                           null );
+            listener.afterActivationFired( new AfterActivationFiredEventImpl( event.getActivation(),
+                                           ((InternalWorkingMemory)workingMemory).getKnowledgeRuntime() ) );
         }
 
         public void agendaGroupPopped(AgendaGroupPoppedEvent event,
                                       WorkingMemory workingMemory) {
-            listener.agendaGroupPopped( new AgendaGroupPoppedEventImpl( event.getAgendaGroup() ),
-                                        null );
+            listener.agendaGroupPopped( new AgendaGroupPoppedEventImpl( event.getAgendaGroup(),
+                                        ((InternalWorkingMemory)workingMemory).getKnowledgeRuntime() ) );
         }
 
         public void agendaGroupPushed(AgendaGroupPushedEvent event,
                                       WorkingMemory workingMemory) {
-            listener.agendaGroupPushed( new AgendaGroupPushedEventImpl( event.getAgendaGroup() ),
-                                        null );
+            listener.agendaGroupPushed( new AgendaGroupPushedEventImpl( event.getAgendaGroup(),
+                                        ((InternalWorkingMemory)workingMemory).getKnowledgeRuntime() ) );
         }
 
     }

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/event/rule/AgendaEventSupportTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/event/rule/AgendaEventSupportTest.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/event/rule/AgendaEventSupportTest.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -46,6 +46,7 @@
 import org.drools.rule.Package;
 import org.drools.rule.Pattern;
 import org.drools.rule.Rule;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.StatefulKnowledgeSession;
 import org.drools.runtime.rule.FactHandle;
 import org.drools.runtime.rule.WorkingMemory;
@@ -124,34 +125,28 @@
         final List agendaList = new ArrayList();
         final AgendaEventListener agendaEventListener = new AgendaEventListener() {
 
-            public void activationCancelled(ActivationCancelledEvent event,
-                                            WorkingMemory workingMemory) {
+            public void activationCancelled(ActivationCancelledEvent event) {
                 agendaList.add( event );
 
             }
 
-            public void activationCreated(ActivationCreatedEvent event,
-                                          WorkingMemory workingMemory) {
+            public void activationCreated(ActivationCreatedEvent event) {
                 agendaList.add( event );
             }
 
-            public void afterActivationFired(AfterActivationFiredEvent event,
-                                             WorkingMemory workingMemory) {
+            public void afterActivationFired(AfterActivationFiredEvent event) {
                 agendaList.add( event );
             }
 
-            public void agendaGroupPopped(AgendaGroupPoppedEvent event,
-                                          WorkingMemory workingMemory) {
+            public void agendaGroupPopped(AgendaGroupPoppedEvent event) {
                 agendaList.add( event );
             }
 
-            public void agendaGroupPushed(AgendaGroupPushedEvent event,
-                                          WorkingMemory workingMemory) {
+            public void agendaGroupPushed(AgendaGroupPushedEvent event) {
                 agendaList.add( event );
             }
 
-            public void beforeActivationFired(BeforeActivationFiredEvent event,
-                                              WorkingMemory workingMemory) {
+            public void beforeActivationFired(BeforeActivationFiredEvent event) {
                 agendaList.add( event );
             }
         };

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/event/rule/WorkingMemoryEventSupportTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/event/rule/WorkingMemoryEventSupportTest.java	2008-11-17 03:40:14 UTC (rev 23890)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/event/rule/WorkingMemoryEventSupportTest.java	2008-11-17 04:53:31 UTC (rev 23891)
@@ -25,6 +25,7 @@
 import org.drools.KnowledgeBaseFactory;
 import org.drools.RuleBase;
 import org.drools.RuleBaseFactory;
+import org.drools.runtime.KnowledgeRuntime;
 import org.drools.runtime.StatefulKnowledgeSession;
 import org.drools.runtime.rule.FactHandle;
 import org.drools.WorkingMemory;




More information about the jboss-svn-commits mailing list