You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by mi...@apache.org on 2021/11/01 08:46:33 UTC
[tomcat] branch 9.0.x updated: Add Javadoc comment about nesting of
server-wide listeners
This is an automated email from the ASF dual-hosted git repository.
michaelo pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/9.0.x by this push:
new 9a5c21c Add Javadoc comment about nesting of server-wide listeners
9a5c21c is described below
commit 9a5c21cb604edd63e28a343f3603e79ab792074b
Author: Michael Osipov <mi...@apache.org>
AuthorDate: Mon Nov 1 09:18:47 2021 +0100
Add Javadoc comment about nesting of server-wide listeners
---
java/org/apache/catalina/core/AprLifecycleListener.java | 3 +++
.../org/apache/catalina/core/JreMemoryLeakPreventionListener.java | 1 +
.../apache/catalina/core/ThreadLocalLeakPreventionListener.java | 8 ++------
.../apache/catalina/mbeans/GlobalResourcesLifecycleListener.java | 3 +++
java/org/apache/catalina/security/SecurityListener.java | 4 ++++
java/org/apache/catalina/startup/VersionLoggerListener.java | 4 ++++
webapps/docs/changelog.xml | 4 ++++
7 files changed, 21 insertions(+), 6 deletions(-)
diff --git a/java/org/apache/catalina/core/AprLifecycleListener.java b/java/org/apache/catalina/core/AprLifecycleListener.java
index ee2a648..a3bd1db 100644
--- a/java/org/apache/catalina/core/AprLifecycleListener.java
+++ b/java/org/apache/catalina/core/AprLifecycleListener.java
@@ -25,6 +25,7 @@ import java.util.List;
import org.apache.catalina.Lifecycle;
import org.apache.catalina.LifecycleEvent;
import org.apache.catalina.LifecycleListener;
+import org.apache.catalina.Server;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
import org.apache.tomcat.jni.Library;
@@ -38,6 +39,8 @@ import org.apache.tomcat.util.res.StringManager;
/**
* Implementation of <code>LifecycleListener</code> that will init and
* and destroy APR.
+ * <p>
+ * This listener must only be nested within {@link Server} elements.
*
* @since 4.1
*/
diff --git a/java/org/apache/catalina/core/JreMemoryLeakPreventionListener.java b/java/org/apache/catalina/core/JreMemoryLeakPreventionListener.java
index b3c56a5..12bf11e 100644
--- a/java/org/apache/catalina/core/JreMemoryLeakPreventionListener.java
+++ b/java/org/apache/catalina/core/JreMemoryLeakPreventionListener.java
@@ -33,6 +33,7 @@ import org.apache.catalina.Lifecycle;
import org.apache.catalina.LifecycleEvent;
import org.apache.catalina.LifecycleListener;
import org.apache.catalina.startup.SafeForkJoinWorkerThreadFactory;
+import org.apache.catalina.Server;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
import org.apache.tomcat.util.ExceptionUtils;
diff --git a/java/org/apache/catalina/core/ThreadLocalLeakPreventionListener.java b/java/org/apache/catalina/core/ThreadLocalLeakPreventionListener.java
index f13b19a..9000576 100644
--- a/java/org/apache/catalina/core/ThreadLocalLeakPreventionListener.java
+++ b/java/org/apache/catalina/core/ThreadLocalLeakPreventionListener.java
@@ -34,19 +34,15 @@ import org.apache.tomcat.util.res.StringManager;
import org.apache.tomcat.util.threads.ThreadPoolExecutor;
/**
- * <p>
* A {@link LifecycleListener} that triggers the renewal of threads in Executor
* pools when a {@link Context} is being stopped to avoid thread-local related
* memory leaks.
- * </p>
* <p>
* Note : active threads will be renewed one by one when they come back to the
* pool after executing their task, see
* {@link org.apache.tomcat.util.threads.ThreadPoolExecutor}.afterExecute().
- * </p>
- *
- * This listener must be declared in server.xml to be active.
- *
+ * <p>
+ * This listener must only be nested within {@link Server} elements.
*/
public class ThreadLocalLeakPreventionListener extends FrameworkListener {
diff --git a/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java b/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java
index bca1ed7..d6d7506 100644
--- a/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java
+++ b/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java
@@ -31,6 +31,7 @@ import org.apache.catalina.Lifecycle;
import org.apache.catalina.LifecycleEvent;
import org.apache.catalina.LifecycleListener;
import org.apache.catalina.Role;
+import org.apache.catalina.Server;
import org.apache.catalina.User;
import org.apache.catalina.UserDatabase;
import org.apache.juli.logging.Log;
@@ -42,6 +43,8 @@ import org.apache.tomcat.util.res.StringManager;
* Implementation of <code>LifecycleListener</code> that instantiates the
* set of MBeans associated with global JNDI resources that are subject to
* management.
+ * <p>
+ * This listener must only be nested within {@link Server} elements.
*
* @author Craig R. McClanahan
* @since 4.1
diff --git a/java/org/apache/catalina/security/SecurityListener.java b/java/org/apache/catalina/security/SecurityListener.java
index 782753f..cee5ae0 100644
--- a/java/org/apache/catalina/security/SecurityListener.java
+++ b/java/org/apache/catalina/security/SecurityListener.java
@@ -23,11 +23,15 @@ import java.util.Set;
import org.apache.catalina.Lifecycle;
import org.apache.catalina.LifecycleEvent;
import org.apache.catalina.LifecycleListener;
+import org.apache.catalina.Server;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
import org.apache.tomcat.util.buf.StringUtils;
import org.apache.tomcat.util.res.StringManager;
+/**
+ * This listener must only be nested within {@link Server} elements.
+ */
public class SecurityListener implements LifecycleListener {
private static final Log log = LogFactory.getLog(SecurityListener.class);
diff --git a/java/org/apache/catalina/startup/VersionLoggerListener.java b/java/org/apache/catalina/startup/VersionLoggerListener.java
index a4f944b..6ca2ea8 100644
--- a/java/org/apache/catalina/startup/VersionLoggerListener.java
+++ b/java/org/apache/catalina/startup/VersionLoggerListener.java
@@ -25,6 +25,7 @@ import java.util.TreeMap;
import org.apache.catalina.Lifecycle;
import org.apache.catalina.LifecycleEvent;
import org.apache.catalina.LifecycleListener;
+import org.apache.catalina.Server;
import org.apache.catalina.util.ServerInfo;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
@@ -32,6 +33,9 @@ import org.apache.tomcat.util.res.StringManager;
/**
* Logs version information on startup.
+ * <p>
+ * This listener must only be nested within {@link Server} elements and should
+ * be the first listener defined.
*/
public class VersionLoggerListener implements LifecycleListener {
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 24fa7b0..d6e647c 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -112,6 +112,10 @@
the connection. Also add missing close when running into issues
getting the passord of a user. (remm)
</fix>
+ <docs>
+ Add Javadoc comment which listeners must be nested whithin
+ <code>Server</code> elements only. (michaelo)
+ </docs>
</changelog>
</subsection>
<subsection name="Coyote">
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org