[jboss-svn-commits] JBL Code SVN: r18456 - labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Feb 11 09:41:56 EST 2008
Author: KrisVerlaenen
Date: 2008-02-11 09:41:56 -0500 (Mon, 11 Feb 2008)
New Revision: 18456
Modified:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/AgendaEventSupport.java
Log:
Using iterator to go over event listeners to avoid problems when removing listeners
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/AgendaEventSupport.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/AgendaEventSupport.java 2008-02-11 09:57:12 UTC (rev 18455)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/event/AgendaEventSupport.java 2008-02-11 14:41:56 UTC (rev 18456)
@@ -17,7 +17,6 @@
*/
import java.io.Serializable;
-import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;
@@ -37,7 +36,7 @@
*
*/
private static final long serialVersionUID = 400L;
- private final List<AgendaEventListener> listeners = new CopyOnWriteArrayList<AgendaEventListener>();
+ private final List<AgendaEventListener> listeners = new CopyOnWriteArrayList<AgendaEventListener>();
public AgendaEventSupport() {
}
@@ -52,8 +51,7 @@
this.listeners.remove( listener );
}
- public List getEventListeners() {
-
+ public List<AgendaEventListener> getEventListeners() {
return Collections.unmodifiableList( this.listeners );
}
@@ -73,9 +71,8 @@
final ActivationCreatedEvent event = new ActivationCreatedEvent( activation );
- for ( int i = 0, size = this.listeners.size(); i < size; i++ ) {
- ((AgendaEventListener) this.listeners.get( i )).activationCreated( event,
- workingMemory );
+ for ( AgendaEventListener listener: listeners) {
+ listener.activationCreated( event, workingMemory );
}
}
@@ -101,9 +98,8 @@
final BeforeActivationFiredEvent event = new BeforeActivationFiredEvent( activation );
- for ( int i = 0, size = this.listeners.size(); i < size; i++ ) {
- ((AgendaEventListener) this.listeners.get( i )).beforeActivationFired( event,
- workingMemory );
+ for ( AgendaEventListener listener: listeners) {
+ listener.beforeActivationFired( event, workingMemory );
}
}
@@ -115,9 +111,8 @@
final AfterActivationFiredEvent event = new AfterActivationFiredEvent( activation );
- for ( int i = 0, size = this.listeners.size(); i < size; i++ ) {
- ((AgendaEventListener) this.listeners.get( i )).afterActivationFired( event,
- workingMemory );
+ for ( AgendaEventListener listener: listeners) {
+ listener.afterActivationFired( event, workingMemory );
}
}
@@ -129,9 +124,8 @@
final AgendaGroupPoppedEvent event = new AgendaGroupPoppedEvent( agendaGroup );
- for ( int i = 0, size = this.listeners.size(); i < size; i++ ) {
- ((AgendaEventListener) this.listeners.get( i )).agendaGroupPopped( event,
- workingMemory );
+ for ( AgendaEventListener listener: listeners) {
+ listener.agendaGroupPopped( event, workingMemory );
}
}
@@ -143,9 +137,8 @@
final AgendaGroupPushedEvent event = new AgendaGroupPushedEvent( agendaGroup );
- for ( int i = 0, size = this.listeners.size(); i < size; i++ ) {
- ((AgendaEventListener) this.listeners.get( i )).agendaGroupPushed( event,
- workingMemory );
+ for ( AgendaEventListener listener: listeners) {
+ listener.agendaGroupPushed( event, workingMemory );
}
}
More information about the jboss-svn-commits
mailing list