Author: markt
Date: Thu Feb 4 22:09:18 2010
New Revision: 906680
URL: http://svn.apache.org/viewvc?rev=906680&view=rev
Log:
Move firing the events to StandardPipeline. This way calls to
container.addValve() and container.getPipeline().addValve() will both trigger
the event.
Custom pipelines (unlikely but possible) would not trigger the event. The
javadocs for Pipeline will be updated to note that they should in a following
commit.
Part of removing the Pipeline interface from ContainerBase
Modified:
tomcat/trunk/java/org/apache/catalina/Container.java
tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java
tomcat/trunk/java/org/apache/catalina/core/StandardPipeline.java
Modified: tomcat/trunk/java/org/apache/catalina/Container.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/Container.java?rev=906680&r1=906679&r2=906680&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/Container.java (original)
+++ tomcat/trunk/java/org/apache/catalina/Container.java Thu Feb 4 22:09:18
2010
@@ -440,4 +440,13 @@
public void removePropertyChangeListener(PropertyChangeListener listener);
+ /**
+ * Notify all container event listeners that a particular event has
+ * occurred for this Container. The default implementation performs
+ * this notification synchronously using the calling thread.
+ *
+ * @param type Event type
+ * @param data Event data
+ */
+ public void fireContainerEvent(String type, Object data);
}
Modified: tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java?rev=906680&r1=906679&r2=906680&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java (original)
+++ tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java Thu Feb 4
22:09:18 2010
@@ -1215,7 +1215,6 @@
public synchronized void addValve(Valve valve) {
pipeline.addValve(valve);
- fireContainerEvent(ADD_VALVE_EVENT, valve);
}
public ObjectName[] getValveObjectNames() {
@@ -1264,7 +1263,6 @@
public synchronized void removeValve(Valve valve) {
pipeline.removeValve(valve);
- fireContainerEvent(REMOVE_VALVE_EVENT, valve);
}
Modified: tomcat/trunk/java/org/apache/catalina/core/StandardPipeline.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardPipeline.java?rev=906680&r1=906679&r2=906680&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/core/StandardPipeline.java (original)
+++ tomcat/trunk/java/org/apache/catalina/core/StandardPipeline.java Thu Feb 4
22:09:18 2010
@@ -472,7 +472,8 @@
current = current.getNext();
}
}
-
+
+ container.fireContainerEvent(Container.ADD_VALVE_EVENT, valve);
}
@@ -558,14 +559,15 @@
unregisterValve(valve);
}
+ container.fireContainerEvent(Container.REMOVE_VALVE_EVENT, valve);
}
public Valve getFirst() {
if (first != null) {
return first;
- } else {
- return basic;
}
+
+ return basic;
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]