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 2010/07/23 18:03:26 UTC
svn commit: r967146 [2/3] - /tomcat/trunk/java/javax/servlet/http/
Modified: tomcat/trunk/java/javax/servlet/http/HttpServletResponse.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/http/HttpServletResponse.java?rev=967146&r1=967145&r2=967146&view=diff
==============================================================================
--- tomcat/trunk/java/javax/servlet/http/HttpServletResponse.java (original)
+++ tomcat/trunk/java/javax/servlet/http/HttpServletResponse.java Fri Jul 23 16:03:25 2010
@@ -1,19 +1,19 @@
/*
-* Licensed to the Apache Software Foundation (ASF) under one or more
-* contributor license agreements. See the NOTICE file distributed with
-* this work for additional information regarding copyright ownership.
-* The ASF licenses this file to You under the Apache License, Version 2.0
-* (the "License"); you may not use this file except in compliance with
-* the License. You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package javax.servlet.http;
import java.io.IOException;
@@ -22,345 +22,310 @@ import java.util.Collection;
import javax.servlet.ServletResponse;
/**
- *
* Extends the {@link ServletResponse} interface to provide HTTP-specific
- * functionality in sending a response. For example, it has methods
- * to access HTTP headers and cookies.
- *
- * <p>The servlet container creates an <code>HttpServletResponse</code> object
- * and passes it as an argument to the servlet's service methods
- * (<code>doGet</code>, <code>doPost</code>, etc).
- *
+ * functionality in sending a response. For example, it has methods to access
+ * HTTP headers and cookies.
+ * <p>
+ * The servlet container creates an <code>HttpServletResponse</code> object and
+ * passes it as an argument to the servlet's service methods (<code>doGet</code>, <code>doPost</code>, etc).
*
- * @author Various
- * @version $Version$
- *
- * @see javax.servlet.ServletResponse
- *
+ * @author Various
+ * @version $Version$
+ * @see javax.servlet.ServletResponse
*/
-
-
-
public interface HttpServletResponse extends ServletResponse {
/**
- * Adds the specified cookie to the response. This method can be called
+ * Adds the specified cookie to the response. This method can be called
* multiple times to set more than one cookie.
- *
- * @param cookie the Cookie to return to the client
- *
+ *
+ * @param cookie
+ * the Cookie to return to the client
*/
-
public void addCookie(Cookie cookie);
/**
- * Returns a boolean indicating whether the named response header
- * has already been set.
+ * Returns a boolean indicating whether the named response header has
+ * already been set.
*
- * @param name the header name
- * @return <code>true</code> if the named response header
- * has already been set;
- * <code>false</code> otherwise
+ * @param name
+ * the header name
+ * @return <code>true</code> if the named response header has already been
+ * set; <code>false</code> otherwise
*/
-
public boolean containsHeader(String name);
/**
- * Encodes the specified URL by including the session ID in it,
- * or, if encoding is not needed, returns the URL unchanged.
- * The implementation of this method includes the logic to
- * determine whether the session ID needs to be encoded in the URL.
- * For example, if the browser supports cookies, or session
- * tracking is turned off, URL encoding is unnecessary.
- *
- * <p>For robust session tracking, all URLs emitted by a servlet
- * should be run through this
- * method. Otherwise, URL rewriting cannot be used with browsers
- * which do not support cookies.
- *
- * @param url the url to be encoded.
- * @return the encoded URL if encoding is needed;
- * the unchanged URL otherwise.
+ * Encodes the specified URL by including the session ID in it, or, if
+ * encoding is not needed, returns the URL unchanged. The implementation of
+ * this method includes the logic to determine whether the session ID needs
+ * to be encoded in the URL. For example, if the browser supports cookies,
+ * or session tracking is turned off, URL encoding is unnecessary.
+ * <p>
+ * For robust session tracking, all URLs emitted by a servlet should be run
+ * through this method. Otherwise, URL rewriting cannot be used with
+ * browsers which do not support cookies.
+ *
+ * @param url
+ * the url to be encoded.
+ * @return the encoded URL if encoding is needed; the unchanged URL
+ * otherwise.
*/
-
public String encodeURL(String url);
/**
- * Encodes the specified URL for use in the
- * <code>sendRedirect</code> method or, if encoding is not needed,
- * returns the URL unchanged. The implementation of this method
- * includes the logic to determine whether the session ID
- * needs to be encoded in the URL. Because the rules for making
- * this determination can differ from those used to decide whether to
- * encode a normal link, this method is separated from the
- * <code>encodeURL</code> method.
- *
- * <p>All URLs sent to the <code>HttpServletResponse.sendRedirect</code>
- * method should be run through this method. Otherwise, URL
- * rewriting cannot be used with browsers which do not support
- * cookies.
- *
- * @param url the url to be encoded.
- * @return the encoded URL if encoding is needed;
- * the unchanged URL otherwise.
- *
+ * Encodes the specified URL for use in the <code>sendRedirect</code> method
+ * or, if encoding is not needed, returns the URL unchanged. The
+ * implementation of this method includes the logic to determine whether the
+ * session ID needs to be encoded in the URL. Because the rules for making
+ * this determination can differ from those used to decide whether to encode
+ * a normal link, this method is separated from the <code>encodeURL</code>
+ * method.
+ * <p>
+ * All URLs sent to the <code>HttpServletResponse.sendRedirect</code> method
+ * should be run through this method. Otherwise, URL rewriting cannot be
+ * used with browsers which do not support cookies.
+ *
+ * @param url
+ * the url to be encoded.
+ * @return the encoded URL if encoding is needed; the unchanged URL
+ * otherwise.
* @see #sendRedirect
* @see #encodeUrl
*/
-
public String encodeRedirectURL(String url);
/**
- * @param url the url to be encoded.
- * @return the encoded URL if encoding is needed;
- * the unchanged URL otherwise.
- *
- * @deprecated As of version 2.1, use encodeURL(String url) instead
+ * @param url
+ * the url to be encoded.
+ * @return the encoded URL if encoding is needed; the unchanged URL
+ * otherwise.
+ * @deprecated As of version 2.1, use encodeURL(String url) instead
*/
- @SuppressWarnings("dep-ann") // Spec API does not use @Deprecated
+ @SuppressWarnings("dep-ann")
+ // Spec API does not use @Deprecated
public String encodeUrl(String url);
-
+
/**
- * @param url the url to be encoded.
- * @return the encoded URL if encoding is needed;
- * the unchanged URL otherwise.
- *
- * @deprecated As of version 2.1, use
- * encodeRedirectURL(String url) instead
+ * @param url
+ * the url to be encoded.
+ * @return the encoded URL if encoding is needed; the unchanged URL
+ * otherwise.
+ * @deprecated As of version 2.1, use encodeRedirectURL(String url) instead
*/
- @SuppressWarnings("dep-ann") // Spec API does not use @Deprecated
+ @SuppressWarnings("dep-ann")
+ // Spec API does not use @Deprecated
public String encodeRedirectUrl(String url);
/**
- * Sends an error response to the client using the specified
- * status. The server defaults to creating the
- * response to look like an HTML-formatted server error page
- * containing the specified message, setting the content type
- * to "text/html", leaving cookies and other headers unmodified.
- *
- * If an error-page declaration has been made for the web application
- * corresponding to the status code passed in, it will be served back in
- * preference to the suggested msg parameter.
- *
- * <p>If the response has already been committed, this method throws
- * an IllegalStateException.
- * After using this method, the response should be considered
- * to be committed and should not be written to.
- *
- * @param sc the error status code
- * @param msg the descriptive message
- * @exception IOException If an input or output exception occurs
- * @exception IllegalStateException If the response was committed
+ * Sends an error response to the client using the specified status. The
+ * server defaults to creating the response to look like an HTML-formatted
+ * server error page containing the specified message, setting the content
+ * type to "text/html", leaving cookies and other headers unmodified. If an
+ * error-page declaration has been made for the web application
+ * corresponding to the status code passed in, it will be served back in
+ * preference to the suggested msg parameter.
+ * <p>
+ * If the response has already been committed, this method throws an
+ * IllegalStateException. After using this method, the response should be
+ * considered to be committed and should not be written to.
+ *
+ * @param sc
+ * the error status code
+ * @param msg
+ * the descriptive message
+ * @exception IOException
+ * If an input or output exception occurs
+ * @exception IllegalStateException
+ * If the response was committed
*/
-
public void sendError(int sc, String msg) throws IOException;
/**
- * Sends an error response to the client using the specified status
- * code and clearing the buffer.
- * <p>If the response has already been committed, this method throws
- * an IllegalStateException.
- * After using this method, the response should be considered
- * to be committed and should not be written to.
- *
- * @param sc the error status code
- * @exception IOException If an input or output exception occurs
- * @exception IllegalStateException If the response was committed
- * before this method call
+ * Sends an error response to the client using the specified status code and
+ * clearing the buffer.
+ * <p>
+ * If the response has already been committed, this method throws an
+ * IllegalStateException. After using this method, the response should be
+ * considered to be committed and should not be written to.
+ *
+ * @param sc
+ * the error status code
+ * @exception IOException
+ * If an input or output exception occurs
+ * @exception IllegalStateException
+ * If the response was committed before this method call
*/
-
public void sendError(int sc) throws IOException;
/**
- * Sends a temporary redirect response to the client using the
- * specified redirect location URL. This method can accept relative URLs;
- * the servlet container must convert the relative URL to an absolute URL
- * before sending the response to the client. If the location is relative
- * without a leading '/' the container interprets it as relative to
- * the current request URI. If the location is relative with a leading
- * '/' the container interprets it as relative to the servlet container root.
- *
- * <p>If the response has already been committed, this method throws
- * an IllegalStateException.
- * After using this method, the response should be considered
- * to be committed and should not be written to.
- *
- * @param location the redirect location URL
- * @exception IOException If an input or output exception occurs
- * @exception IllegalStateException If the response was committed or
- if a partial URL is given and cannot be converted into a valid URL
+ * Sends a temporary redirect response to the client using the specified
+ * redirect location URL. This method can accept relative URLs; the servlet
+ * container must convert the relative URL to an absolute URL before sending
+ * the response to the client. If the location is relative without a leading
+ * '/' the container interprets it as relative to the current request URI.
+ * If the location is relative with a leading '/' the container interprets
+ * it as relative to the servlet container root.
+ * <p>
+ * If the response has already been committed, this method throws an
+ * IllegalStateException. After using this method, the response should be
+ * considered to be committed and should not be written to.
+ *
+ * @param location
+ * the redirect location URL
+ * @exception IOException
+ * If an input or output exception occurs
+ * @exception IllegalStateException
+ * If the response was committed or if a partial URL is given
+ * and cannot be converted into a valid URL
*/
-
public void sendRedirect(String location) throws IOException;
-
+
/**
+ * Sets a response header with the given name and date-value. The date is
+ * specified in terms of milliseconds since the epoch. If the header had
+ * already been set, the new value overwrites the previous one. The
+ * <code>containsHeader</code> method can be used to test for the presence
+ * of a header before setting its value.
*
- * Sets a response header with the given name and
- * date-value. The date is specified in terms of
- * milliseconds since the epoch. If the header had already
- * been set, the new value overwrites the previous one. The
- * <code>containsHeader</code> method can be used to test for the
- * presence of a header before setting its value.
- *
- * @param name the name of the header to set
- * @param date the assigned date value
- *
+ * @param name
+ * the name of the header to set
+ * @param date
+ * the assigned date value
* @see #containsHeader
* @see #addDateHeader
*/
-
public void setDateHeader(String name, long date);
-
+
/**
+ * Adds a response header with the given name and date-value. The date is
+ * specified in terms of milliseconds since the epoch. This method allows
+ * response headers to have multiple values.
*
- * Adds a response header with the given name and
- * date-value. The date is specified in terms of
- * milliseconds since the epoch. This method allows response headers
- * to have multiple values.
- *
- * @param name the name of the header to set
- * @param date the additional date value
- *
+ * @param name
+ * the name of the header to set
+ * @param date
+ * the additional date value
* @see #setDateHeader
*/
-
public void addDateHeader(String name, long date);
-
+
/**
- *
- * Sets a response header with the given name and value.
- * If the header had already been set, the new value overwrites the
- * previous one. The <code>containsHeader</code> method can be
- * used to test for the presence of a header before setting its
- * value.
- *
- * @param name the name of the header
- * @param value the header value If it contains octet string,
- * it should be encoded according to RFC 2047
- * (http://www.ietf.org/rfc/rfc2047.txt)
- *
+ * Sets a response header with the given name and value. If the header had
+ * already been set, the new value overwrites the previous one. The
+ * <code>containsHeader</code> method can be used to test for the presence
+ * of a header before setting its value.
+ *
+ * @param name
+ * the name of the header
+ * @param value
+ * the header value If it contains octet string, it should be
+ * encoded according to RFC 2047
+ * (http://www.ietf.org/rfc/rfc2047.txt)
* @see #containsHeader
* @see #addHeader
*/
-
public void setHeader(String name, String value);
-
+
/**
- * Adds a response header with the given name and value.
- * This method allows response headers to have multiple values.
+ * Adds a response header with the given name and value. This method allows
+ * response headers to have multiple values.
*
- * @param name the name of the header
- * @param value the additional header value If it contains
- * octet string, it should be encoded
- * according to RFC 2047
- * (http://www.ietf.org/rfc/rfc2047.txt)
- *
+ * @param name
+ * the name of the header
+ * @param value
+ * the additional header value If it contains octet string, it
+ * should be encoded according to RFC 2047
+ * (http://www.ietf.org/rfc/rfc2047.txt)
* @see #setHeader
*/
-
public void addHeader(String name, String value);
/**
- * Sets a response header with the given name and
- * integer value. If the header had already been set, the new value
- * overwrites the previous one. The <code>containsHeader</code>
- * method can be used to test for the presence of a header before
- * setting its value.
- *
- * @param name the name of the header
- * @param value the assigned integer value
- *
+ * Sets a response header with the given name and integer value. If the
+ * header had already been set, the new value overwrites the previous one.
+ * The <code>containsHeader</code> method can be used to test for the
+ * presence of a header before setting its value.
+ *
+ * @param name
+ * the name of the header
+ * @param value
+ * the assigned integer value
* @see #containsHeader
* @see #addIntHeader
*/
-
public void setIntHeader(String name, int value);
/**
- * Adds a response header with the given name and
- * integer value. This method allows response headers to have multiple
- * values.
- *
- * @param name the name of the header
- * @param value the assigned integer value
- *
+ * Adds a response header with the given name and integer value. This method
+ * allows response headers to have multiple values.
+ *
+ * @param name
+ * the name of the header
+ * @param value
+ * the assigned integer value
* @see #setIntHeader
*/
-
public void addIntHeader(String name, int value);
-
-
/**
- * Sets the status code for this response. This method is used to
- * set the return status code when there is no error (for example,
- * for the status codes SC_OK or SC_MOVED_TEMPORARILY). If there
- * is an error, and the caller wishes to invoke an error-page defined
- * in the web application, the <code>sendError</code> method should be used
- * instead.
- * <p> The container clears the buffer and sets the Location header, preserving
+ * Sets the status code for this response. This method is used to set the
+ * return status code when there is no error (for example, for the status
+ * codes SC_OK or SC_MOVED_TEMPORARILY). If there is an error, and the
+ * caller wishes to invoke an error-page defined in the web application, the
+ * <code>sendError</code> method should be used instead.
+ * <p>
+ * The container clears the buffer and sets the Location header, preserving
* cookies and other headers.
- *
- * @param sc the status code
- *
+ *
+ * @param sc
+ * the status code
* @see #sendError
*/
-
public void setStatus(int sc);
-
+
/**
* Sets the status code and message for this response.
*
- * @param sc the status code
- * @param sm the status message
- *
- * @deprecated As of version 2.1, due to ambiguous meaning of the
- * message parameter. To set a status code
- * use <code>setStatus(int)</code>, to send an error with a description
- * use <code>sendError(int, String)</code>.
+ * @param sc
+ * the status code
+ * @param sm
+ * the status message
+ * @deprecated As of version 2.1, due to ambiguous meaning of the message
+ * parameter. To set a status code use
+ * <code>setStatus(int)</code>, to send an error with a
+ * description use <code>sendError(int, String)</code>.
*/
- @SuppressWarnings("dep-ann") // Spec API does not use @Deprecated
+ @SuppressWarnings("dep-ann")
+ // Spec API does not use @Deprecated
public void setStatus(int sc, String sm);
-
/**
- *
* @return
- * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
+ * @since Servlet 3.0 TODO SERVLET3 - Add comments
*/
public int getStatus();
-
-
+
/**
- *
* @param name
* @return
- * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
+ * @since Servlet 3.0 TODO SERVLET3 - Add comments
*/
public String getHeader(String name);
-
-
+
/**
- *
* @param name
* @return
- * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
+ * @since Servlet 3.0 TODO SERVLET3 - Add comments
*/
public Collection<String> getHeaders(String name);
-
/**
- *
* @return
- * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
+ * @since Servlet 3.0 TODO SERVLET3 - Add comments
*/
public Collection<String> getHeaderNames();
-
/*
* Server status codes; see RFC 2068.
*/
@@ -368,165 +333,138 @@ public interface HttpServletResponse ext
/**
* Status code (100) indicating the client can continue.
*/
-
public static final int SC_CONTINUE = 100;
-
/**
- * Status code (101) indicating the server is switching protocols
- * according to Upgrade header.
+ * Status code (101) indicating the server is switching protocols according
+ * to Upgrade header.
*/
-
public static final int SC_SWITCHING_PROTOCOLS = 101;
/**
* Status code (200) indicating the request succeeded normally.
*/
-
public static final int SC_OK = 200;
/**
- * Status code (201) indicating the request succeeded and created
- * a new resource on the server.
+ * Status code (201) indicating the request succeeded and created a new
+ * resource on the server.
*/
-
public static final int SC_CREATED = 201;
/**
- * Status code (202) indicating that a request was accepted for
- * processing, but was not completed.
+ * Status code (202) indicating that a request was accepted for processing,
+ * but was not completed.
*/
-
public static final int SC_ACCEPTED = 202;
/**
- * Status code (203) indicating that the meta information presented
- * by the client did not originate from the server.
+ * Status code (203) indicating that the meta information presented by the
+ * client did not originate from the server.
*/
-
public static final int SC_NON_AUTHORITATIVE_INFORMATION = 203;
/**
- * Status code (204) indicating that the request succeeded but that
- * there was no new information to return.
+ * Status code (204) indicating that the request succeeded but that there
+ * was no new information to return.
*/
-
public static final int SC_NO_CONTENT = 204;
/**
- * Status code (205) indicating that the agent <em>SHOULD</em> reset
- * the document view which caused the request to be sent.
+ * Status code (205) indicating that the agent <em>SHOULD</em> reset the
+ * document view which caused the request to be sent.
*/
-
public static final int SC_RESET_CONTENT = 205;
/**
- * Status code (206) indicating that the server has fulfilled
- * the partial GET request for the resource.
+ * Status code (206) indicating that the server has fulfilled the partial
+ * GET request for the resource.
*/
-
public static final int SC_PARTIAL_CONTENT = 206;
/**
- * Status code (300) indicating that the requested resource
- * corresponds to any one of a set of representations, each with
- * its own specific location.
+ * Status code (300) indicating that the requested resource corresponds to
+ * any one of a set of representations, each with its own specific location.
*/
-
public static final int SC_MULTIPLE_CHOICES = 300;
/**
- * Status code (301) indicating that the resource has permanently
- * moved to a new location, and that future references should use a
- * new URI with their requests.
+ * Status code (301) indicating that the resource has permanently moved to a
+ * new location, and that future references should use a new URI with their
+ * requests.
*/
-
public static final int SC_MOVED_PERMANENTLY = 301;
/**
- * Status code (302) indicating that the resource has temporarily
- * moved to another location, but that future references should
- * still use the original URI to access the resource.
- *
- * This definition is being retained for backwards compatibility.
- * SC_FOUND is now the preferred definition.
+ * Status code (302) indicating that the resource has temporarily moved to
+ * another location, but that future references should still use the
+ * original URI to access the resource. This definition is being retained
+ * for backwards compatibility. SC_FOUND is now the preferred definition.
*/
-
public static final int SC_MOVED_TEMPORARILY = 302;
/**
- * Status code (302) indicating that the resource reside
- * temporarily under a different URI. Since the redirection might
- * be altered on occasion, the client should continue to use the
- * Request-URI for future requests.(HTTP/1.1) To represent the
- * status code (302), it is recommended to use this variable.
- */
-
+ * Status code (302) indicating that the resource reside temporarily under a
+ * different URI. Since the redirection might be altered on occasion, the
+ * client should continue to use the Request-URI for future
+ * requests.(HTTP/1.1) To represent the status code (302), it is recommended
+ * to use this variable.
+ */
public static final int SC_FOUND = 302;
/**
- * Status code (303) indicating that the response to the request
- * can be found under a different URI.
+ * Status code (303) indicating that the response to the request can be
+ * found under a different URI.
*/
-
public static final int SC_SEE_OTHER = 303;
/**
- * Status code (304) indicating that a conditional GET operation
- * found that the resource was available and not modified.
+ * Status code (304) indicating that a conditional GET operation found that
+ * the resource was available and not modified.
*/
-
public static final int SC_NOT_MODIFIED = 304;
/**
- * Status code (305) indicating that the requested resource
- * <em>MUST</em> be accessed through the proxy given by the
- * <code><em>Location</em></code> field.
+ * Status code (305) indicating that the requested resource <em>MUST</em> be
+ * accessed through the proxy given by the <code><em>Location</em></code>
+ * field.
*/
-
public static final int SC_USE_PROXY = 305;
- /**
- * Status code (307) indicating that the requested resource
- * resides temporarily under a different URI. The temporary URI
- * <em>SHOULD</em> be given by the <code><em>Location</em></code>
- * field in the response.
+ /**
+ * Status code (307) indicating that the requested resource resides
+ * temporarily under a different URI. The temporary URI <em>SHOULD</em> be
+ * given by the <code><em>Location</em></code> field in the response.
*/
-
- public static final int SC_TEMPORARY_REDIRECT = 307;
+ public static final int SC_TEMPORARY_REDIRECT = 307;
/**
* Status code (400) indicating the request sent by the client was
* syntactically incorrect.
*/
-
public static final int SC_BAD_REQUEST = 400;
/**
* Status code (401) indicating that the request requires HTTP
* authentication.
*/
-
public static final int SC_UNAUTHORIZED = 401;
/**
* Status code (402) reserved for future use.
*/
-
public static final int SC_PAYMENT_REQUIRED = 402;
/**
- * Status code (403) indicating the server understood the request
- * but refused to fulfill it.
+ * Status code (403) indicating the server understood the request but
+ * refused to fulfill it.
*/
-
public static final int SC_FORBIDDEN = 403;
/**
* Status code (404) indicating that the requested resource is not
* available.
*/
-
public static final int SC_NOT_FOUND = 404;
/**
@@ -534,143 +472,121 @@ public interface HttpServletResponse ext
* <code><em>Request-Line</em></code> is not allowed for the resource
* identified by the <code><em>Request-URI</em></code>.
*/
-
public static final int SC_METHOD_NOT_ALLOWED = 405;
/**
- * Status code (406) indicating that the resource identified by the
- * request is only capable of generating response entities which have
- * content characteristics not acceptable according to the accept
- * headers sent in the request.
+ * Status code (406) indicating that the resource identified by the request
+ * is only capable of generating response entities which have content
+ * characteristics not acceptable according to the accept headers sent in
+ * the request.
*/
-
public static final int SC_NOT_ACCEPTABLE = 406;
/**
* Status code (407) indicating that the client <em>MUST</em> first
* authenticate itself with the proxy.
*/
-
public static final int SC_PROXY_AUTHENTICATION_REQUIRED = 407;
/**
- * Status code (408) indicating that the client did not produce a
- * request within the time that the server was prepared to wait.
+ * Status code (408) indicating that the client did not produce a request
+ * within the time that the server was prepared to wait.
*/
-
public static final int SC_REQUEST_TIMEOUT = 408;
/**
- * Status code (409) indicating that the request could not be
- * completed due to a conflict with the current state of the
- * resource.
+ * Status code (409) indicating that the request could not be completed due
+ * to a conflict with the current state of the resource.
*/
-
public static final int SC_CONFLICT = 409;
/**
- * Status code (410) indicating that the resource is no longer
- * available at the server and no forwarding address is known.
- * This condition <em>SHOULD</em> be considered permanent.
+ * Status code (410) indicating that the resource is no longer available at
+ * the server and no forwarding address is known. This condition
+ * <em>SHOULD</em> be considered permanent.
*/
-
public static final int SC_GONE = 410;
/**
- * Status code (411) indicating that the request cannot be handled
- * without a defined <code><em>Content-Length</em></code>.
+ * Status code (411) indicating that the request cannot be handled without a
+ * defined <code><em>Content-Length</em></code>.
*/
-
public static final int SC_LENGTH_REQUIRED = 411;
/**
- * Status code (412) indicating that the precondition given in one
- * or more of the request-header fields evaluated to false when it
- * was tested on the server.
+ * Status code (412) indicating that the precondition given in one or more
+ * of the request-header fields evaluated to false when it was tested on the
+ * server.
*/
-
public static final int SC_PRECONDITION_FAILED = 412;
/**
- * Status code (413) indicating that the server is refusing to process
- * the request because the request entity is larger than the server is
- * willing or able to process.
+ * Status code (413) indicating that the server is refusing to process the
+ * request because the request entity is larger than the server is willing
+ * or able to process.
*/
-
public static final int SC_REQUEST_ENTITY_TOO_LARGE = 413;
/**
- * Status code (414) indicating that the server is refusing to service
- * the request because the <code><em>Request-URI</em></code> is longer
- * than the server is willing to interpret.
+ * Status code (414) indicating that the server is refusing to service the
+ * request because the <code><em>Request-URI</em></code> is longer than the
+ * server is willing to interpret.
*/
-
public static final int SC_REQUEST_URI_TOO_LONG = 414;
/**
- * Status code (415) indicating that the server is refusing to service
- * the request because the entity of the request is in a format not
- * supported by the requested resource for the requested method.
+ * Status code (415) indicating that the server is refusing to service the
+ * request because the entity of the request is in a format not supported by
+ * the requested resource for the requested method.
*/
-
public static final int SC_UNSUPPORTED_MEDIA_TYPE = 415;
/**
- * Status code (416) indicating that the server cannot serve the
- * requested byte range.
+ * Status code (416) indicating that the server cannot serve the requested
+ * byte range.
*/
-
public static final int SC_REQUESTED_RANGE_NOT_SATISFIABLE = 416;
/**
* Status code (417) indicating that the server could not meet the
* expectation given in the Expect request header.
*/
-
public static final int SC_EXPECTATION_FAILED = 417;
/**
- * Status code (500) indicating an error inside the HTTP server
- * which prevented it from fulfilling the request.
+ * Status code (500) indicating an error inside the HTTP server which
+ * prevented it from fulfilling the request.
*/
-
public static final int SC_INTERNAL_SERVER_ERROR = 500;
/**
- * Status code (501) indicating the HTTP server does not support
- * the functionality needed to fulfill the request.
+ * Status code (501) indicating the HTTP server does not support the
+ * functionality needed to fulfill the request.
*/
-
public static final int SC_NOT_IMPLEMENTED = 501;
/**
- * Status code (502) indicating that the HTTP server received an
- * invalid response from a server it consulted when acting as a
- * proxy or gateway.
+ * Status code (502) indicating that the HTTP server received an invalid
+ * response from a server it consulted when acting as a proxy or gateway.
*/
-
public static final int SC_BAD_GATEWAY = 502;
/**
- * Status code (503) indicating that the HTTP server is
- * temporarily overloaded, and unable to handle the request.
+ * Status code (503) indicating that the HTTP server is temporarily
+ * overloaded, and unable to handle the request.
*/
-
public static final int SC_SERVICE_UNAVAILABLE = 503;
/**
- * Status code (504) indicating that the server did not receive
- * a timely response from the upstream server while acting as
- * a gateway or proxy.
+ * Status code (504) indicating that the server did not receive a timely
+ * response from the upstream server while acting as a gateway or proxy.
*/
-
public static final int SC_GATEWAY_TIMEOUT = 504;
/**
- * Status code (505) indicating that the server does not support
- * or refuses to support the HTTP protocol version that was used
- * in the request message.
+ * Status code (505) indicating that the server does not support or refuses
+ * to support the HTTP protocol version that was used in the request
+ * message.
*/
-
public static final int SC_HTTP_VERSION_NOT_SUPPORTED = 505;
}
Modified: tomcat/trunk/java/javax/servlet/http/HttpServletResponseWrapper.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/http/HttpServletResponseWrapper.java?rev=967146&r1=967145&r2=967146&view=diff
==============================================================================
--- tomcat/trunk/java/javax/servlet/http/HttpServletResponseWrapper.java (original)
+++ tomcat/trunk/java/javax/servlet/http/HttpServletResponseWrapper.java Fri Jul 23 16:03:25 2010
@@ -1,19 +1,19 @@
/*
-* Licensed to the Apache Software Foundation (ASF) under one or more
-* contributor license agreements. See the NOTICE file distributed with
-* this work for additional information regarding copyright ownership.
-* The ASF licenses this file to You under the Apache License, Version 2.0
-* (the "License"); you may not use this file except in compliance with
-* the License. You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package javax.servlet.http;
import java.io.IOException;
@@ -22,216 +22,206 @@ import java.util.Collection;
import javax.servlet.ServletResponseWrapper;
/**
+ * Provides a convenient implementation of the HttpServletResponse interface
+ * that can be subclassed by developers wishing to adapt the response from a
+ * Servlet. This class implements the Wrapper or Decorator pattern. Methods
+ * default to calling through to the wrapped response object.
*
- * Provides a convenient implementation of the HttpServletResponse interface that
- * can be subclassed by developers wishing to adapt the response from a Servlet.
- * This class implements the Wrapper or Decorator pattern. Methods default to
- * calling through to the wrapped response object.
- *
- * @author Various
- * @version $Version$
- * @since v 2.3
- *
- * @see javax.servlet.http.HttpServletResponse
- *
+ * @author Various
+ * @version $Version$
+ * @since v 2.3
+ * @see javax.servlet.http.HttpServletResponse
*/
+public class HttpServletResponseWrapper extends ServletResponseWrapper
+ implements HttpServletResponse {
-public class HttpServletResponseWrapper extends ServletResponseWrapper implements HttpServletResponse {
-
-
- /**
- * Constructs a response adaptor wrapping the given response.
- * @throws java.lang.IllegalArgumentException if the response is null
- */
+ /**
+ * Constructs a response adaptor wrapping the given response.
+ *
+ * @throws java.lang.IllegalArgumentException
+ * if the response is null
+ */
public HttpServletResponseWrapper(HttpServletResponse response) {
- super(response);
+ super(response);
}
-
+
private HttpServletResponse _getHttpServletResponse() {
- return (HttpServletResponse) super.getResponse();
+ return (HttpServletResponse) super.getResponse();
}
-
+
/**
* The default behavior of this method is to call addCookie(Cookie cookie)
* on the wrapped response object.
*/
public void addCookie(Cookie cookie) {
- this._getHttpServletResponse().addCookie(cookie);
+ this._getHttpServletResponse().addCookie(cookie);
}
/**
- * The default behavior of this method is to call containsHeader(String name)
- * on the wrapped response object.
+ * The default behavior of this method is to call containsHeader(String
+ * name) on the wrapped response object.
*/
-
-
public boolean containsHeader(String name) {
- return this._getHttpServletResponse().containsHeader(name);
+ return this._getHttpServletResponse().containsHeader(name);
}
-
+
/**
- * The default behavior of this method is to call encodeURL(String url)
- * on the wrapped response object.
+ * The default behavior of this method is to call encodeURL(String url) on
+ * the wrapped response object.
*/
public String encodeURL(String url) {
- return this._getHttpServletResponse().encodeURL(url);
+ return this._getHttpServletResponse().encodeURL(url);
}
/**
- * The default behavior of this method is to return encodeRedirectURL(String url)
- * on the wrapped response object.
+ * The default behavior of this method is to return encodeRedirectURL(String
+ * url) on the wrapped response object.
*/
public String encodeRedirectURL(String url) {
- return this._getHttpServletResponse().encodeRedirectURL(url);
+ return this._getHttpServletResponse().encodeRedirectURL(url);
}
/**
- * The default behavior of this method is to call encodeUrl(String url)
- * on the wrapped response object.
+ * The default behavior of this method is to call encodeUrl(String url) on
+ * the wrapped response object.
+ *
* @deprecated As of Version 3.0 of the Java Servlet API
*/
- @SuppressWarnings("dep-ann") // Spec API does not use @Deprecated
+ @SuppressWarnings("dep-ann")
+ // Spec API does not use @Deprecated
public String encodeUrl(String url) {
- return this._getHttpServletResponse().encodeUrl(url);
+ return this._getHttpServletResponse().encodeUrl(url);
}
-
+
/**
- * The default behavior of this method is to return encodeRedirectUrl(String url)
- * on the wrapped response object.
+ * The default behavior of this method is to return encodeRedirectUrl(String
+ * url) on the wrapped response object.
+ *
* @deprecated As of Version 3.0 of the Java Servlet API
*/
- @SuppressWarnings("dep-ann") // Spec API does not use @Deprecated
+ @SuppressWarnings("dep-ann")
+ // Spec API does not use @Deprecated
public String encodeRedirectUrl(String url) {
- return this._getHttpServletResponse().encodeRedirectUrl(url);
+ return this._getHttpServletResponse().encodeRedirectUrl(url);
}
-
+
/**
- * The default behavior of this method is to call sendError(int sc, String msg)
- * on the wrapped response object.
+ * The default behavior of this method is to call sendError(int sc, String
+ * msg) on the wrapped response object.
*/
public void sendError(int sc, String msg) throws IOException {
- this._getHttpServletResponse().sendError(sc, msg);
+ this._getHttpServletResponse().sendError(sc, msg);
}
/**
- * The default behavior of this method is to call sendError(int sc)
- * on the wrapped response object.
+ * The default behavior of this method is to call sendError(int sc) on the
+ * wrapped response object.
*/
-
-
public void sendError(int sc) throws IOException {
- this._getHttpServletResponse().sendError(sc);
+ this._getHttpServletResponse().sendError(sc);
}
/**
- * The default behavior of this method is to return sendRedirect(String location)
- * on the wrapped response object.
+ * The default behavior of this method is to return sendRedirect(String
+ * location) on the wrapped response object.
*/
public void sendRedirect(String location) throws IOException {
- this._getHttpServletResponse().sendRedirect(location);
+ this._getHttpServletResponse().sendRedirect(location);
}
-
+
/**
- * The default behavior of this method is to call setDateHeader(String name, long date)
- * on the wrapped response object.
+ * The default behavior of this method is to call setDateHeader(String name,
+ * long date) on the wrapped response object.
*/
public void setDateHeader(String name, long date) {
- this._getHttpServletResponse().setDateHeader(name, date);
+ this._getHttpServletResponse().setDateHeader(name, date);
}
-
+
/**
- * The default behavior of this method is to call addDateHeader(String name, long date)
- * on the wrapped response object.
+ * The default behavior of this method is to call addDateHeader(String name,
+ * long date) on the wrapped response object.
*/
- public void addDateHeader(String name, long date) {
- this._getHttpServletResponse().addDateHeader(name, date);
+ public void addDateHeader(String name, long date) {
+ this._getHttpServletResponse().addDateHeader(name, date);
}
-
+
/**
- * The default behavior of this method is to return setHeader(String name, String value)
- * on the wrapped response object.
+ * The default behavior of this method is to return setHeader(String name,
+ * String value) on the wrapped response object.
*/
public void setHeader(String name, String value) {
- this._getHttpServletResponse().setHeader(name, value);
+ this._getHttpServletResponse().setHeader(name, value);
}
-
+
/**
- * The default behavior of this method is to return addHeader(String name, String value)
- * on the wrapped response object.
+ * The default behavior of this method is to return addHeader(String name,
+ * String value) on the wrapped response object.
*/
- public void addHeader(String name, String value) {
- this._getHttpServletResponse().addHeader(name, value);
+ public void addHeader(String name, String value) {
+ this._getHttpServletResponse().addHeader(name, value);
}
-
+
/**
- * The default behavior of this method is to call setIntHeader(String name, int value)
- * on the wrapped response object.
+ * The default behavior of this method is to call setIntHeader(String name,
+ * int value) on the wrapped response object.
*/
public void setIntHeader(String name, int value) {
- this._getHttpServletResponse().setIntHeader(name, value);
+ this._getHttpServletResponse().setIntHeader(name, value);
}
-
+
/**
- * The default behavior of this method is to call addIntHeader(String name, int value)
- * on the wrapped response object.
+ * The default behavior of this method is to call addIntHeader(String name,
+ * int value) on the wrapped response object.
*/
public void addIntHeader(String name, int value) {
- this._getHttpServletResponse().addIntHeader(name, value);
+ this._getHttpServletResponse().addIntHeader(name, value);
}
/**
- * The default behavior of this method is to call setStatus(int sc)
- * on the wrapped response object.
+ * The default behavior of this method is to call setStatus(int sc) on the
+ * wrapped response object.
*/
-
-
public void setStatus(int sc) {
- this._getHttpServletResponse().setStatus(sc);
+ this._getHttpServletResponse().setStatus(sc);
}
-
+
/**
- * The default behavior of this method is to call setStatus(int sc, String sm)
- * on the wrapped response object.
+ * The default behavior of this method is to call setStatus(int sc, String
+ * sm) on the wrapped response object.
+ *
* @deprecated As of Version 3.0 of the Java Servlet API
*/
- @SuppressWarnings("dep-ann") // Spec API does not use @Deprecated
+ @SuppressWarnings("dep-ann")
+ // Spec API does not use @Deprecated
public void setStatus(int sc, String sm) {
- this._getHttpServletResponse().setStatus(sc, sm);
+ this._getHttpServletResponse().setStatus(sc, sm);
}
-
/**
- * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
+ * @since Servlet 3.0 TODO SERVLET3 - Add comments
*/
public int getStatus() {
return this._getHttpServletResponse().getStatus();
}
-
/**
- * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
+ * @since Servlet 3.0 TODO SERVLET3 - Add comments
*/
public String getHeader(String name) {
return this._getHttpServletResponse().getHeader(name);
}
-
/**
- * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
+ * @since Servlet 3.0 TODO SERVLET3 - Add comments
*/
public Collection<String> getHeaders(String name) {
return this._getHttpServletResponse().getHeaders(name);
}
/**
- * @since Servlet 3.0
- * TODO SERVLET3 - Add comments
+ * @since Servlet 3.0 TODO SERVLET3 - Add comments
*/
public Collection<String> getHeaderNames() {
return this._getHttpServletResponse().getHeaderNames();
}
-
}
Modified: tomcat/trunk/java/javax/servlet/http/HttpSession.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/http/HttpSession.java?rev=967146&r1=967145&r2=967146&view=diff
==============================================================================
--- tomcat/trunk/java/javax/servlet/http/HttpSession.java (original)
+++ tomcat/trunk/java/javax/servlet/http/HttpSession.java Fri Jul 23 16:03:25 2010
@@ -1,417 +1,286 @@
/*
-* Licensed to the Apache Software Foundation (ASF) under one or more
-* contributor license agreements. See the NOTICE file distributed with
-* this work for additional information regarding copyright ownership.
-* The ASF licenses this file to You under the Apache License, Version 2.0
-* (the "License"); you may not use this file except in compliance with
-* the License. You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package javax.servlet.http;
import java.util.Enumeration;
import javax.servlet.ServletContext;
/**
- *
- * Provides a way to identify a user across more than one page
- * request or visit to a Web site and to store information about that user.
- *
- * <p>The servlet container uses this interface to create a session
- * between an HTTP client and an HTTP server. The session persists
- * for a specified time period, across more than one connection or
- * page request from the user. A session usually corresponds to one
- * user, who may visit a site many times. The server can maintain a
- * session in many ways such as using cookies or rewriting URLs.
- *
- * <p>This interface allows servlets to
+ * Provides a way to identify a user across more than one page request or visit
+ * to a Web site and to store information about that user.
+ * <p>
+ * The servlet container uses this interface to create a session between an HTTP
+ * client and an HTTP server. The session persists for a specified time period,
+ * across more than one connection or page request from the user. A session
+ * usually corresponds to one user, who may visit a site many times. The server
+ * can maintain a session in many ways such as using cookies or rewriting URLs.
+ * <p>
+ * This interface allows servlets to
* <ul>
- * <li>View and manipulate information about a session, such as
- * the session identifier, creation time, and last accessed time
- * <li>Bind objects to sessions, allowing user information to persist
- * across multiple user connections
+ * <li>View and manipulate information about a session, such as the session
+ * identifier, creation time, and last accessed time
+ * <li>Bind objects to sessions, allowing user information to persist across
+ * multiple user connections
* </ul>
- *
- * <p>When an application stores an object in or removes an object from a
- * session, the session checks whether the object implements
- * {@link HttpSessionBindingListener}. If it does,
- * the servlet notifies the object that it has been bound to or unbound
- * from the session. Notifications are sent after the binding methods complete.
- * For session that are invalidated or expire, notifications are sent after
- * the session has been invalidated or expired.
- *
- * <p> When container migrates a session between VMs in a distributed container
- * setting, all session attributes implementing the {@link HttpSessionActivationListener}
- * interface are notified.
+ * <p>
+ * When an application stores an object in or removes an object from a session,
+ * the session checks whether the object implements
+ * {@link HttpSessionBindingListener}. If it does, the servlet notifies the
+ * object that it has been bound to or unbound from the session. Notifications
+ * are sent after the binding methods complete. For session that are invalidated
+ * or expire, notifications are sent after the session has been invalidated or
+ * expired.
+ * <p>
+ * When container migrates a session between VMs in a distributed container
+ * setting, all session attributes implementing the
+ * {@link HttpSessionActivationListener} interface are notified.
+ * <p>
+ * A servlet should be able to handle cases in which the client does not choose
+ * to join a session, such as when cookies are intentionally turned off. Until
+ * the client joins the session, <code>isNew</code> returns <code>true</code>.
+ * If the client chooses not to join the session, <code>getSession</code> will
+ * return a different session on each request, and <code>isNew</code> will
+ * always return <code>true</code>.
+ * <p>
+ * Session information is scoped only to the current web application (
+ * <code>ServletContext</code>), so information stored in one context will not
+ * be directly visible in another.
*
- * <p>A servlet should be able to handle cases in which
- * the client does not choose to join a session, such as when cookies are
- * intentionally turned off. Until the client joins the session,
- * <code>isNew</code> returns <code>true</code>. If the client chooses
- * not to join
- * the session, <code>getSession</code> will return a different session
- * on each request, and <code>isNew</code> will always return
- * <code>true</code>.
- *
- * <p>Session information is scoped only to the current web application
- * (<code>ServletContext</code>), so information stored in one context
- * will not be directly visible in another.
- *
- * @author Various
- * @version $Version$
- *
- *
- * @see HttpSessionBindingListener
- * @see HttpSessionContext
- *
+ * @author Various
+ * @version $Version$
+ * @see HttpSessionBindingListener
+ * @see HttpSessionContext
*/
-
public interface HttpSession {
-
-
-
/**
- *
- * Returns the time when this session was created, measured
- * in milliseconds since midnight January 1, 1970 GMT.
- *
- * @return a <code>long</code> specifying
- * when this session was created,
- * expressed in
- * milliseconds since 1/1/1970 GMT
- *
- * @exception IllegalStateException if this method is called on an
- * invalidated session
- *
+ * Returns the time when this session was created, measured in milliseconds
+ * since midnight January 1, 1970 GMT.
+ *
+ * @return a <code>long</code> specifying when this session was created,
+ * expressed in milliseconds since 1/1/1970 GMT
+ * @exception IllegalStateException
+ * if this method is called on an invalidated session
*/
-
public long getCreationTime();
-
-
-
-
- /**
- *
- * Returns a string containing the unique identifier assigned
- * to this session. The identifier is assigned
- * by the servlet container and is implementation dependent.
- *
- * @return a string specifying the identifier
- * assigned to this session
- *
- * @exception IllegalStateException if this method is called on an
- * invalidated session
- *
- */
- public String getId();
-
-
-
-
- /**
- *
- * Returns the last time the client sent a request associated with
- * this session, as the number of milliseconds since midnight
- * January 1, 1970 GMT, and marked by the time the container received the request.
- *
- * <p>Actions that your application takes, such as getting or setting
- * a value associated with the session, do not affect the access
- * time.
- *
- * @return a <code>long</code>
- * representing the last time
- * the client sent a request associated
- * with this session, expressed in
- * milliseconds since 1/1/1970 GMT
- *
- * @exception IllegalStateException if this method is called on an
- * invalidated session
- *
+ /**
+ * Returns a string containing the unique identifier assigned to this
+ * session. The identifier is assigned by the servlet container and is
+ * implementation dependent.
+ *
+ * @return a string specifying the identifier assigned to this session
+ * @exception IllegalStateException
+ * if this method is called on an invalidated session
*/
+ public String getId();
- public long getLastAccessedTime();
-
-
/**
- * Returns the ServletContext to which this session belongs.
- *
- * @return The ServletContext object for the web application
- * @since 2.3
- */
+ * Returns the last time the client sent a request associated with this
+ * session, as the number of milliseconds since midnight January 1, 1970
+ * GMT, and marked by the time the container received the request.
+ * <p>
+ * Actions that your application takes, such as getting or setting a value
+ * associated with the session, do not affect the access time.
+ *
+ * @return a <code>long</code> representing the last time the client sent a
+ * request associated with this session, expressed in milliseconds
+ * since 1/1/1970 GMT
+ * @exception IllegalStateException
+ * if this method is called on an invalidated session
+ */
+ public long getLastAccessedTime();
+ /**
+ * Returns the ServletContext to which this session belongs.
+ *
+ * @return The ServletContext object for the web application
+ * @since 2.3
+ */
public ServletContext getServletContext();
-
/**
- *
- * Specifies the time, in seconds, between client requests before the
- * servlet container will invalidate this session. A negative time
- * indicates the session should never timeout.
- *
- * @param interval An integer specifying the number
- * of seconds
- *
+ * Specifies the time, in seconds, between client requests before the
+ * servlet container will invalidate this session. A negative time indicates
+ * the session should never timeout.
+ *
+ * @param interval
+ * An integer specifying the number of seconds
*/
-
public void setMaxInactiveInterval(int interval);
-
-
-
- /**
- * Returns the maximum time interval, in seconds, that
- * the servlet container will keep this session open between
- * client accesses. After this interval, the servlet container
- * will invalidate the session. The maximum time interval can be set
- * with the <code>setMaxInactiveInterval</code> method.
- * A negative time indicates the session should never timeout.
- *
- *
- * @return an integer specifying the number of
- * seconds this session remains open
- * between client requests
- *
- * @see #setMaxInactiveInterval
- *
- *
- */
-
+ /**
+ * Returns the maximum time interval, in seconds, that the servlet container
+ * will keep this session open between client accesses. After this interval,
+ * the servlet container will invalidate the session. The maximum time
+ * interval can be set with the <code>setMaxInactiveInterval</code> method.
+ * A negative time indicates the session should never timeout.
+ *
+ * @return an integer specifying the number of seconds this session remains
+ * open between client requests
+ * @see #setMaxInactiveInterval
+ */
public int getMaxInactiveInterval();
-
-
-
- /**
- *
- * @deprecated As of Version 2.1, this method is
- * deprecated and has no replacement.
- * It will be removed in a future
- * version of the Java Servlet API.
- *
- */
- @SuppressWarnings("dep-ann") // Spec API does not use @Deprecated
+ /**
+ * @deprecated As of Version 2.1, this method is deprecated and has no
+ * replacement. It will be removed in a future version of the
+ * Java Servlet API.
+ */
+ @SuppressWarnings("dep-ann")
+ // Spec API does not use @Deprecated
public HttpSessionContext getSessionContext();
-
-
-
-
+
/**
- *
* Returns the object bound with the specified name in this session, or
* <code>null</code> if no object is bound under the name.
- *
- * @param name a string specifying the name of the object
- *
- * @return the object with the specified name
- *
- * @exception IllegalStateException if this method is called on an
- * invalidated session
- *
+ *
+ * @param name
+ * a string specifying the name of the object
+ * @return the object with the specified name
+ * @exception IllegalStateException
+ * if this method is called on an invalidated session
*/
-
public Object getAttribute(String name);
-
-
-
-
- /**
- * @param name a string specifying the name of the object
- *
- * @return the object with the specified name
- *
- * @exception IllegalStateException if this method is called on an
- * invalidated session
- *
- * @deprecated As of Version 2.2, this method is
- * replaced by {@link #getAttribute}.
+
+ /**
+ * @param name
+ * a string specifying the name of the object
+ * @return the object with the specified name
+ * @exception IllegalStateException
+ * if this method is called on an invalidated session
+ * @deprecated As of Version 2.2, this method is replaced by
+ * {@link #getAttribute}.
*/
- @SuppressWarnings("dep-ann") // Spec API does not use @Deprecated
+ @SuppressWarnings("dep-ann")
+ // Spec API does not use @Deprecated
public Object getValue(String name);
-
-
-
/**
- *
* Returns an <code>Enumeration</code> of <code>String</code> objects
- * containing the names of all the objects bound to this session.
- *
- * @return an <code>Enumeration</code> of
- * <code>String</code> objects specifying the
- * names of all the objects bound to
- * this session
- *
- * @exception IllegalStateException if this method is called on an
- * invalidated session
- *
+ * containing the names of all the objects bound to this session.
+ *
+ * @return an <code>Enumeration</code> of <code>String</code> objects
+ * specifying the names of all the objects bound to this session
+ * @exception IllegalStateException
+ * if this method is called on an invalidated session
*/
-
public Enumeration<String> getAttributeNames();
-
-
-
-
- /**
- * @return an array of <code>String</code>
- * objects specifying the
- * names of all the objects bound to
- * this session
- *
- * @exception IllegalStateException if this method is called on an
- * invalidated session
- *
- * @deprecated As of Version 2.2, this method is
- * replaced by {@link #getAttributeNames}
+
+ /**
+ * @return an array of <code>String</code> objects specifying the names of
+ * all the objects bound to this session
+ * @exception IllegalStateException
+ * if this method is called on an invalidated session
+ * @deprecated As of Version 2.2, this method is replaced by
+ * {@link #getAttributeNames}
*/
- @SuppressWarnings("dep-ann") // Spec API does not use @Deprecated
+ @SuppressWarnings("dep-ann")
+ // Spec API does not use @Deprecated
public String[] getValueNames();
-
-
-
/**
- * Binds an object to this session, using the name specified.
- * If an object of the same name is already bound to the session,
- * the object is replaced.
- *
- * <p>After this method executes, and if the new object
- * implements <code>HttpSessionBindingListener</code>,
- * the container calls
- * <code>HttpSessionBindingListener.valueBound</code>. The container then
- * notifies any <code>HttpSessionAttributeListener</code>s in the web
+ * Binds an object to this session, using the name specified. If an object
+ * of the same name is already bound to the session, the object is replaced.
+ * <p>
+ * After this method executes, and if the new object implements
+ * <code>HttpSessionBindingListener</code>, the container calls
+ * <code>HttpSessionBindingListener.valueBound</code>. The container then
+ * notifies any <code>HttpSessionAttributeListener</code>s in the web
* application.
-
- * <p>If an object was already bound to this session of this name
- * that implements <code>HttpSessionBindingListener</code>, its
+ * <p>
+ * If an object was already bound to this session of this name that
+ * implements <code>HttpSessionBindingListener</code>, its
* <code>HttpSessionBindingListener.valueUnbound</code> method is called.
- *
- * <p>If the value passed in is null, this has the same effect as calling
+ * <p>
+ * If the value passed in is null, this has the same effect as calling
* <code>removeAttribute()<code>.
- *
- *
- * @param name the name to which the object is bound;
- * cannot be null
- *
- * @param value the object to be bound
- *
- * @exception IllegalStateException if this method is called on an
- * invalidated session
- *
+ *
+ * @param name
+ * the name to which the object is bound; cannot be null
+ * @param value
+ * the object to be bound
+ * @exception IllegalStateException
+ * if this method is called on an invalidated session
*/
-
public void setAttribute(String name, Object value);
-
-
-
-
/**
- * @param name the name to which the object is bound;
- * cannot be null
- *
- * @param value the object to be bound; cannot be null
- *
- * @exception IllegalStateException if this method is called on an
- * invalidated session
- *
- * @deprecated As of Version 2.2, this method is
- * replaced by {@link #setAttribute}
+ * @param name
+ * the name to which the object is bound; cannot be null
+ * @param value
+ * the object to be bound; cannot be null
+ * @exception IllegalStateException
+ * if this method is called on an invalidated session
+ * @deprecated As of Version 2.2, this method is replaced by
+ * {@link #setAttribute}
*/
- @SuppressWarnings("dep-ann") // Spec API does not use @Deprecated
+ @SuppressWarnings("dep-ann")
+ // Spec API does not use @Deprecated
public void putValue(String name, Object value);
-
-
-
-
/**
- *
- * Removes the object bound with the specified name from
- * this session. If the session does not have an object
- * bound with the specified name, this method does nothing.
- *
- * <p>After this method executes, and if the object
- * implements <code>HttpSessionBindingListener</code>,
- * the container calls
- * <code>HttpSessionBindingListener.valueUnbound</code>. The container
- * then notifies any <code>HttpSessionAttributeListener</code>s in the web
+ * Removes the object bound with the specified name from this session. If
+ * the session does not have an object bound with the specified name, this
+ * method does nothing.
+ * <p>
+ * After this method executes, and if the object implements
+ * <code>HttpSessionBindingListener</code>, the container calls
+ * <code>HttpSessionBindingListener.valueUnbound</code>. The container then
+ * notifies any <code>HttpSessionAttributeListener</code>s in the web
* application.
*
- *
- *
- * @param name the name of the object to
- * remove from this session
- *
- * @exception IllegalStateException if this method is called on an
- * invalidated session
+ * @param name
+ * the name of the object to remove from this session
+ * @exception IllegalStateException
+ * if this method is called on an invalidated session
*/
-
public void removeAttribute(String name);
-
-
-
-
/**
- * @param name the name of the object to
- * remove from this session
- *
- * @exception IllegalStateException if this method is called on an
- * invalidated session
- *
- * @deprecated As of Version 2.2, this method is
- * replaced by {@link #removeAttribute}
+ * @param name
+ * the name of the object to remove from this session
+ * @exception IllegalStateException
+ * if this method is called on an invalidated session
+ * @deprecated As of Version 2.2, this method is replaced by
+ * {@link #removeAttribute}
*/
- @SuppressWarnings("dep-ann") // Spec API does not use @Deprecated
+ @SuppressWarnings("dep-ann")
+ // Spec API does not use @Deprecated
public void removeValue(String name);
-
-
-
/**
- *
- * Invalidates this session then unbinds any objects bound
- * to it.
- *
- * @exception IllegalStateException if this method is called on an
- * already invalidated session
- *
+ * Invalidates this session then unbinds any objects bound to it.
+ *
+ * @exception IllegalStateException
+ * if this method is called on an already invalidated session
*/
-
public void invalidate();
-
-
-
-
+
/**
- *
* Returns <code>true</code> if the client does not yet know about the
- * session or if the client chooses not to join the session. For
- * example, if the server used only cookie-based sessions, and
- * the client had disabled the use of cookies, then a session would
- * be new on each request.
- *
- * @return <code>true</code> if the
- * server has created a session,
- * but the client has not yet joined
- *
- * @exception IllegalStateException if this method is called on an
- * already invalidated session
- *
+ * session or if the client chooses not to join the session. For example, if
+ * the server used only cookie-based sessions, and the client had disabled
+ * the use of cookies, then a session would be new on each request.
+ *
+ * @return <code>true</code> if the server has created a session, but the
+ * client has not yet joined
+ * @exception IllegalStateException
+ * if this method is called on an already invalidated session
*/
-
public boolean isNew();
-
-
-
}
-
Modified: tomcat/trunk/java/javax/servlet/http/HttpSessionAttributeListener.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/http/HttpSessionAttributeListener.java?rev=967146&r1=967145&r2=967146&view=diff
==============================================================================
--- tomcat/trunk/java/javax/servlet/http/HttpSessionAttributeListener.java (original)
+++ tomcat/trunk/java/javax/servlet/http/HttpSessionAttributeListener.java Fri Jul 23 16:03:25 2010
@@ -1,36 +1,46 @@
/*
-* Licensed to the Apache Software Foundation (ASF) under one or more
-* contributor license agreements. See the NOTICE file distributed with
-* this work for additional information regarding copyright ownership.
-* The ASF licenses this file to You under the Apache License, Version 2.0
-* (the "License"); you may not use this file except in compliance with
-* the License. You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package javax.servlet.http;
import java.util.EventListener;
- /** This listener interface can be implemented in order to
- * get notifications of changes to the attribute lists of sessions within
- * this web application.
- * @since v 2.3
-*/
-
+/**
+ * This listener interface can be implemented in order to get notifications of
+ * changes to the attribute lists of sessions within this web application.
+ *
+ * @since v 2.3
+ */
public interface HttpSessionAttributeListener extends EventListener {
- /** Notification that an attribute has been added to a session. Called after the attribute is added.*/
- public void attributeAdded ( HttpSessionBindingEvent se );
- /** Notification that an attribute has been removed from a session. Called after the attribute is removed. */
- public void attributeRemoved ( HttpSessionBindingEvent se );
- /** Notification that an attribute has been replaced in a session. Called after the attribute is replaced. */
- public void attributeReplaced ( HttpSessionBindingEvent se );
-}
+ /**
+ * Notification that an attribute has been added to a session. Called after
+ * the attribute is added.
+ */
+ public void attributeAdded(HttpSessionBindingEvent se);
+ /**
+ * Notification that an attribute has been removed from a session. Called
+ * after the attribute is removed.
+ */
+ public void attributeRemoved(HttpSessionBindingEvent se);
+
+ /**
+ * Notification that an attribute has been replaced in a session. Called
+ * after the attribute is replaced.
+ */
+ public void attributeReplaced(HttpSessionBindingEvent se);
+}
Modified: tomcat/trunk/java/javax/servlet/http/HttpSessionBindingEvent.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/http/HttpSessionBindingEvent.java?rev=967146&r1=967145&r2=967146&view=diff
==============================================================================
--- tomcat/trunk/java/javax/servlet/http/HttpSessionBindingEvent.java (original)
+++ tomcat/trunk/java/javax/servlet/http/HttpSessionBindingEvent.java Fri Jul 23 16:03:25 2010
@@ -1,153 +1,112 @@
/*
-* Licensed to the Apache Software Foundation (ASF) under one or more
-* contributor license agreements. See the NOTICE file distributed with
-* this work for additional information regarding copyright ownership.
-* The ASF licenses this file to You under the Apache License, Version 2.0
-* (the "License"); you may not use this file except in compliance with
-* the License. You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package javax.servlet.http;
-
-
/**
- *
* Events of this type are either sent to an object that implements
- * {@link HttpSessionBindingListener} when it is bound or
- * unbound from a session, or to a {@link HttpSessionAttributeListener}
- * that has been configured in the deployment descriptor when any attribute is
- * bound, unbound or replaced in a session.
- *
- * <p>The session binds the object by a call to
- * <code>HttpSession.setAttribute</code> and unbinds the object
- * by a call to <code>HttpSession.removeAttribute</code>.
- *
- *
- *
- * @author Various
- * @version $Version$
+ * {@link HttpSessionBindingListener} when it is bound or unbound from a
+ * session, or to a {@link HttpSessionAttributeListener} that has been
+ * configured in the deployment descriptor when any attribute is bound, unbound
+ * or replaced in a session.
+ * <p>
+ * The session binds the object by a call to
+ * <code>HttpSession.setAttribute</code> and unbinds the object by a call to
+ * <code>HttpSession.removeAttribute</code>.
*
- * @see HttpSession
- * @see HttpSessionBindingListener
- * @see HttpSessionAttributeListener
+ * @author Various
+ * @version $Version$
+ * @see HttpSession
+ * @see HttpSessionBindingListener
+ * @see HttpSessionAttributeListener
*/
-
public class HttpSessionBindingEvent extends HttpSessionEvent {
-
-
-
/* The name to which the object is being bound or unbound */
private String name;
-
+
/* The object is being bound or unbound */
private Object value;
-
-
/**
- *
- * Constructs an event that notifies an object that it
- * has been bound to or unbound from a session.
- * To receive the event, the object must implement
+ * Constructs an event that notifies an object that it has been bound to or
+ * unbound from a session. To receive the event, the object must implement
* {@link HttpSessionBindingListener}.
- *
- *
- *
- * @param session the session to which the object is bound or unbound
- *
- * @param name the name with which the object is bound or unbound
- *
- * @see #getName
- * @see #getSession
- *
+ *
+ * @param session
+ * the session to which the object is bound or unbound
+ * @param name
+ * the name with which the object is bound or unbound
+ * @see #getName
+ * @see #getSession
*/
-
public HttpSessionBindingEvent(HttpSession session, String name) {
- super(session);
- this.name = name;
+ super(session);
+ this.name = name;
}
-
+
/**
- *
- * Constructs an event that notifies an object that it
- * has been bound to or unbound from a session.
- * To receive the event, the object must implement
+ * Constructs an event that notifies an object that it has been bound to or
+ * unbound from a session. To receive the event, the object must implement
* {@link HttpSessionBindingListener}.
- *
- *
- *
- * @param session the session to which the object is bound or unbound
- *
- * @param name the name with which the object is bound or unbound
- *
- * @see #getName
- * @see #getSession
- *
+ *
+ * @param session
+ * the session to which the object is bound or unbound
+ * @param name
+ * the name with which the object is bound or unbound
+ * @see #getName
+ * @see #getSession
*/
-
- public HttpSessionBindingEvent(HttpSession session, String name, Object value) {
- super(session);
- this.name = name;
- this.value = value;
+ public HttpSessionBindingEvent(HttpSession session, String name,
+ Object value) {
+ super(session);
+ this.name = name;
+ this.value = value;
}
-
-
- /** Return the session that changed. */
+
+ /** Return the session that changed. */
@Override
- public HttpSession getSession () {
- return super.getSession();
+ public HttpSession getSession() {
+ return super.getSession();
}
-
-
-
-
+
/**
- *
- * Returns the name with which the attribute is bound to or
- * unbound from the session.
- *
- *
- * @return a string specifying the name with which
- * the object is bound to or unbound from
- * the session
- *
- *
+ * Returns the name with which the attribute is bound to or unbound from the
+ * session.
+ *
+ * @return a string specifying the name with which the object is bound to or
+ * unbound from the session
*/
-
public String getName() {
- return name;
+ return name;
}
-
+
/**
- * Returns the value of the attribute that has been added, removed or replaced.
- * If the attribute was added (or bound), this is the value of the attribute. If the attribute was
- * removed (or unbound), this is the value of the removed attribute. If the attribute was replaced, this
- * is the old value of the attribute.
- *
- * @since 2.3
- */
-
- public Object getValue() {
- return this.value;
- }
-
+ * Returns the value of the attribute that has been added, removed or
+ * replaced. If the attribute was added (or bound), this is the value of the
+ * attribute. If the attribute was removed (or unbound), this is the value
+ * of the removed attribute. If the attribute was replaced, this is the old
+ * value of the attribute.
+ *
+ * @since 2.3
+ */
+ public Object getValue() {
+ return this.value;
+ }
}
-
-
-
-
-
-
-
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org