This is an automated email from the ASF dual-hosted git repository.

remm pushed a commit to branch 11.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/11.0.x by this push:
     new 1335fe842e Add javadoc
1335fe842e is described below

commit 1335fe842e5750117e394c40c32c7d7717bd224b
Author: remm <[email protected]>
AuthorDate: Thu Apr 2 20:38:06 2026 +0200

    Add javadoc
---
 java/org/apache/catalina/AccessLog.java            |  2 +
 java/org/apache/catalina/Context.java              |  1 -
 java/org/apache/catalina/JmxEnabled.java           |  4 ++
 java/org/apache/catalina/WebResource.java          | 40 +++++++++++++++++-
 java/org/apache/catalina/WebResourceRoot.java      | 12 ++++++
 .../catalina/ant/AbstractCatalinaCommandTask.java  | 23 +++++++++++
 .../apache/catalina/ha/tcp/SendMessageData.java    |  2 +
 .../catalina/tribes/group/AbsoluteOrder.java       | 25 ++++++++++++
 .../tribes/tipis/AbstractReplicatedMap.java        |  2 +
 .../catalina/valves/AbstractAccessLogValve.java    | 37 +++++++++++++++--
 .../webresources/AbstractArchiveResource.java      | 45 +++++++++++++++++++++
 .../webresources/AbstractArchiveResourceSet.java   | 47 ++++++++++++++++++++++
 .../catalina/webresources/AbstractResource.java    |  5 +++
 java/org/apache/coyote/AbstractProtocol.java       |  7 ++++
 java/org/apache/coyote/UpgradeProtocol.java        | 10 +++++
 java/org/apache/el/ExpressionFactoryImpl.java      |  2 +-
 java/org/apache/jasper/compiler/TextOptimizer.java |  1 +
 .../apache/tomcat/util/net/AbstractEndpoint.java   |  2 +
 18 files changed, 259 insertions(+), 8 deletions(-)

diff --git a/java/org/apache/catalina/AccessLog.java 
b/java/org/apache/catalina/AccessLog.java
index 9751a8ee67..2a60d48aa1 100644
--- a/java/org/apache/catalina/AccessLog.java
+++ b/java/org/apache/catalina/AccessLog.java
@@ -82,6 +82,8 @@ public interface AccessLog {
     void setRequestAttributesEnabled(boolean requestAttributesEnabled);
 
     /**
+     * Checks if request attributes will be logged.
+     *
      * @see #setRequestAttributesEnabled(boolean)
      *
      * @return <code>true</code> if the attributes will be logged, otherwise 
<code>false</code>
diff --git a/java/org/apache/catalina/Context.java 
b/java/org/apache/catalina/Context.java
index 6468da2f65..4c94b0c9a1 100644
--- a/java/org/apache/catalina/Context.java
+++ b/java/org/apache/catalina/Context.java
@@ -60,7 +60,6 @@ import org.apache.tomcat.util.http.CookieProcessor;
  * <p>
  * The child containers attached to a Context are generally implementations of 
Wrapper (representing individual servlet
  * definitions).
- * <p>
  */
 public interface Context extends Container, ContextBind {
 
diff --git a/java/org/apache/catalina/JmxEnabled.java 
b/java/org/apache/catalina/JmxEnabled.java
index d79d2b3d4f..06f40e6cda 100644
--- a/java/org/apache/catalina/JmxEnabled.java
+++ b/java/org/apache/catalina/JmxEnabled.java
@@ -27,6 +27,8 @@ import javax.management.ObjectName;
 public interface JmxEnabled extends MBeanRegistration {
 
     /**
+     * Returns the domain under which this component will be / has been 
registered.
+     *
      * @return the domain under which this component will be / has been 
registered.
      */
     String getDomain();
@@ -42,6 +44,8 @@ public interface JmxEnabled extends MBeanRegistration {
 
 
     /**
+     * Returns the name under which this component has been registered with 
JMX.
+     *
      * @return the name under which this component has been registered with 
JMX.
      */
     ObjectName getObjectName();
diff --git a/java/org/apache/catalina/WebResource.java 
b/java/org/apache/catalina/WebResource.java
index a81455d817..eef127c437 100644
--- a/java/org/apache/catalina/WebResource.java
+++ b/java/org/apache/catalina/WebResource.java
@@ -26,17 +26,23 @@ import java.util.jar.Manifest;
  */
 public interface WebResource {
     /**
+     * Returns the last modified time.
+     *
      * @return {@link java.io.File#lastModified()}.
      */
     long getLastModified();
 
     /**
+     * Returns the last modified time in HTTP format.
+     *
      * @return the last modified time of this resource in the correct format 
for the HTTP Last-Modified header as
      *             specified by RFC 2616.
      */
     String getLastModifiedHttp();
 
     /**
+     * Checks if this resource exists.
+     *
      * @return {@link java.io.File#exists()}.
      */
     boolean exists();
@@ -51,48 +57,64 @@ public interface WebResource {
     boolean isVirtual();
 
     /**
+     * Checks if this resource is a directory.
+     *
      * @return {@link java.io.File#isDirectory()}.
      */
     boolean isDirectory();
 
     /**
+     * Checks if this resource is a file.
+     *
      * @return {@link java.io.File#isFile()}.
      */
     boolean isFile();
 
     /**
+     * Deletes this resource.
+     *
      * @return {@link java.io.File#delete()}.
      */
     boolean delete();
 
     /**
+     * Returns the name of this resource.
+     *
      * @return {@link java.io.File#getName()}.
      */
     String getName();
 
     /**
+     * Returns the content length of this resource.
+     *
      * @return {@link java.io.File#length()}.
      */
     long getContentLength();
 
     /**
+     * Returns the canonical path of this resource.
+     *
      * @return {@link java.io.File#getCanonicalPath()}.
      */
     String getCanonicalPath();
 
     /**
+     * Checks if this resource can be read.
+     *
      * @return {@link java.io.File#canRead()}.
      */
     boolean canRead();
 
     /**
+     * Returns the webapp path of this resource.
+     *
      * @return The path of this resource relative to the web application root. 
If the resource is a directory, the
      *             return value will end in '/'.
      */
     String getWebappPath();
 
     /**
-     * Return the weak ETag calculated from the content length and last 
modified.
+     * Returns the weak ETag calculated from the content length and last 
modified.
      *
      * @return The ETag for this resource
      */
@@ -116,12 +138,14 @@ public interface WebResource {
     void setMimeType(String mimeType);
 
     /**
+     * Returns the MIME type for this Resource.
+     *
      * @return the MIME type for this Resource.
      */
     String getMimeType();
 
     /**
-     * Obtain an InputStream based on the contents of this resource.
+     * Obtains an InputStream based on the contents of this resource.
      *
      * @return An InputStream based on the contents of this resource or 
<code>null</code> if the resource does not exist
      *             or does not represent a file
@@ -129,18 +153,24 @@ public interface WebResource {
     InputStream getInputStream();
 
     /**
+     * Returns the binary content of this resource.
+     *
      * @return the binary content of this resource or {@code null} if it is 
not available in a byte[] because, for
      *             example, it is too big.
      */
     byte[] getContent();
 
     /**
+     * Returns the creation time of this resource.
+     *
      * @return The time the file was created. If not available, the result of 
{@link #getLastModified()} will be
      *             returned.
      */
     long getCreation();
 
     /**
+     * Returns a URL to access this resource.
+     *
      * @return a URL to access the resource or <code>null</code> if no such 
URL is available or if the resource does not
      *             exist.
      */
@@ -160,11 +190,15 @@ public interface WebResource {
     }
 
     /**
+     * Returns a reference to the WebResourceRoot of which this WebResource is 
a part.
+     *
      * @return a reference to the WebResourceRoot of which this WebResource is 
a part.
      */
     WebResourceRoot getWebResourceRoot();
 
     /**
+     * Returns the certificates that were used to sign this resource to verify 
it.
+     *
      * @return the certificates that were used to sign this resource to verify 
it or @null if none.
      *
      * @see java.util.jar.JarEntry#getCertificates()
@@ -172,6 +206,8 @@ public interface WebResource {
     Certificate[] getCertificates();
 
     /**
+     * Returns the manifest associated with this resource.
+     *
      * @return the manifest associated with this resource or @null if none.
      *
      * @see java.util.jar.JarFile#getManifest()
diff --git a/java/org/apache/catalina/WebResourceRoot.java 
b/java/org/apache/catalina/WebResourceRoot.java
index 180721885b..42820e84e9 100644
--- a/java/org/apache/catalina/WebResourceRoot.java
+++ b/java/org/apache/catalina/WebResourceRoot.java
@@ -207,6 +207,8 @@ public interface WebResourceRoot extends Lifecycle {
     void addPreResources(WebResourceSet webResourceSet);
 
     /**
+     * Returns the array of WebResourceSet configured to this web application 
as a 'Pre' resource.
+     *
      * @return the array of WebResourceSet configured to this web application 
as a 'Pre' resource.
      */
     WebResourceSet[] getPreResources();
@@ -219,6 +221,8 @@ public interface WebResourceRoot extends Lifecycle {
     void addJarResources(WebResourceSet webResourceSet);
 
     /**
+     * Returns the array of WebResourceSet configured to this web application 
as a 'Jar' resource.
+     *
      * @return the array of WebResourceSet configured to this web application 
as a 'Jar' resource.
      */
     WebResourceSet[] getJarResources();
@@ -231,11 +235,15 @@ public interface WebResourceRoot extends Lifecycle {
     void addPostResources(WebResourceSet webResourceSet);
 
     /**
+     * Returns the array of WebResourceSet configured to this web application 
as a 'Post' resource.
+     *
      * @return the array of WebResourceSet configured to this web application 
as a 'Post' resource.
      */
     WebResourceSet[] getPostResources();
 
     /**
+     * Returns the web application this WebResourceRoot is associated with.
+     *
      * @return the web application this WebResourceRoot is associated with.
      */
     Context getContext();
@@ -271,6 +279,8 @@ public interface WebResourceRoot extends Lifecycle {
     void setCachingAllowed(boolean cachingAllowed);
 
     /**
+     * Checks if caching is permitted for this web application.
+     *
      * @return <code>true</code> if caching is permitted for this web 
application.
      */
     boolean isCachingAllowed();
@@ -428,6 +438,8 @@ public interface WebResourceRoot extends Lifecycle {
     }
 
     /**
+     * Checks if the main resources are read only.
+     *
      * @return {@code true} if the main resources are read only, otherwise 
{@code false}. The default implementation
      *             returns {@code false}.
      */
diff --git a/java/org/apache/catalina/ant/AbstractCatalinaCommandTask.java 
b/java/org/apache/catalina/ant/AbstractCatalinaCommandTask.java
index 8c4b2af060..3f385c148a 100644
--- a/java/org/apache/catalina/ant/AbstractCatalinaCommandTask.java
+++ b/java/org/apache/catalina/ant/AbstractCatalinaCommandTask.java
@@ -21,6 +21,9 @@ import java.net.URLEncoder;
 
 import org.apache.tools.ant.BuildException;
 
+/**
+ * Abstract task for Catalina commands.
+ */
 public abstract class AbstractCatalinaCommandTask extends AbstractCatalinaTask 
{
 
     /**
@@ -28,10 +31,20 @@ public abstract class AbstractCatalinaCommandTask extends 
AbstractCatalinaTask {
      */
     protected String path = null;
 
+    /**
+     * Returns the path.
+     *
+     * @return the path
+     */
     public String getPath() {
         return this.path;
     }
 
+    /**
+     * Sets the path.
+     *
+     * @param path The path to set
+     */
     public void setPath(String path) {
         this.path = path;
     }
@@ -41,10 +54,20 @@ public abstract class AbstractCatalinaCommandTask extends 
AbstractCatalinaTask {
      */
     protected String version = null;
 
+    /**
+     * Returns the version.
+     *
+     * @return the version
+     */
     public String getVersion() {
         return this.version;
     }
 
+    /**
+     * Sets the version.
+     *
+     * @param version The version to set
+     */
     public void setVersion(String version) {
         this.version = version;
     }
diff --git a/java/org/apache/catalina/ha/tcp/SendMessageData.java 
b/java/org/apache/catalina/ha/tcp/SendMessageData.java
index 2fa5ce4c56..909e88bac6 100644
--- a/java/org/apache/catalina/ha/tcp/SendMessageData.java
+++ b/java/org/apache/catalina/ha/tcp/SendMessageData.java
@@ -19,6 +19,8 @@ package org.apache.catalina.ha.tcp;
 import org.apache.catalina.tribes.Member;
 
 /**
+ * Data about a message send operation.
+ *
  * @param message     The message that was sent
  * @param destination The destination of the message
  * @param exception   The exception, if any, when attempting to send the 
message
diff --git a/java/org/apache/catalina/tribes/group/AbsoluteOrder.java 
b/java/org/apache/catalina/tribes/group/AbsoluteOrder.java
index 97faf184c1..a61a4ba16a 100644
--- a/java/org/apache/catalina/tribes/group/AbsoluteOrder.java
+++ b/java/org/apache/catalina/tribes/group/AbsoluteOrder.java
@@ -46,13 +46,24 @@ import org.apache.catalina.tribes.Member;
  * @see org.apache.catalina.tribes.Member
  */
 public class AbsoluteOrder {
+    /**
+     * The comparator for absolute order.
+     */
     public static final AbsoluteComparator comp = new AbsoluteComparator();
 
+    /**
+     * Protected constructor.
+     */
     protected AbsoluteOrder() {
         super();
     }
 
 
+    /**
+     * Sort the members in absolute order.
+     *
+     * @param members The members to sort
+     */
     public static void absoluteOrder(Member[] members) {
         if (members == null || members.length <= 1) {
             return;
@@ -60,6 +71,11 @@ public class AbsoluteOrder {
         Arrays.sort(members, comp);
     }
 
+    /**
+     * Sort the members in absolute order.
+     *
+     * @param members The members to sort
+     */
     public static void absoluteOrder(List<Member> members) {
         if (members == null || members.size() <= 1) {
             return;
@@ -67,11 +83,20 @@ public class AbsoluteOrder {
         members.sort(comp);
     }
 
+    /**
+     * A comparator for absolute ordering of members.
+     */
     public static class AbsoluteComparator implements Comparator<Member>, 
Serializable {
 
         @Serial
         private static final long serialVersionUID = 1L;
 
+        /**
+         * Default constructor.
+         */
+        public AbsoluteComparator() {
+        }
+
         @Override
         public int compare(Member m1, Member m2) {
             int result = compareIps(m1, m2);
diff --git a/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java 
b/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
index 7ba186ead1..5078b1967a 100644
--- a/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
+++ b/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
@@ -50,6 +50,8 @@ import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 
 /**
+ * An abstract replicated map implementation.
+ *
  * @param <K> The type of Key
  * @param <V> The type of Value
  */
diff --git a/java/org/apache/catalina/valves/AbstractAccessLogValve.java 
b/java/org/apache/catalina/valves/AbstractAccessLogValve.java
index 5ed525e5ab..37d44174e9 100644
--- a/java/org/apache/catalina/valves/AbstractAccessLogValve.java
+++ b/java/org/apache/catalina/valves/AbstractAccessLogValve.java
@@ -287,6 +287,9 @@ public abstract class AbstractAccessLogValve extends 
ValveBase implements Access
             /* Helper object to be able to call SimpleDateFormat.format(). */
             private final Date currentDate = new Date();
 
+            /**
+             * The cached values.
+             */
             protected final String[] cache;
             private final SimpleDateFormat formatter;
             private boolean isCLF = false;
@@ -419,6 +422,9 @@ public abstract class AbstractAccessLogValve extends 
ValveBase implements Access
 
         private final Locale cacheDefaultLocale;
         private final DateFormatCache parent;
+        /**
+         * The cache for CLF format.
+         */
         protected final Cache cLFCache;
         private final Map<String,Cache> formatCache = new HashMap<>();
 
@@ -573,21 +579,38 @@ public abstract class AbstractAccessLogValve extends 
ValveBase implements Access
 
     // ------------------------------------------------------------- Properties
 
+    /**
+     * Returns the max log message buffer size.
+     *
+     * @return the max log message buffer size.
+     */
     public int getMaxLogMessageBufferSize() {
         return maxLogMessageBufferSize;
     }
 
-
+    /**
+     * Sets the max log message buffer size.
+     *
+     * @param maxLogMessageBufferSize The max log message buffer size.
+     */
     public void setMaxLogMessageBufferSize(int maxLogMessageBufferSize) {
         this.maxLogMessageBufferSize = maxLogMessageBufferSize;
     }
 
-
+    /**
+     * Returns the ipv6 canonical flag.
+     *
+     * @return the ipv6 canonical flag.
+     */
     public boolean getIpv6Canonical() {
         return ipv6Canonical;
     }
 
-
+    /**
+     * Sets the ipv6 canonical flag.
+     *
+     * @param ipv6Canonical The ipv6 canonical flag.
+     */
     public void setIpv6Canonical(boolean ipv6Canonical) {
         this.ipv6Canonical = ipv6Canonical;
     }
@@ -608,6 +631,8 @@ public abstract class AbstractAccessLogValve extends 
ValveBase implements Access
     }
 
     /**
+     * Returns the enabled flag.
+     *
      * @return the enabled flag.
      */
     public boolean getEnabled() {
@@ -615,6 +640,8 @@ public abstract class AbstractAccessLogValve extends 
ValveBase implements Access
     }
 
     /**
+     * Sets the enabled flag.
+     *
      * @param enabled The enabled to set.
      */
     public void setEnabled(boolean enabled) {
@@ -622,6 +649,8 @@ public abstract class AbstractAccessLogValve extends 
ValveBase implements Access
     }
 
     /**
+     * Returns the format pattern.
+     *
      * @return the format pattern.
      */
     public String getPattern() {
@@ -1956,7 +1985,7 @@ public abstract class AbstractAccessLogValve extends 
ValveBase implements Access
         }
     }
 
-/**
+    /**
      * Write connection status when response is completed - %X.
      */
     protected static class ConnectionStatusElement implements AccessLogElement 
{
diff --git a/java/org/apache/catalina/webresources/AbstractArchiveResource.java 
b/java/org/apache/catalina/webresources/AbstractArchiveResource.java
index f7e2914dec..19ecebe0f0 100644
--- a/java/org/apache/catalina/webresources/AbstractArchiveResource.java
+++ b/java/org/apache/catalina/webresources/AbstractArchiveResource.java
@@ -30,6 +30,9 @@ import java.util.jar.Manifest;
 
 import org.apache.catalina.util.URLEncoder;
 
+/**
+ * Abstract resource implementation for archive-based resources.
+ */
 public abstract class AbstractArchiveResource extends AbstractResource {
 
     private final AbstractArchiveResourceSet archiveResourceSet;
@@ -42,6 +45,11 @@ public abstract class AbstractArchiveResource extends 
AbstractResource {
 
     /*
      * Deprecated even though this is the "new" constructor as code needs to 
call the old constructor for now.
+     *
+     * @param archiveResourceSet The archive resource set
+     * @param webAppPath         The web application path
+     * @param baseUrl            The base URL
+     * @param jarEntry           The JAR entry
      */
     @Deprecated
     protected AbstractArchiveResource(AbstractArchiveResourceSet 
archiveResourceSet, String webAppPath, String baseUrl,
@@ -54,6 +62,12 @@ public abstract class AbstractArchiveResource extends 
AbstractResource {
      * from the JRE and it has been confirmed that the JRE no longer depends 
on code base.
      *
      * See https://bz.apache.org/bugzilla/show_bug.cgi?id=69426
+     *
+     * @param archiveResourceSet The archive resource set
+     * @param webAppPath         The web application path
+     * @param baseUrl            The base URL
+     * @param jarEntry           The JAR entry
+     * @param codeBaseUrl        The code base URL
      */
     protected AbstractArchiveResource(AbstractArchiveResourceSet 
archiveResourceSet, String webAppPath, String baseUrl,
             JarEntry jarEntry, String codeBaseUrl) {
@@ -80,18 +94,38 @@ public abstract class AbstractArchiveResource extends 
AbstractResource {
         }
     }
 
+    /**
+     * Returns the archive resource set.
+     *
+     * @return the archive resource set
+     */
     protected AbstractArchiveResourceSet getArchiveResourceSet() {
         return archiveResourceSet;
     }
 
+    /**
+     * Returns the base.
+     *
+     * @return the base
+     */
     protected final String getBase() {
         return archiveResourceSet.getBase();
     }
 
+    /**
+     * Returns the base URL.
+     *
+     * @return the base URL
+     */
     protected final String getBaseUrl() {
         return baseUrl;
     }
 
+    /**
+     * Returns the resource.
+     *
+     * @return the resource
+     */
     protected final JarEntry getResource() {
         return resource;
     }
@@ -261,6 +295,12 @@ public abstract class AbstractArchiveResource extends 
AbstractResource {
         private final AtomicBoolean closed = new AtomicBoolean(false);
 
 
+        /**
+          * Creates a new JarInputStreamWrapper.
+          *
+          * @param jarEntry The JAR entry
+          * @param is       The input stream
+          */
         public JarInputStreamWrapper(JarEntry jarEntry, InputStream is) {
             this.jarEntry = jarEntry;
             this.is = is;
@@ -324,6 +364,11 @@ public abstract class AbstractArchiveResource extends 
AbstractResource {
             return is.markSupported();
         }
 
+        /**
+         * Returns the certificates.
+         *
+         * @return the certificates
+         */
         public Certificate[] getCertificates() {
             return jarEntry.getCertificates();
         }
diff --git 
a/java/org/apache/catalina/webresources/AbstractArchiveResourceSet.java 
b/java/org/apache/catalina/webresources/AbstractArchiveResourceSet.java
index 0937ff9c2d..554ee771fa 100644
--- a/java/org/apache/catalina/webresources/AbstractArchiveResourceSet.java
+++ b/java/org/apache/catalina/webresources/AbstractArchiveResourceSet.java
@@ -34,19 +34,45 @@ import org.apache.catalina.util.ResourceSet;
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 
+/**
+ * Abstract resource set implementation for archive-based resources.
+ */
 public abstract class AbstractArchiveResourceSet extends AbstractResourceSet {
 
     private static final Log log = 
LogFactory.getLog(AbstractArchiveResourceSet.class);
 
     private URL baseUrl;
     private String baseUrlString;
+    /**
+     * The archive JAR file.
+     */
     protected JarFile archive = null;
+    /**
+     * The archive entries.
+     */
     protected Map<String,JarEntry> archiveEntries = null;
+    /**
+     * The lock for archive operations.
+     */
     protected final Object archiveLock = new Object();
+    /**
+     * The archive use count.
+     */
     protected long archiveUseCount = 0;
+    /**
+     * The JAR contents.
+     */
     protected JarContents jarContents;
+    /**
+     * Whether to retain the bloom filter for archives.
+     */
     protected boolean retainBloomFilterForArchives = false;
 
+    /**
+     * Sets the base URL.
+     *
+     * @param baseUrl The base URL
+     */
     protected final void setBaseUrl(URL baseUrl) {
         this.baseUrl = baseUrl;
         if (baseUrl == null) {
@@ -61,6 +87,11 @@ public abstract class AbstractArchiveResourceSet extends 
AbstractResourceSet {
         return baseUrl;
     }
 
+    /**
+     * Returns the base URL string.
+     *
+     * @return the base URL string
+     */
     protected final String getBaseUrlString() {
         return baseUrlString;
     }
@@ -279,8 +310,21 @@ public abstract class AbstractArchiveResourceSet extends 
AbstractResourceSet {
         }
     }
 
+    /**
+     * Checks if this is a multi-release JAR.
+     *
+     * @return true if this is a multi-release JAR, false otherwise
+     */
     protected abstract boolean isMultiRelease();
 
+    /**
+     * Creates an archive resource.
+     *
+     * @param jarEntry   The JAR entry
+     * @param webAppPath The web application path
+     * @param manifest   The manifest
+     * @return the archive resource
+     */
     protected abstract WebResource createArchiveResource(JarEntry jarEntry, 
String webAppPath, Manifest manifest);
 
     @Override
@@ -332,6 +376,9 @@ public abstract class AbstractArchiveResourceSet extends 
AbstractResourceSet {
         }
     }
 
+    /**
+     * Closes the JAR file.
+     */
     protected void closeJarFile() {
         synchronized (archiveLock) {
             archiveUseCount--;
diff --git a/java/org/apache/catalina/webresources/AbstractResource.java 
b/java/org/apache/catalina/webresources/AbstractResource.java
index bfc543a52e..ed114ce8b2 100644
--- a/java/org/apache/catalina/webresources/AbstractResource.java
+++ b/java/org/apache/catalina/webresources/AbstractResource.java
@@ -151,6 +151,11 @@ public abstract class AbstractResource implements 
WebResource {
         return new TrackedInputStream(root, getName(), is);
     }
 
+    /**
+     * Returns the input stream for this resource.
+     *
+     * @return the input stream for this resource
+     */
     protected abstract InputStream doGetInputStream();
 
 
diff --git a/java/org/apache/coyote/AbstractProtocol.java 
b/java/org/apache/coyote/AbstractProtocol.java
index 56e5241559..17060635e8 100644
--- a/java/org/apache/coyote/AbstractProtocol.java
+++ b/java/org/apache/coyote/AbstractProtocol.java
@@ -785,6 +785,13 @@ public abstract class AbstractProtocol<S> implements 
ProtocolHandler, MBeanRegis
     protected abstract Processor createProcessor();
 
 
+    /**
+     * Create and configure a new Processor instance for upgrade connections.
+     *
+     * @param socket       The socket for the upgrade connection
+     * @param upgradeToken The upgrade token containing upgrade information
+     * @return A fully configured Processor instance that is ready to use
+     */
     protected abstract Processor createUpgradeProcessor(SocketWrapperBase<?> 
socket, UpgradeToken upgradeToken);
 
 
diff --git a/java/org/apache/coyote/UpgradeProtocol.java 
b/java/org/apache/coyote/UpgradeProtocol.java
index 96db49e0c2..0e98608fc3 100644
--- a/java/org/apache/coyote/UpgradeProtocol.java
+++ b/java/org/apache/coyote/UpgradeProtocol.java
@@ -23,6 +23,8 @@ import org.apache.tomcat.util.net.SocketWrapperBase;
 public interface UpgradeProtocol {
 
     /**
+     * Returns the name that clients will use to request an upgrade to this 
protocol.
+     *
      * @param isSSLEnabled Is this for a connector that is configured to 
support TLS. Some protocols (e.g. HTTP/2) only
      *                         support HTTP upgrade over non-secure 
connections.
      *
@@ -32,12 +34,16 @@ public interface UpgradeProtocol {
     String getHttpUpgradeName(boolean isSSLEnabled);
 
     /**
+     * Returns the byte sequence as listed in the IANA registry for this 
protocol.
+     *
      * @return The byte sequence as listed in the IANA registry for this 
protocol or <code>null</code> if upgrade via
      *             ALPN is not supported.
      */
     byte[] getAlpnIdentifier();
 
     /**
+     * Returns the name of the protocol as listed in the IANA registry.
+     *
      * @return The name of the protocol as listed in the IANA registry if and 
only if {@link #getAlpnIdentifier()}
      *             returns the UTF-8 encoding of this name. If {@link 
#getAlpnIdentifier()} returns some other byte
      *             sequence, then this method returns the empty string. If 
upgrade via ALPN is not supported then
@@ -53,6 +59,8 @@ public interface UpgradeProtocol {
     String getAlpnName();
 
     /**
+     * Returns a processor instance for processing a connection using this 
protocol.
+     *
      * @param socketWrapper The socketWrapper for the connection that requires 
a processor
      * @param adapter       The Adapter instance that provides access to the 
standard Engine/Host/Context/Wrapper
      *                          processing chain
@@ -63,6 +71,8 @@ public interface UpgradeProtocol {
 
 
     /**
+     * Returns an instance of the HTTP upgrade handler for this protocol.
+     *
      * @param socketWrapper The socket
      * @param adapter       The Adapter to use to configure the new upgrade 
handler
      * @param request       A copy (may be incomplete) of the request that 
triggered the upgrade
diff --git a/java/org/apache/el/ExpressionFactoryImpl.java 
b/java/org/apache/el/ExpressionFactoryImpl.java
index 11437e9261..24435b8457 100644
--- a/java/org/apache/el/ExpressionFactoryImpl.java
+++ b/java/org/apache/el/ExpressionFactoryImpl.java
@@ -29,7 +29,7 @@ import org.apache.el.util.ExceptionUtils;
 import org.apache.el.util.MessageFactory;
 
 /**
- * @see jakarta.el.ExpressionFactory
+ * Implementation of {@link jakarta.el.ExpressionFactory}.
  */
 @aQute.bnd.annotation.spi.ServiceProvider(value = ExpressionFactory.class)
 public class ExpressionFactoryImpl extends ExpressionFactory {
diff --git a/java/org/apache/jasper/compiler/TextOptimizer.java 
b/java/org/apache/jasper/compiler/TextOptimizer.java
index 43b082e3ab..054f8d0ffc 100644
--- a/java/org/apache/jasper/compiler/TextOptimizer.java
+++ b/java/org/apache/jasper/compiler/TextOptimizer.java
@@ -21,6 +21,7 @@ import org.apache.jasper.Options;
 import org.apache.jasper.TrimSpacesOption;
 
 /**
+ * Optimizes text in JSP pages.
  */
 public class TextOptimizer {
 
diff --git a/java/org/apache/tomcat/util/net/AbstractEndpoint.java 
b/java/org/apache/tomcat/util/net/AbstractEndpoint.java
index 274712b8d8..ffa1567846 100644
--- a/java/org/apache/tomcat/util/net/AbstractEndpoint.java
+++ b/java/org/apache/tomcat/util/net/AbstractEndpoint.java
@@ -68,6 +68,8 @@ import org.apache.tomcat.util.threads.ThreadPoolExecutor;
 import org.apache.tomcat.util.threads.VirtualThreadExecutor;
 
 /**
+ * Abstract endpoint implementation.
+ *
  * @param <S> The type used by the socket wrapper associated with this 
endpoint. Might be the same as U.
  * @param <U> The type of the underlying socket used by this endpoint. Might 
be the same as S.
  */


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to