[jboss-svn-commits] JBL Code SVN: r15062 - in labs/jbossrules/trunk: drools-core/src/main/java/org/drools/audit and 4 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Sep 12 14:10:03 EDT 2007
Author: tirelli
Date: 2007-09-12 14:10:02 -0400 (Wed, 12 Sep 2007)
New Revision: 15062
Added:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/WorkingMemoryEventManager.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/event/RuleBaseLogEvent.java
Removed:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/EventManager.java
Modified:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/StatelessSession.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/WorkingMemory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryFileLogger.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryInMemoryLogger.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryLogger.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/event/LogEvent.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractWorkingMemory.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooStatelessSession.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooWorkingMemory.java
labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/ExternalSheetListenerTest.java
Log:
JBRULES-1185: adding support to the working memory logger
Deleted: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/EventManager.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/EventManager.java 2007-09-12 18:06:21 UTC (rev 15061)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/EventManager.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -1,101 +0,0 @@
-package org.drools;
-
-/*
- * Copyright 2005 JBoss Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import java.io.Serializable;
-import java.util.List;
-
-import org.drools.event.AgendaEventListener;
-import org.drools.event.RuleFlowEventListener;
-import org.drools.event.WorkingMemoryEventListener;
-
-/**
- * The EventManager class is implemented by classes wishing to add,remove and get the various Drools EventListeners.
- *
- */
-public interface EventManager
- extends
- Serializable {
- /**
- * Add an event listener.
- *
- * @param listener
- * The listener to add.
- */
- public void addEventListener(WorkingMemoryEventListener listener);
-
- /**
- * Remove an event listener.
- *
- * @param listener
- * The listener to remove.
- */
- public void removeEventListener(WorkingMemoryEventListener listener);
-
- /**
- * Returns all event listeners.
- *
- * @return listeners The listeners.
- */
- public List getWorkingMemoryEventListeners();
-
- /**
- * Add an event listener.
- *
- * @param listener
- * The listener to add.
- */
- public void addEventListener(AgendaEventListener listener);
-
- /**
- * Remove an event listener.
- *
- * @param listener
- * The listener to remove.
- */
- public void removeEventListener(AgendaEventListener listener);
-
- /**
- * Returns all event listeners.
- *
- * @return listeners The listeners.
- */
- public List getAgendaEventListeners();
-
- /**
- * Add an event listener.
- *
- * @param listener
- * The listener to add.
- */
- public void addEventListener(RuleFlowEventListener listener);
-
- /**
- * Remove an event listener.
- *
- * @param listener
- * The listener to remove.
- */
- public void removeEventListener(RuleFlowEventListener listener);
-
- /**
- * Returns all event listeners.
- *
- * @return listeners The listeners.
- */
- public List getRuleFlowEventListeners();
-}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/StatelessSession.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/StatelessSession.java 2007-09-12 18:06:21 UTC (rev 15061)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/StatelessSession.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -23,7 +23,7 @@
* Care should be used when using the async versions of the methods, consult the javadoc for
* the specific information.
*/
-public interface StatelessSession extends EventManager {
+public interface StatelessSession extends WorkingMemoryEventManager {
void setAgendaFilter(AgendaFilter agendaFilter);
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/WorkingMemory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/WorkingMemory.java 2007-09-12 18:06:21 UTC (rev 15061)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/WorkingMemory.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -32,7 +32,7 @@
* in WorkingMemories from an InputStream.
*
*/
-public interface WorkingMemory extends EventManager {
+public interface WorkingMemory extends WorkingMemoryEventManager {
/**
* Returns the Agenda for this WorkingMemory. While the WorkingMemory interface is considered public, the Agenda interface
Copied: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/WorkingMemoryEventManager.java (from rev 15056, labs/jbossrules/trunk/drools-core/src/main/java/org/drools/EventManager.java)
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/WorkingMemoryEventManager.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/WorkingMemoryEventManager.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -0,0 +1,102 @@
+package org.drools;
+
+/*
+ * Copyright 2005 JBoss Inc
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import java.io.Serializable;
+import java.util.List;
+
+import org.drools.event.AgendaEventListener;
+import org.drools.event.RuleFlowEventListener;
+import org.drools.event.WorkingMemoryEventListener;
+
+/**
+ * The EventManager class is implemented by classes wishing to add,remove and get the various Drools EventListeners.
+ *
+ */
+public interface WorkingMemoryEventManager
+ extends
+ RuleBaseEventManager,
+ Serializable {
+ /**
+ * Add an event listener.
+ *
+ * @param listener
+ * The listener to add.
+ */
+ public void addEventListener(WorkingMemoryEventListener listener);
+
+ /**
+ * Remove an event listener.
+ *
+ * @param listener
+ * The listener to remove.
+ */
+ public void removeEventListener(WorkingMemoryEventListener listener);
+
+ /**
+ * Returns all event listeners.
+ *
+ * @return listeners The listeners.
+ */
+ public List getWorkingMemoryEventListeners();
+
+ /**
+ * Add an event listener.
+ *
+ * @param listener
+ * The listener to add.
+ */
+ public void addEventListener(AgendaEventListener listener);
+
+ /**
+ * Remove an event listener.
+ *
+ * @param listener
+ * The listener to remove.
+ */
+ public void removeEventListener(AgendaEventListener listener);
+
+ /**
+ * Returns all event listeners.
+ *
+ * @return listeners The listeners.
+ */
+ public List getAgendaEventListeners();
+
+ /**
+ * Add an event listener.
+ *
+ * @param listener
+ * The listener to add.
+ */
+ public void addEventListener(RuleFlowEventListener listener);
+
+ /**
+ * Remove an event listener.
+ *
+ * @param listener
+ * The listener to remove.
+ */
+ public void removeEventListener(RuleFlowEventListener listener);
+
+ /**
+ * Returns all event listeners.
+ *
+ * @return listeners The listeners.
+ */
+ public List getRuleFlowEventListeners();
+}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryFileLogger.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryFileLogger.java 2007-09-12 18:06:21 UTC (rev 15061)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryFileLogger.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -22,7 +22,7 @@
import java.util.ArrayList;
import java.util.List;
-import org.drools.EventManager;
+import org.drools.WorkingMemoryEventManager;
import org.drools.audit.event.LogEvent;
import com.thoughtworks.xstream.XStream;
@@ -54,8 +54,8 @@
* Creates a new WorkingMemoryFileLogger for the given working memory.
* @param workingMemory
*/
- public WorkingMemoryFileLogger(final EventManager eventManager) {
- super( eventManager );
+ public WorkingMemoryFileLogger(final WorkingMemoryEventManager workingMemoryEventManager) {
+ super( workingMemoryEventManager );
}
/**
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryInMemoryLogger.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryInMemoryLogger.java 2007-09-12 18:06:21 UTC (rev 15061)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryInMemoryLogger.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -23,6 +23,14 @@
import org.drools.WorkingMemory;
import org.drools.audit.event.LogEvent;
+import org.drools.event.AfterPackageAddedEvent;
+import org.drools.event.AfterPackageRemovedEvent;
+import org.drools.event.AfterRuleAddedEvent;
+import org.drools.event.AfterRuleRemovedEvent;
+import org.drools.event.BeforePackageAddedEvent;
+import org.drools.event.BeforePackageRemovedEvent;
+import org.drools.event.BeforeRuleAddedEvent;
+import org.drools.event.BeforeRuleRemovedEvent;
import com.thoughtworks.xstream.XStream;
@@ -70,4 +78,5 @@
public void logEventCreated(final LogEvent logEvent) {
this.events.add( logEvent );
}
+
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryLogger.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryLogger.java 2007-09-12 18:06:21 UTC (rev 15061)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/WorkingMemoryLogger.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -20,13 +20,14 @@
import java.util.Iterator;
import java.util.List;
-import org.drools.EventManager;
+import org.drools.WorkingMemoryEventManager;
import org.drools.FactHandle;
import org.drools.WorkingMemory;
import org.drools.audit.event.ActivationLogEvent;
import org.drools.audit.event.ILogEventFilter;
import org.drools.audit.event.LogEvent;
import org.drools.audit.event.ObjectLogEvent;
+import org.drools.audit.event.RuleBaseLogEvent;
import org.drools.audit.event.RuleFlowGroupLogEvent;
import org.drools.audit.event.RuleFlowLogEvent;
import org.drools.common.InternalFactHandle;
@@ -34,13 +35,22 @@
import org.drools.event.ActivationCancelledEvent;
import org.drools.event.ActivationCreatedEvent;
import org.drools.event.AfterActivationFiredEvent;
+import org.drools.event.AfterPackageAddedEvent;
+import org.drools.event.AfterPackageRemovedEvent;
+import org.drools.event.AfterRuleAddedEvent;
+import org.drools.event.AfterRuleRemovedEvent;
import org.drools.event.AgendaEventListener;
import org.drools.event.AgendaGroupPoppedEvent;
import org.drools.event.AgendaGroupPushedEvent;
import org.drools.event.BeforeActivationFiredEvent;
+import org.drools.event.BeforePackageAddedEvent;
+import org.drools.event.BeforePackageRemovedEvent;
+import org.drools.event.BeforeRuleAddedEvent;
+import org.drools.event.BeforeRuleRemovedEvent;
import org.drools.event.ObjectInsertedEvent;
import org.drools.event.ObjectUpdatedEvent;
import org.drools.event.ObjectRetractedEvent;
+import org.drools.event.RuleBaseEventListener;
import org.drools.event.RuleFlowCompletedEvent;
import org.drools.event.RuleFlowEventListener;
import org.drools.event.RuleFlowGroupActivatedEvent;
@@ -69,21 +79,23 @@
implements
WorkingMemoryEventListener,
AgendaEventListener,
- RuleFlowEventListener {
+ RuleFlowEventListener,
+ RuleBaseEventListener {
private final List filters = new ArrayList();
- private EventManager eventManager;
+ private WorkingMemoryEventManager workingMemoryEventManager;
/**
* Creates a new working memory logger for the given working memory.
*
* @param workingMemory
*/
- public WorkingMemoryLogger(final EventManager eventManager) {
- this.eventManager = eventManager;
- this.eventManager.addEventListener( (WorkingMemoryEventListener) this );
- this.eventManager.addEventListener( (AgendaEventListener) this );
- this.eventManager.addEventListener( (RuleFlowEventListener) this );
+ public WorkingMemoryLogger(final WorkingMemoryEventManager workingMemoryEventManager) {
+ this.workingMemoryEventManager = workingMemoryEventManager;
+ this.workingMemoryEventManager.addEventListener( (WorkingMemoryEventListener) this );
+ this.workingMemoryEventManager.addEventListener( (AgendaEventListener) this );
+ this.workingMemoryEventManager.addEventListener( (RuleFlowEventListener) this );
+ this.workingMemoryEventManager.addEventListener( (RuleBaseEventListener) this );
}
/**
@@ -327,5 +339,54 @@
event.getRuleFlowGroup().getName(),
event.getRuleFlowGroup().size() ) );
}
+
+ public void afterPackageAdded(AfterPackageAddedEvent event) {
+ filterLogEvent( new RuleBaseLogEvent( LogEvent.AFTER_PACKAGE_ADDED,
+ event.getPackage().getName(),
+ null ) );
+ }
+ public void afterPackageRemoved(AfterPackageRemovedEvent event) {
+ filterLogEvent( new RuleBaseLogEvent( LogEvent.AFTER_PACKAGE_REMOVED,
+ event.getPackage().getName(),
+ null ) );
+ }
+
+ public void afterRuleAdded(AfterRuleAddedEvent event) {
+ filterLogEvent( new RuleBaseLogEvent( LogEvent.AFTER_RULE_ADDED,
+ event.getPackage().getName(),
+ event.getRule().getName() ) );
+ }
+
+ public void afterRuleRemoved(AfterRuleRemovedEvent event) {
+ filterLogEvent( new RuleBaseLogEvent( LogEvent.AFTER_RULE_REMOVED,
+ event.getPackage().getName(),
+ event.getRule().getName() ) );
+ }
+
+ public void beforePackageAdded(BeforePackageAddedEvent event) {
+ filterLogEvent( new RuleBaseLogEvent( LogEvent.BEFORE_PACKAGE_ADDED,
+ event.getPackage().getName(),
+ null ) );
+ }
+
+ public void beforePackageRemoved(BeforePackageRemovedEvent event) {
+ filterLogEvent( new RuleBaseLogEvent( LogEvent.BEFORE_PACKAGE_REMOVED,
+ event.getPackage().getName(),
+ null ) );
+ }
+
+ public void beforeRuleAdded(BeforeRuleAddedEvent event) {
+ filterLogEvent( new RuleBaseLogEvent( LogEvent.BEFORE_RULE_ADDED,
+ event.getPackage().getName(),
+ event.getRule().getName() ) );
+ }
+
+ public void beforeRuleRemoved(BeforeRuleRemovedEvent event) {
+ filterLogEvent( new RuleBaseLogEvent( LogEvent.BEFORE_RULE_REMOVED,
+ event.getPackage().getName(),
+ event.getRule().getName() ) );
+ }
+
+
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/event/LogEvent.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/event/LogEvent.java 2007-09-12 18:06:21 UTC (rev 15061)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/event/LogEvent.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -38,6 +38,15 @@
public static final int RULEFLOW_GROUP_ACTIVATED = 10;
public static final int RULEFLOW_GROUP_DEACTIVATED = 11;
+ public static final int BEFORE_PACKAGE_ADDED = 12;
+ public static final int AFTER_PACKAGE_ADDED = 13;
+ public static final int BEFORE_PACKAGE_REMOVED = 14;
+ public static final int AFTER_PACKAGE_REMOVED = 15;
+ public static final int BEFORE_RULE_ADDED = 16;
+ public static final int AFTER_RULE_ADDED = 17;
+ public static final int BEFORE_RULE_REMOVED = 18;
+ public static final int AFTER_RULE_REMOVED = 19;
+
private int type;
/**
Added: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/event/RuleBaseLogEvent.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/event/RuleBaseLogEvent.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/audit/event/RuleBaseLogEvent.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -0,0 +1,98 @@
+package org.drools.audit.event;
+
+/*
+ * Copyright 2005 JBoss Inc
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * A rulebase event logged by the WorkingMemoryLogger.
+ * It is a snapshot of the event as it was thrown by the rulebase.
+ *
+ * @author etirelli
+ */
+public class RuleBaseLogEvent extends LogEvent {
+
+ private final String packageName;
+ private final String ruleName;
+
+ /**
+ * Create a new activation log event.
+ *
+ * @param type The type of event.
+ * @param packageName The name of the package
+ * @param ruleName The name of the rule
+ */
+ public RuleBaseLogEvent(final int type,
+ final String packageName,
+ final String ruleName) {
+ super( type );
+ this.packageName = packageName;
+ this.ruleName = ruleName;
+ }
+
+ /**
+ * Returns the Package Name
+ *
+ * @return The name of the package
+ */
+ public String getPackageName() {
+ return this.packageName;
+ }
+
+ /**
+ * Returns the name of the rule
+ *
+ * @return The name of the rule
+ */
+ public String getRuleName() {
+ return this.ruleName;
+ }
+
+ public String toString() {
+
+ String msg = null;
+ switch ( this.getType() ) {
+ case BEFORE_PACKAGE_ADDED :
+ msg = "BEFORE PACKAGE ADDED";
+ break;
+ case AFTER_PACKAGE_ADDED :
+ msg = "AFTER PACKAGE ADDED";
+ break;
+ case BEFORE_PACKAGE_REMOVED :
+ msg = "BEFORE PACKAGE REMOVED";
+ break;
+ case AFTER_PACKAGE_REMOVED :
+ msg = "AFTER PACKAGE REMOVED";
+ break;
+ case BEFORE_RULE_ADDED :
+ msg = "BEFORE RULE ADDED";
+ break;
+ case AFTER_RULE_ADDED :
+ msg = "AFTER RULE ADDED";
+ break;
+ case BEFORE_RULE_REMOVED :
+ msg = "BEFORE RULE REMOVED";
+ break;
+ case AFTER_RULE_REMOVED :
+ msg = "AFTER RULE REMOVED";
+ break;
+ }
+ String ruleMsg = "";
+ if( this.ruleName != null ) {
+ ruleMsg = " rule: \""+this.ruleName+"\"";
+ }
+ return msg + " package: \"" + this.packageName + "\""+ruleMsg;
+ }
+}
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 2007-09-12 18:06:21 UTC (rev 15061)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/AbstractWorkingMemory.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -45,6 +45,7 @@
import org.drools.base.ShadowProxy;
import org.drools.event.AgendaEventListener;
import org.drools.event.AgendaEventSupport;
+import org.drools.event.RuleBaseEventListener;
import org.drools.event.RuleFlowEventListener;
import org.drools.event.RuleFlowEventSupport;
import org.drools.event.WorkingMemoryEventListener;
@@ -308,6 +309,33 @@
}
}
+ public void addEventListener(RuleBaseEventListener listener) {
+ try {
+ this.lock.lock();
+ this.ruleBase.addEventListener( listener );
+ } finally {
+ this.lock.unlock();
+ }
+ }
+
+ public List getRuleBaseEventListeners() {
+ try {
+ this.lock.lock();
+ return this.ruleBase.getRuleBaseEventListeners();
+ } finally {
+ this.lock.unlock();
+ }
+ }
+
+ public void removeEventListener(RuleBaseEventListener listener) {
+ try {
+ this.lock.lock();
+ this.ruleBase.removeEventListener( listener );
+ } finally {
+ this.lock.unlock();
+ }
+ }
+
public FactHandleFactory getFactHandleFactory() {
return this.handleFactory;
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooStatelessSession.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooStatelessSession.java 2007-09-12 18:06:21 UTC (rev 15061)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooStatelessSession.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -1,15 +1,11 @@
package org.drools.reteoo;
import java.util.Collection;
-import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
-import java.util.Map;
-import org.drools.ObjectFilter;
import org.drools.StatelessSession;
import org.drools.StatelessSessionResult;
-import org.drools.WorkingMemory;
import org.drools.base.MapGlobalResolver;
import org.drools.common.InternalRuleBase;
import org.drools.common.InternalWorkingMemory;
@@ -18,9 +14,9 @@
import org.drools.concurrent.CommandExecutor;
import org.drools.concurrent.ExecutorService;
import org.drools.concurrent.FireAllRules;
-import org.drools.concurrent.Future;
import org.drools.event.AgendaEventListener;
import org.drools.event.AgendaEventSupport;
+import org.drools.event.RuleBaseEventListener;
import org.drools.event.RuleFlowEventListener;
import org.drools.event.RuleFlowEventSupport;
import org.drools.event.WorkingMemoryEventListener;
@@ -109,7 +105,19 @@
public List getRuleFlowEventListeners() {
return this.ruleFlowEventSupport.getEventListeners();
}
+
+ public void addEventListener(RuleBaseEventListener listener) {
+ this.ruleBase.addEventListener( listener );
+ }
+ public List getRuleBaseEventListeners() {
+ return this.ruleBase.getRuleBaseEventListeners();
+ }
+
+ public void removeEventListener(RuleBaseEventListener listener) {
+ this.ruleBase.removeEventListener( listener );
+ }
+
public void setAgendaFilter(AgendaFilter agendaFilter) {
this.agendaFilter = agendaFilter;
}
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 2007-09-12 18:06:21 UTC (rev 15061)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooWorkingMemory.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -31,6 +31,7 @@
import org.drools.common.InternalWorkingMemory;
import org.drools.common.PropagationContextImpl;
import org.drools.common.WorkingMemoryAction;
+import org.drools.event.RuleBaseEventListener;
import org.drools.rule.Query;
import org.drools.rule.Rule;
import org.drools.spi.Activation;
@@ -181,4 +182,5 @@
workingMemory );
}
}
+
}
Modified: labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/ExternalSheetListenerTest.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/ExternalSheetListenerTest.java 2007-09-12 18:06:21 UTC (rev 15061)
+++ labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/parser/ExternalSheetListenerTest.java 2007-09-12 18:10:02 UTC (rev 15062)
@@ -18,6 +18,7 @@
import org.drools.StatefulSession;
import org.drools.concurrent.Future;
import org.drools.event.AgendaEventListener;
+import org.drools.event.RuleBaseEventListener;
import org.drools.event.RuleFlowEventListener;
import org.drools.event.WorkingMemoryEventListener;
import org.drools.rule.Rule;
@@ -106,8 +107,9 @@
public StatefulSession newStatefulSession() {
return new StatefulSession() {
+ private static final long serialVersionUID = 1L;
- public void addEventListener(WorkingMemoryEventListener arg0) {
+ public void addEventListener(WorkingMemoryEventListener arg0) {
}
@@ -365,6 +367,21 @@
// TODO Auto-generated method stub
}
+
+ public void addEventListener(RuleBaseEventListener listener) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public List getRuleBaseEventListeners() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public void removeEventListener(RuleBaseEventListener listener) {
+ // TODO Auto-generated method stub
+
+ }
};
}
}
More information about the jboss-svn-commits
mailing list