This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/tomcat.git
commit 8dc018ffe0cdc8c7352a41dd24ddb5d072c3a6df Author: Mark Thomas <ma...@apache.org> AuthorDate: Tue Sep 21 12:50:18 2021 +0100 Remove more STM references --- java/org/apache/catalina/Container.java | 4 +--- java/org/apache/catalina/Wrapper.java | 15 ++++----------- java/org/apache/catalina/core/StandardWrapper.java | 11 +++-------- java/org/apache/catalina/core/StandardWrapperValve.java | 2 +- java/org/apache/catalina/core/mbeans-descriptors.xml | 9 --------- res/findbugs/filter-false-positives.xml | 6 ------ 6 files changed, 9 insertions(+), 38 deletions(-) diff --git a/java/org/apache/catalina/Container.java b/java/org/apache/catalina/Container.java index 98dd2be..0881a70 100644 --- a/java/org/apache/catalina/Container.java +++ b/java/org/apache/catalina/Container.java @@ -43,9 +43,7 @@ import org.apache.juli.logging.Log; * of Contexts. * <li><b>Context</b> - Representation of a single ServletContext, which will * typically contain one or more Wrappers for the supported servlets. - * <li><b>Wrapper</b> - Representation of an individual servlet definition - * (which may support multiple servlet instances if the servlet itself - * implements SingleThreadModel). + * <li><b>Wrapper</b> - Representation of an individual servlet definition. * </ul> * A given deployment of Catalina need not include Containers at all of the * levels described above. For example, an administration application diff --git a/java/org/apache/catalina/Wrapper.java b/java/org/apache/catalina/Wrapper.java index 160e6f6..b40252e 100644 --- a/java/org/apache/catalina/Wrapper.java +++ b/java/org/apache/catalina/Wrapper.java @@ -31,8 +31,7 @@ import jakarta.servlet.UnavailableException; * <p> * Implementations of Wrapper are responsible for managing the servlet life * cycle for their underlying servlet class, including calling init() and - * destroy() at appropriate times, as well as respecting the existence of - * the SingleThreadModel declaration on the servlet class itself. + * destroy() at appropriate times. * <p> * The parent Container attached to a Wrapper will generally be an * implementation of Context, representing the servlet context (and @@ -190,12 +189,8 @@ public interface Wrapper extends Container { /** * Allocate an initialized instance of this Servlet that is ready to have - * its <code>service()</code> method called. If the Servlet class does - * not implement <code>SingleThreadModel</code>, the (only) initialized - * instance may be returned immediately. If the Servlet class implements - * <code>SingleThreadModel</code>, the Wrapper implementation must ensure - * that this instance is not allocated again until it is deallocated by a - * call to <code>deallocate()</code>. + * its <code>service()</code> method called. The previously initialized + * instance may be returned immediately. * * @exception ServletException if the Servlet init() method threw * an exception @@ -206,9 +201,7 @@ public interface Wrapper extends Container { /** - * Return this previously allocated servlet to the pool of available - * instances. If this servlet class does not implement SingleThreadModel, - * no action is actually required. + * Decrement the allocation count for the servlet instance. * * @param servlet The servlet to be returned * diff --git a/java/org/apache/catalina/core/StandardWrapper.java b/java/org/apache/catalina/core/StandardWrapper.java index 83599ae..22aef41 100644 --- a/java/org/apache/catalina/core/StandardWrapper.java +++ b/java/org/apache/catalina/core/StandardWrapper.java @@ -110,8 +110,7 @@ public class StandardWrapper extends ContainerBase protected final NotificationBroadcasterSupport broadcaster; /** - * The count of allocations that are currently active (even if they - * are for the same instance, as will be true on a non-STM servlet). + * The count of allocations that are currently active. */ protected final AtomicInteger countAllocated = new AtomicInteger(0); @@ -679,11 +678,8 @@ public class StandardWrapper extends ContainerBase if (instance == null) { try { if (log.isDebugEnabled()) { - log.debug("Allocating non-STM instance"); + log.debug("Allocating instance"); } - - // Note: We don't know if the Servlet implements - // SingleThreadModel until we have loaded it. instance = loadServlet(); newInstance = true; // Increment here to prevent a race condition @@ -703,7 +699,7 @@ public class StandardWrapper extends ContainerBase } if (log.isTraceEnabled()) { - log.trace(" Returning non-STM instance"); + log.trace(" Returning instance"); } // For new instances, count will have been incremented at the // time of creation @@ -1123,7 +1119,6 @@ public class StandardWrapper extends ContainerBase unloading = true; // Loaf a while if the current instance is allocated - // (possibly more than once if non-STM) if (countAllocated.get() > 0) { int nRetries = 0; long delay = unloadDelay / 20; diff --git a/java/org/apache/catalina/core/StandardWrapperValve.java b/java/org/apache/catalina/core/StandardWrapperValve.java index bc7e067..f8061d6 100644 --- a/java/org/apache/catalina/core/StandardWrapperValve.java +++ b/java/org/apache/catalina/core/StandardWrapperValve.java @@ -75,7 +75,7 @@ final class StandardWrapperValve extends ValveBase { /** * Invoke the servlet we are managing, respecting the rules regarding - * servlet lifecycle and SingleThreadModel support. + * servlet lifecycle support. * * @param request Request to be processed * @param response Response to be produced diff --git a/java/org/apache/catalina/core/mbeans-descriptors.xml b/java/org/apache/catalina/core/mbeans-descriptors.xml index 45af1f9..db0d6ca 100644 --- a/java/org/apache/catalina/core/mbeans-descriptors.xml +++ b/java/org/apache/catalina/core/mbeans-descriptors.xml @@ -1574,11 +1574,6 @@ type="int" writeable="false" /> - <attribute name="countAllocated" - description="The count of allocations that are currently active (even if they are for the same instance, as will be true on a non-STM servlet)." - type="int" - writeable="false" /> - <attribute name="errorCount" description="Error count" type="int" @@ -1598,10 +1593,6 @@ type="long" writeable="false" /> - <attribute name="maxInstances" - description="Maximum number of STM instances." - type="int" /> - <attribute name="minTime" description="Minimum processing time of a request" type="long" diff --git a/res/findbugs/filter-false-positives.xml b/res/findbugs/filter-false-positives.xml index 168e9c6..579dbce 100644 --- a/res/findbugs/filter-false-positives.xml +++ b/res/findbugs/filter-false-positives.xml @@ -244,12 +244,6 @@ <Bug code="SWL" /> </Match> <Match> - <!-- null return value is documented --> - <Class name="org.apache.catalina.core.StandardWrapper" /> - <Method name="isSingleThreadModel" /> - <Bug pattern="NP_BOOLEAN_RETURN_NULL" /> - </Match> - <Match> <!-- The code is adding HTTP request headers, not parameters and the header parsing on input will have removed any CR or LF characters. --> <Class name="org.apache.catalina.filters.CorsFilter" /> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org