[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