You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2021/08/26 10:57:22 UTC

[tomcat] branch 8.5.x updated: Fix Javadoc warnings for Servlet API when building with Java 16

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

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


The following commit(s) were added to refs/heads/8.5.x by this push:
     new 3493398  Fix Javadoc warnings for Servlet API when building with Java 16
3493398 is described below

commit 349339874558de22a046fd0bdb002d179aab367f
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Thu Aug 26 11:45:09 2021 +0100

    Fix Javadoc warnings for Servlet API when building with Java 16
---
 java/javax/servlet/AsyncContext.java               | 58 ++++++++++++++-
 java/javax/servlet/MultipartConfigElement.java     | 50 ++++++++++++-
 java/javax/servlet/Registration.java               | 11 +++
 java/javax/servlet/ServletContext.java             |  7 ++
 .../servlet/ServletContextAttributeEvent.java      |  7 ++
 java/javax/servlet/ServletRegistration.java        | 40 +++++++++++
 .../servlet/ServletRequestAttributeEvent.java      |  7 ++
 java/javax/servlet/ServletSecurityElement.java     | 16 ++++-
 java/javax/servlet/SessionCookieConfig.java        | 37 +++++++++-
 java/javax/servlet/SessionTrackingMode.java        | 13 ++++
 java/javax/servlet/UnavailableException.java       | 17 ++++-
 .../servlet/descriptor/JspConfigDescriptor.java    | 21 +++++-
 .../descriptor/JspPropertyGroupDescriptor.java     | 82 +++++++++++++++++++++-
 .../javax/servlet/descriptor/TaglibDescriptor.java | 15 +++-
 java/javax/servlet/http/Cookie.java                | 42 +++++++++--
 .../servlet/http/HttpSessionBindingEvent.java      |  8 ++-
 .../catalina/core/ApplicationMappingMatch.java     | 22 ++++++
 17 files changed, 434 insertions(+), 19 deletions(-)

diff --git a/java/javax/servlet/AsyncContext.java b/java/javax/servlet/AsyncContext.java
index 2ddc1e8..30052f9 100644
--- a/java/javax/servlet/AsyncContext.java
+++ b/java/javax/servlet/AsyncContext.java
@@ -18,24 +18,52 @@ package javax.servlet;
 
 /**
  * TODO SERVLET3 - Add comments
- * @since Servlet 3.0
  */
 public interface AsyncContext {
+
+    /**
+     * The attribute name for the URI of the async request
+     */
     public static final String ASYNC_REQUEST_URI =
             "javax.servlet.async.request_uri";
+
+    /**
+     * The attribute name for the Context Path of the async request
+     */
     public static final String ASYNC_CONTEXT_PATH  =
             "javax.servlet.async.context_path";
+
+    /**
+     * The attribute name for the Path Info of the async request
+     */
     public static final String ASYNC_PATH_INFO =
             "javax.servlet.async.path_info";
+
+    /**
+     * The attribute name for the Servlet Path of the async request
+     */
     public static final String ASYNC_SERVLET_PATH =
             "javax.servlet.async.servlet_path";
+
+    /**
+     * The attribute name for the Query String of the async request
+     */
     public static final String ASYNC_QUERY_STRING =
             "javax.servlet.async.query_string";
 
+    /**
+     * @return a reference to the ServletRequest object
+     */
     ServletRequest getRequest();
 
+    /**
+     * @return a reference to the ServletResponse object
+     */
     ServletResponse getResponse();
 
+    /**
+     * @return true if the Request and Response are the original ones
+     */
     boolean hasOriginalRequestAndResponse();
 
     /**
@@ -77,15 +105,43 @@ public interface AsyncContext {
      */
     void dispatch(ServletContext context, String path);
 
+    /**
+     * Completes the async request processing and closes the response stream
+     */
     void complete();
 
+    /**
+     * Starts a new thread to process the asynchronous request
+     *
+     * @param run a Runnable that the new thread will run
+     */
     void start(Runnable run);
 
+    /**
+     * Adds an event listener that will be called for different AsyncEvents fire
+     *
+     * @param listener an AsyncListener that will be called with AsyncEvent objects
+     */
     void addListener(AsyncListener listener);
 
+    /**
+     * Adds an event listener that will be called when different AsyncEvents fire
+     *
+     * @param listener an AsyncListener that will be called with AsyncEvent objects
+     * @param request the ServletRequest that will be passed with the AsyncEvent
+     * @param response the ServletResponse that will be passed with the AsyncEvent
+     */
     void addListener(AsyncListener listener, ServletRequest request,
             ServletResponse response);
 
+    /**
+     * Creates and returns an AsyncListener object
+     *
+     * @param <T> The type to create that extends AsyncListener
+     * @param clazz The class to instantiate to create the listener
+     * @return the newly created AsyncListener object
+     * @throws ServletException if the listener cannot be created
+     */
     <T extends AsyncListener> T createListener(Class<T> clazz)
     throws ServletException;
 
diff --git a/java/javax/servlet/MultipartConfigElement.java b/java/javax/servlet/MultipartConfigElement.java
index a2c6c06..3a0952f 100644
--- a/java/javax/servlet/MultipartConfigElement.java
+++ b/java/javax/servlet/MultipartConfigElement.java
@@ -19,8 +19,11 @@ package javax.servlet;
 import javax.servlet.annotation.MultipartConfig;
 
 /**
+ * The programmatic equivalent of
+ * {@link javax.servlet.annotation.MultipartConfig} used to configure
+ * multi-part handling for a Servlet when registering a Servlet via code.
+ *
  * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
  */
 public class MultipartConfigElement {
 
@@ -29,6 +32,12 @@ public class MultipartConfigElement {
     private final long maxRequestSize;// = -1;
     private final int fileSizeThreshold;// = 0;
 
+    /**
+     * Create a programmatic multi-part configuration with a specific location
+     * and defaults for the remaining configuration elements.
+     *
+     * @param location          The temporary location to store files
+     */
     public MultipartConfigElement(String location) {
         // Keep empty string default if location is null
         if (location != null) {
@@ -41,6 +50,17 @@ public class MultipartConfigElement {
         this.fileSizeThreshold = 0;
     }
 
+    /**
+     * Create a programmatic multi-part configuration from the individual
+     * configuration elements.
+     *
+     * @param location          The temporary location to store files
+     * @param maxFileSize       The maximum permitted size for a single file
+     * @param maxRequestSize    The maximum permitted size for a request
+     * @param fileSizeThreshold The size above which the file is save in the
+     *                              temporary location rather than retained in
+     *                              memory.
+     */
     public MultipartConfigElement(String location, long maxFileSize,
             long maxRequestSize, int fileSizeThreshold) {
         // Keep empty string default if location is null
@@ -60,6 +80,12 @@ public class MultipartConfigElement {
         }
     }
 
+    /**
+     * Create a programmatic configuration from an annotation.
+     *
+     * @param annotation The source annotation to copy to create the
+     *                   programmatic equivalent.
+     */
     public MultipartConfigElement(MultipartConfig annotation) {
         location = annotation.location();
         maxFileSize = annotation.maxFileSize();
@@ -67,18 +93,40 @@ public class MultipartConfigElement {
         fileSizeThreshold = annotation.fileSizeThreshold();
     }
 
+    /**
+     * Obtain the location where temporary files should be stored.
+     *
+     * @return the location where temporary files should be stored.
+     */
     public String getLocation() {
         return location;
     }
 
+    /**
+     * Obtain the maximum permitted size for a single file.
+     *
+     * @return the maximum permitted size for a single file.
+     */
     public long getMaxFileSize() {
         return maxFileSize;
     }
 
+    /**
+     * Obtain the maximum permitted size for a single request.
+     *
+     * @return the maximum permitted size for a single request.
+     */
     public long getMaxRequestSize() {
         return maxRequestSize;
     }
 
+    /**
+     * Obtain the size above which the file is save in the temporary location
+     * rather than retained in memory.
+     *
+     * @return the size above which the file is save in the temporary location
+     * rather than retained in memory.
+     */
     public int getFileSizeThreshold() {
         return fileSizeThreshold;
     }
diff --git a/java/javax/servlet/Registration.java b/java/javax/servlet/Registration.java
index 49ecd9c..6e76c74 100644
--- a/java/javax/servlet/Registration.java
+++ b/java/javax/servlet/Registration.java
@@ -21,12 +21,23 @@ import java.util.Set;
 
 /**
  * Common interface for the registration of Filters and Servlets.
+ *
  * @since Servlet 3.0
  */
 public interface Registration {
 
+    /**
+     * Obtain the name of the Servlet.
+     *
+     * @return the name of the Servlet.
+     */
     public String getName();
 
+    /**
+     * Obtain the name of the implementation class for the Servlet.
+     *
+     * @return the name of the implementation class for the Servlet.
+     */
     public String getClassName();
 
     /**
diff --git a/java/javax/servlet/ServletContext.java b/java/javax/servlet/ServletContext.java
index 03147c1..94730e3 100644
--- a/java/javax/servlet/ServletContext.java
+++ b/java/javax/servlet/ServletContext.java
@@ -51,9 +51,16 @@ import javax.servlet.descriptor.JspConfigDescriptor;
  */
 public interface ServletContext {
 
+    /**
+     * The name of the ServletContext attribute that holds the temporary file
+     * location for the web application.
+     */
     public static final String TEMPDIR = "javax.servlet.context.tempdir";
 
     /**
+     * The name of the ServletContext attribute that holds the ordered list of
+     * web fragments for this web application.
+     *
      * @since Servlet 3.0
      */
     public static final String ORDERED_LIBS = "javax.servlet.context.orderedLibs";
diff --git a/java/javax/servlet/ServletContextAttributeEvent.java b/java/javax/servlet/ServletContextAttributeEvent.java
index 9373b81..03be444 100644
--- a/java/javax/servlet/ServletContextAttributeEvent.java
+++ b/java/javax/servlet/ServletContextAttributeEvent.java
@@ -26,7 +26,14 @@ package javax.servlet;
 public class ServletContextAttributeEvent extends ServletContextEvent {
     private static final long serialVersionUID = 1L;
 
+    /**
+     * Attribute name.
+     */
     private final String name;
+
+    /**
+     * Attribute value.
+     */
     private final Object value;
 
     /**
diff --git a/java/javax/servlet/ServletRegistration.java b/java/javax/servlet/ServletRegistration.java
index d31611b..33672dc 100644
--- a/java/javax/servlet/ServletRegistration.java
+++ b/java/javax/servlet/ServletRegistration.java
@@ -58,6 +58,13 @@ public interface ServletRegistration extends Registration {
      */
     public Collection<String> getMappings();
 
+    /**
+     * Obtain the name of the user / group under which the Servlet has been
+     * configured to run.
+     *
+     * @return the name of the user / group or {@code null} if none has been
+     *         specified
+     */
     public String getRunAsRole();
 
     /**
@@ -65,9 +72,42 @@ public interface ServletRegistration extends Registration {
      * methods on ServletContext may be further configured.
      */
     public static interface Dynamic extends ServletRegistration, Registration.Dynamic {
+
+        /**
+         * Set the loadOnStartup order for the Servlet
+         *
+         * @param loadOnStartup The position in the order the Servlet should be
+         *                      started (higher numbers are started after lower
+         *                      numbers)
+         */
         public void setLoadOnStartup(int loadOnStartup);
+
+        /**
+         * Add security constraints to this Servlet.
+         *
+         * @param constraint new security constraints for this Servlet
+         *
+         * @return urls currently mapped to this registration that are already
+         *         present in web.xml
+         */
         public Set<String> setServletSecurity(ServletSecurityElement constraint);
+
+        /**
+         * Set the multi-part configuration for the associated Servlet. To clear
+         * the multi-part configuration specify <code>null</code> as the new
+         * value.
+         *
+         * @param multipartConfig The configuration to associate with the
+         *                        Servlet
+         */
         public void setMultipartConfig(MultipartConfigElement multipartConfig);
+
+        /**
+         * Set the name of the user / group under which the Servlet should be
+         * configured to run.
+         *
+         * @param roleName name of the user / group or {@code null} if none
+         */
         public void setRunAsRole(String roleName);
     }
 }
diff --git a/java/javax/servlet/ServletRequestAttributeEvent.java b/java/javax/servlet/ServletRequestAttributeEvent.java
index 9b25184..30dfb93 100644
--- a/java/javax/servlet/ServletRequestAttributeEvent.java
+++ b/java/javax/servlet/ServletRequestAttributeEvent.java
@@ -26,7 +26,14 @@ package javax.servlet;
 public class ServletRequestAttributeEvent extends ServletRequestEvent {
     private static final long serialVersionUID = 1L;
 
+    /**
+     * Attribute name.
+     */
     private final String name;
+
+    /**
+     * Attribute value.
+     */
     private final Object value;
 
     /**
diff --git a/java/javax/servlet/ServletSecurityElement.java b/java/javax/servlet/ServletSecurityElement.java
index d7e0116..d0bfa5b 100644
--- a/java/javax/servlet/ServletSecurityElement.java
+++ b/java/javax/servlet/ServletSecurityElement.java
@@ -27,9 +27,11 @@ import javax.servlet.annotation.HttpMethodConstraint;
 import javax.servlet.annotation.ServletSecurity;
 
 /**
+ * The programmatic equivalent of
+ * {@link javax.servlet.annotation.ServletSecurity} used to configre
+ * security constraints for a Servlet.
  *
  * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
  */
 public class ServletSecurityElement extends HttpConstraintElement {
 
@@ -108,11 +110,23 @@ public class ServletSecurityElement extends HttpConstraintElement {
         addHttpMethodConstraints(l);
     }
 
+    /**
+     * Obtain the collection of security constraints configured for specific
+     * methods.
+     *
+     * @return The security constraints for specific methods
+     */
     public Collection<HttpMethodConstraintElement> getHttpMethodConstraints() {
         Collection<HttpMethodConstraintElement> result = new HashSet<>(methodConstraints.values());
         return result;
     }
 
+    /**
+     * Obtain the collection HTTP methods for which security constraints have
+     * been defined.
+     *
+     * @return The names of the HTTP methods
+     */
     public Collection<String> getMethodNames() {
         Collection<String> result = new HashSet<>(methodConstraints.keySet());
         return result;
diff --git a/java/javax/servlet/SessionCookieConfig.java b/java/javax/servlet/SessionCookieConfig.java
index 564a4ed..f56f61f 100644
--- a/java/javax/servlet/SessionCookieConfig.java
+++ b/java/javax/servlet/SessionCookieConfig.java
@@ -34,6 +34,11 @@ public interface SessionCookieConfig {
      */
     public void setName(String name);
 
+    /**
+     * Obtain the name to use for the session cookies.
+     *
+     * @return the name to use for session cookies.
+     */
     public String getName();
 
     /**
@@ -46,6 +51,11 @@ public interface SessionCookieConfig {
      */
     public void setDomain(String domain);
 
+    /**
+     * Obtain the domain to use for session cookies.
+     *
+     * @return the domain to use for session cookies.
+     */
     public String getDomain();
 
     /**
@@ -58,6 +68,12 @@ public interface SessionCookieConfig {
      */
     public void setPath(String path);
 
+    /**
+     * Obtain the path to use for session cookies. This is normally the context
+     * path.
+     *
+     * @return The path to use for session cookies.
+     */
     public String getPath();
 
     /**
@@ -70,6 +86,11 @@ public interface SessionCookieConfig {
      */
     public void setComment(String comment);
 
+    /**
+     * Obtain the comment to use for session cookies.
+     *
+     * @return the comment to use for session cookies.
+     */
     public String getComment();
 
     /**
@@ -82,6 +103,11 @@ public interface SessionCookieConfig {
      */
     public void setHttpOnly(boolean httpOnly);
 
+    /**
+     * Will session cookies be created with the httpOnly flag set?
+     *
+     * @return {@code true} if the flag should be set, otherwise {@code false}
+     */
     public boolean isHttpOnly();
 
     /**
@@ -94,6 +120,11 @@ public interface SessionCookieConfig {
      */
     public void setSecure(boolean secure);
 
+    /**
+     * Will session cookies be created with the secure flag set?
+     *
+     * @return {@code true} if the flag should be set, otherwise {@code false}
+     */
     public boolean isSecure();
 
     /**
@@ -105,6 +136,10 @@ public interface SessionCookieConfig {
      */
     public void setMaxAge(int MaxAge);
 
+    /**
+     * Obtain the maximum age to set for a session cookie.
+     *
+     * @return the maximum age in seconds
+     */
     public int getMaxAge();
-
 }
diff --git a/java/javax/servlet/SessionTrackingMode.java b/java/javax/servlet/SessionTrackingMode.java
index c59fd0c..a97a2b1 100644
--- a/java/javax/servlet/SessionTrackingMode.java
+++ b/java/javax/servlet/SessionTrackingMode.java
@@ -17,10 +17,23 @@
 package javax.servlet;
 
 /**
+ * Defines the permitted options for configuring the session tracking mode.
+ *
  * @since Servlet 3.0
  */
 public enum SessionTrackingMode {
+    /**
+     * Use HTTP cookies.
+     */
     COOKIE,
+
+    /**
+     * Use url rewriting (also known as path parameter)
+     */
     URL,
+
+    /**
+     * Use SSL session.
+     */
     SSL
 }
diff --git a/java/javax/servlet/UnavailableException.java b/java/javax/servlet/UnavailableException.java
index c14d5f5..082129a 100644
--- a/java/javax/servlet/UnavailableException.java
+++ b/java/javax/servlet/UnavailableException.java
@@ -42,9 +42,20 @@ public class UnavailableException extends ServletException {
 
     private static final long serialVersionUID = 1L;
 
-    private final Servlet servlet; // what's unavailable
-    private final boolean permanent; // needs admin action?
-    private final int seconds; // unavailability estimate
+    /**
+     * The Servlet that is unavailable.
+     */
+    private final Servlet servlet;
+
+    /**
+     * Is the issue permanent - i.e. is administrator action required?
+     */
+    private final boolean permanent;
+
+    /**
+     * The estimate of how long the Servlet will be unavailable.
+     */
+    private final int seconds;
 
     /**
      * @param servlet
diff --git a/java/javax/servlet/descriptor/JspConfigDescriptor.java b/java/javax/servlet/descriptor/JspConfigDescriptor.java
index 27b3cc7..d38ac4f 100644
--- a/java/javax/servlet/descriptor/JspConfigDescriptor.java
+++ b/java/javax/servlet/descriptor/JspConfigDescriptor.java
@@ -19,10 +19,29 @@ package javax.servlet.descriptor;
 import java.util.Collection;
 
 /**
+ * This interface exposes the JSP specific configuration information obtain ed
+ * from the deployment descriptors. It is primarily provided so that JSP
+ * implementations do not have to parse deployment descriptors.
+ *
  * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
  */
 public interface JspConfigDescriptor {
+
+    /**
+     * Provide the set of tag library descriptors obtained from the
+     * &lt;jsp-config&gt; elements in the web application's deployment
+     * descriptors.
+     *
+     * @return the tag library descriptors
+     */
     public Collection<TaglibDescriptor> getTaglibs();
+
+    /**
+     * Provide the set of JSP property groups obtained from the
+     * &lt;jsp-config&gt; elements in the web application's deployment
+     * descriptors.
+     *
+     * @return the JSP property groups
+     */
     public Collection<JspPropertyGroupDescriptor> getJspPropertyGroups();
 }
diff --git a/java/javax/servlet/descriptor/JspPropertyGroupDescriptor.java b/java/javax/servlet/descriptor/JspPropertyGroupDescriptor.java
index ddee69b..d690f32 100644
--- a/java/javax/servlet/descriptor/JspPropertyGroupDescriptor.java
+++ b/java/javax/servlet/descriptor/JspPropertyGroupDescriptor.java
@@ -19,20 +19,100 @@ package javax.servlet.descriptor;
 import java.util.Collection;
 
 /**
+ * Represents the JSP property groups in the deployment descriptors.
+ *
  * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
  */
 public interface JspPropertyGroupDescriptor {
+
+    /**
+     * Obtain the patterns to which this group applies.
+     *
+     * @return the patterns to which this group applies
+     */
     public Collection<String> getUrlPatterns();
+
+    /**
+     * Is Expression Language ignored for this group?
+     *
+     * @return {@code true} if EL is ignored, otherwise {@code false}
+     */
     public String getElIgnored();
+
+    /**
+     * Obtain the page encoding for this group.
+     *
+     * @return the page encoding for this group
+     */
     public String getPageEncoding();
+
+    /**
+     * Is scripting disabled for this group?
+     *
+     * @return {@code true} if scripting is disabled, otherwise {@code false}
+     */
     public String getScriptingInvalid();
+
+    /**
+     * Should the JSPs in this group be treated as JSP documents?
+     *
+     * @return {@code true} if the JSPs should be treated as JSP documents,
+     *         otherwise {@code false}
+     */
     public String getIsXml();
+
+    /**
+     * Obtain the preludes to include for this group.
+     *
+     * @return the preludes to include for this group
+     */
     public Collection<String> getIncludePreludes();
+
+    /**
+     * Obtain the codas to include for this group.
+     *
+     * @return the codas to include for this group.
+     */
     public Collection<String> getIncludeCodas();
+
+    /**
+     * Is the deferred El syntax <code>#{...}</code> allowed to be used as a
+     * literal in this group?
+     *
+     * @return {@code true} if the deferred EL syntax is allowed to be used as
+     *         a literal, otherwise {@code false}
+     */
     public String getDeferredSyntaxAllowedAsLiteral();
+
+    /**
+     * Should the JSPs in this group have template text that onyl contains
+     * whitespace removed?
+     *
+     * @return {@code true} if the whitespace be removed, otherwise
+     *         {@code false}
+     */
     public String getTrimDirectiveWhitespaces();
+
+    /**
+     * Obtain the default content type this group of JSP pages.#
+     *
+     * @return the default content type this group of JSP pages
+     */
     public String getDefaultContentType();
+
+    /**
+     * Obtain the per-page buffer configuration for this group of JSP pages.
+     *
+     * @return the per-page buffer configuration for this group of JSP pages
+     */
     public String getBuffer();
+
+    /**
+     * Should an error be raised at translation time for a page in this group if
+     * the page contains a reference (e.g. a tag) to a undeclared namespace.
+     *
+     * @return {@code true} if an error should be raised, otherwise
+     *         {@code false}
+     */
     public String getErrorOnUndeclaredNamespace();
 }
diff --git a/java/javax/servlet/descriptor/TaglibDescriptor.java b/java/javax/servlet/descriptor/TaglibDescriptor.java
index b2e8e98..c9c00c8 100644
--- a/java/javax/servlet/descriptor/TaglibDescriptor.java
+++ b/java/javax/servlet/descriptor/TaglibDescriptor.java
@@ -17,10 +17,23 @@
 package javax.servlet.descriptor;
 
 /**
+ * Represents a taglib descriptor definitions in the deployment descriptor.
+ *
  * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
  */
 public interface TaglibDescriptor {
+
+    /**
+     * Obtain the URI for the tag library.
+     *
+     * @return the URI for the tag library
+     */
     public String getTaglibURI();
+
+    /**
+     * Obtain the location of the tag library.
+     *
+     * @return the location of the tag library
+     */
     public String getTaglibLocation();
 }
diff --git a/java/javax/servlet/http/Cookie.java b/java/javax/servlet/http/Cookie.java
index 1ee31d4..4bd2940 100644
--- a/java/javax/servlet/http/Cookie.java
+++ b/java/javax/servlet/http/Cookie.java
@@ -122,20 +122,48 @@ public class Cookie implements Cloneable, Serializable {
 
     private static final long serialVersionUID = 1L;
 
+    /**
+     * Cookie name.
+     */
     private final String name;
+
+    /**
+     * Cookie value.
+     */
     private String value;
 
-    private int version = 0; // ;Version=1 ... means RFC 2109 style
+    /**
+     * Cookie version value. {@code ;Version=1 ...} means RFC 2109 style.
+     */
+    private int version = 0;
 
     //
     // Attributes encoded in the header's cookie fields.
     //
-    private String comment; // ;Comment=VALUE ... describes cookie's use
-    private String domain; // ;Domain=VALUE ... domain that sees cookie
-    private int maxAge = -1; // ;Max-Age=VALUE ... cookies auto-expire
-    private String path; // ;Path=VALUE ... URLs that see the cookie
-    private boolean secure; // ;Secure ... e.g. use SSL
-    private boolean httpOnly; // Not in cookie specs, but supported by browsers
+    /**
+     * {@code ;Comment=VALUE ...} describes cookie's use.
+     */
+    private String comment;
+    /**
+     * {@code ;Domain=VALUE ...} domain that sees cookie
+     */
+    private String domain;
+    /**
+     * {@code ;Max-Age=VALUE ...} cookies auto-expire
+     */
+    private int maxAge = -1;
+    /**
+     * {@code ;Path=VALUE ...} URLs that see the cookie
+     */
+    private String path;
+    /**
+     * {@code ;Secure ...} e.g. use SSL
+     */
+    private boolean secure;
+    /**
+     * Not in cookie specs, but supported by browsers.
+     */
+    private boolean httpOnly;
 
     /**
      * Constructs a cookie with a specified name and value.
diff --git a/java/javax/servlet/http/HttpSessionBindingEvent.java b/java/javax/servlet/http/HttpSessionBindingEvent.java
index f1f2023..0d11054 100644
--- a/java/javax/servlet/http/HttpSessionBindingEvent.java
+++ b/java/javax/servlet/http/HttpSessionBindingEvent.java
@@ -35,10 +35,14 @@ public class HttpSessionBindingEvent extends HttpSessionEvent {
 
     private static final long serialVersionUID = 1L;
 
-    /* The name to which the object is being bound or unbound */
+    /**
+     *  The name to which the object is being bound or unbound.
+     */
     private final String name;
 
-    /* The object is being bound or unbound */
+    /**
+     *  The object is being bound or unbound.
+     */
     private final Object value;
 
     /**
diff --git a/java/org/apache/catalina/core/ApplicationMappingMatch.java b/java/org/apache/catalina/core/ApplicationMappingMatch.java
index cb1a9d8..cf6932d 100644
--- a/java/org/apache/catalina/core/ApplicationMappingMatch.java
+++ b/java/org/apache/catalina/core/ApplicationMappingMatch.java
@@ -21,9 +21,31 @@ package org.apache.catalina.core;
  */
 public enum ApplicationMappingMatch {
 
+    /**
+     * The request was mapped to the servlet via the context root URL pattern of
+     * {@code ""}.
+     */
     CONTEXT_ROOT,
+
+    /**
+     * The request was mapped to the servlet via the default servlet URL pattern
+     * of {@code "/"} .
+     */
     DEFAULT,
+
+    /**
+     * The request was mapped to the servlet using an exact URL pattern match.
+     */
     EXACT,
+
+    /**
+     * The request was mapped to the servlet using an extension URL pattern
+     * match.
+     */
     EXTENSION,
+
+    /**
+     * The request was mapped to the servlet using a path URL pattern.
+     */
     PATH
 }

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org