Index: 3rdParty_sources/jsp-api/javax/servlet/jsp/JspContext.java =================================================================== diff -u -r188531e2b734df509672788d897e1030e4b1a24a -ra5b247dd91cb3ffabf9de46cba029e5537fad087 --- 3rdParty_sources/jsp-api/javax/servlet/jsp/JspContext.java (.../JspContext.java) (revision 188531e2b734df509672788d897e1030e4b1a24a) +++ 3rdParty_sources/jsp-api/javax/servlet/jsp/JspContext.java (.../JspContext.java) (revision a5b247dd91cb3ffabf9de46cba029e5537fad087) @@ -1,333 +1,333 @@ -/* - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. - * - * Copyright 1997-2008 Sun Microsystems, Inc. All rights reserved. - * - * The contents of this file are subject to the terms of either the GNU - * General Public License Version 2 only ("GPL") or the Common Development - * and Distribution License("CDDL") (collectively, the "License"). You - * may not use this file except in compliance with the License. You can obtain - * a copy of the License at https://glassfish.dev.java.net/public/CDDL+GPL.html - * or glassfish/bootstrap/legal/LICENSE.txt. See the License for the specific - * language governing permissions and limitations under the License. - * - * When distributing the software, include this License Header Notice in each - * file and include the License file at glassfish/bootstrap/legal/LICENSE.txt. - * Sun designates this particular file as subject to the "Classpath" exception - * as provided by Sun in the GPL Version 2 section of the License file that - * accompanied this code. If applicable, add the following below the License - * Header, with the fields enclosed by brackets [] replaced by your own - * identifying information: "Portions Copyrighted [year] - * [name of copyright owner]" - * - * Contributor(s): - * - * If you wish your version of this file to be governed by only the CDDL or - * only the GPL Version 2, indicate your decision by adding "[Contributor] - * elects to include this software in this distribution under the [CDDL or GPL - * Version 2] license." If you don't indicate a single choice of license, a - * recipient has the option to distribute your version of this file under - * either the CDDL, the GPL Version 2 or to extend the choice of license to - * its licensees as provided above. However, if you add GPL Version 2 code - * and therefore, elected the GPL Version 2 license, then the option applies - * only if the new code is made subject to such option by the copyright - * holder. - * - * - * This file incorporates work covered by the following copyright and - * permission notice: - * - * Copyright 2004 The Apache Software Foundation - * - * Licensed 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.jsp; - -import java.util.Enumeration; - -import javax.servlet.jsp.el.ExpressionEvaluator; -import javax.servlet.jsp.el.VariableResolver; - -import javax.el.ELContext; - -/** - *
- * JspContext
serves as the base class for the
- * PageContext class and abstracts all information that is not specific
- * to servlets. This allows for Simple Tag Extensions to be used
- * outside of the context of a request/response Servlet.
- *
- * The JspContext provides a number of facilities to the - * page/component author and page implementor, including: - *
Methods Intended for Container Generated Code - *
- * The following methods enable the management of nested JspWriter
- * streams to implement Tag Extensions: pushBody()
and
- * popBody()
- *
- *
Methods Intended for JSP authors - *
- * Some methods provide uniform access to the diverse objects
- * representing scopes.
- * The implementation must use the underlying machinery
- * corresponding to that scope, so information can be passed back and
- * forth between the underlying environment (e.g. Servlets) and JSP pages.
- * The methods are:
- * setAttribute()
, getAttribute()
,
- * findAttribute()
, removeAttribute()
,
- * getAttributesScope()
and
- * getAttributeNamesInScope()
.
- *
- *
- * The following methods provide convenient access to implicit objects:
- * getOut()
- *
- *
- * The following methods provide programmatic access to the
- * Expression Language evaluator:
- * The The The returned JspWriter must implement all methods and
- * behave as though it were unbuffered. More specifically:
- * getExpressionEvaluator()
, getVariableResolver()
- *
- * @since JSP 2.0
- */
-
-public abstract class JspContext {
-
- /**
- * Sole constructor. (For invocation by subclass constructors,
- * typically implicit.)
- */
- public JspContext() {
- }
-
- /**
- * Register the name and value specified with page scope semantics.
- * If the value passed in is null
, this has the same
- * effect as calling
- * removeAttribute( name, PageContext.PAGE_SCOPE )
.
- *
- * @param name the name of the attribute to set
- * @param value the value to associate with the name, or null if the
- * attribute is to be removed from the page scope.
- * @throws NullPointerException if the name is null
- */
-
- abstract public void setAttribute(String name, Object value);
-
- /**
- * Register the name and value specified with appropriate
- * scope semantics. If the value passed in is null
,
- * this has the same effect as calling
- * removeAttribute( name, scope )
.
- *
- * @param name the name of the attribute to set
- * @param value the object to associate with the name, or null if
- * the attribute is to be removed from the specified scope.
- * @param scope the scope with which to associate the name/object
- *
- * @throws NullPointerException if the name is null
- * @throws IllegalArgumentException if the scope is invalid
- * @throws IllegalStateException if the scope is
- * PageContext.SESSION_SCOPE but the page that was requested
- * does not participate in a session or the session has been
- * invalidated.
- */
-
- abstract public void setAttribute(String name, Object value, int scope);
-
- /**
- * Returns the object associated with the name in the page scope or null
- * if not found.
- *
- * @param name the name of the attribute to get
- * @return the object associated with the name in the page scope
- * or null if not found.
- *
- * @throws NullPointerException if the name is null
- */
-
- abstract public Object getAttribute(String name);
-
- /**
- * Return the object associated with the name in the specified
- * scope or null if not found.
- *
- * @param name the name of the attribute to set
- * @param scope the scope with which to associate the name/object
- * @return the object associated with the name in the specified
- * scope or null if not found.
- *
- * @throws NullPointerException if the name is null
- * @throws IllegalArgumentException if the scope is invalid
- * @throws IllegalStateException if the scope is
- * PageContext.SESSION_SCOPE but the page that was requested
- * does not participate in a session or the session has been
- * invalidated.
- */
-
- abstract public Object getAttribute(String name, int scope);
-
- /**
- * Searches for the named attribute in page, request, session (if valid),
- * and application scope(s) in order and returns the value associated or
- * null.
- *
- * @param name the name of the attribute to search for
- * @return the value associated or null
- * @throws NullPointerException if the name is null
- */
-
- abstract public Object findAttribute(String name);
-
- /**
- * Remove the object reference associated with the given name
- * from all scopes. Does nothing if there is no such object.
- *
- * @param name The name of the object to remove.
- * @throws NullPointerException if the name is null
- */
-
- abstract public void removeAttribute(String name);
-
- /**
- * Remove the object reference associated with the specified name
- * in the given scope. Does nothing if there is no such object.
- *
- * @param name The name of the object to remove.
- * @param scope The scope where to look.
- * @throws IllegalArgumentException if the scope is invalid
- * @throws IllegalStateException if the scope is
- * PageContext.SESSION_SCOPE but the page that was requested
- * does not participate in a session or the session has been
- * invalidated.
- * @throws NullPointerException if the name is null
- */
-
- abstract public void removeAttribute(String name, int scope);
-
- /**
- * Get the scope where a given attribute is defined.
- *
- * @param name the name of the attribute to return the scope for
- * @return the scope of the object associated with the name specified or 0
- * @throws NullPointerException if the name is null
- */
-
- abstract public int getAttributesScope(String name);
-
- /**
- * Enumerate all the attributes in a given scope.
- *
- * @param scope the scope to enumerate all the attributes for
- * @return an enumeration of names (java.lang.String) of all the
- * attributes the specified scope
- * @throws IllegalArgumentException if the scope is invalid
- * @throws IllegalStateException if the scope is
- * PageContext.SESSION_SCOPE but the page that was requested
- * does not participate in a session or the session has been
- * invalidated.
- */
-
- abstract public EnumerationjspContext.getELContext().getELResolver()
.
- * @return A valid instance of a VariableResolver.
- * @since JSP 2.0
- */
- public abstract VariableResolver getVariableResolver();
-
- /**
- * Returns the ELContext
associated with this
- * JspContext
.
- *
- * ELContext
is created lazily and is reused if
- * it already exists. There is a new ELContext
for each
- * JspContext
.ELContext
must contain the ELResolver
- * described in the JSP specification (and in the javadocs for
- * {@link JspApplicationContext#addELResolver}).ELContext
associated with this
- * JspContext
.
- * @since JSP 2.1
- */
- public abstract ELContext getELContext();
-
- /**
- * Return a new JspWriter object that sends output to the
- * provided Writer. Saves the current "out" JspWriter,
- * and updates the value of the "out" attribute in the
- * page scope attribute namespace of the JspContext.
- *
- *
- *
+ * JspContext
serves as the base class for the
+ * PageContext class and abstracts all information that is not specific
+ * to servlets. This allows for Simple Tag Extensions to be used
+ * outside of the context of a request/response Servlet.
+ *
+ * The JspContext provides a number of facilities to the + * page/component author and page implementor, including: + *
Methods Intended for Container Generated Code + *
+ * The following methods enable the management of nested JspWriter
+ * streams to implement Tag Extensions: pushBody()
and
+ * popBody()
+ *
+ *
Methods Intended for JSP authors + *
+ * Some methods provide uniform access to the diverse objects
+ * representing scopes.
+ * The implementation must use the underlying machinery
+ * corresponding to that scope, so information can be passed back and
+ * forth between the underlying environment (e.g. Servlets) and JSP pages.
+ * The methods are:
+ * setAttribute()
, getAttribute()
,
+ * findAttribute()
, removeAttribute()
,
+ * getAttributesScope()
and
+ * getAttributeNamesInScope()
.
+ *
+ *
+ * The following methods provide convenient access to implicit objects:
+ * getOut()
+ *
+ *
+ * The following methods provide programmatic access to the
+ * Expression Language evaluator:
+ * The The The returned JspWriter must implement all methods and
+ * behave as though it were unbuffered. More specifically:
+ * getExpressionEvaluator()
, getVariableResolver()
+ *
+ * @since JSP 2.0
+ */
+
+public abstract class JspContext {
+
+ /**
+ * Sole constructor. (For invocation by subclass constructors,
+ * typically implicit.)
+ */
+ public JspContext() {
+ }
+
+ /**
+ * Register the name and value specified with page scope semantics.
+ * If the value passed in is null
, this has the same
+ * effect as calling
+ * removeAttribute( name, PageContext.PAGE_SCOPE )
.
+ *
+ * @param name the name of the attribute to set
+ * @param value the value to associate with the name, or null if the
+ * attribute is to be removed from the page scope.
+ * @throws NullPointerException if the name is null
+ */
+
+ abstract public void setAttribute(String name, Object value);
+
+ /**
+ * Register the name and value specified with appropriate
+ * scope semantics. If the value passed in is null
,
+ * this has the same effect as calling
+ * removeAttribute( name, scope )
.
+ *
+ * @param name the name of the attribute to set
+ * @param value the object to associate with the name, or null if
+ * the attribute is to be removed from the specified scope.
+ * @param scope the scope with which to associate the name/object
+ *
+ * @throws NullPointerException if the name is null
+ * @throws IllegalArgumentException if the scope is invalid
+ * @throws IllegalStateException if the scope is
+ * PageContext.SESSION_SCOPE but the page that was requested
+ * does not participate in a session or the session has been
+ * invalidated.
+ */
+
+ abstract public void setAttribute(String name, Object value, int scope);
+
+ /**
+ * Returns the object associated with the name in the page scope or null
+ * if not found.
+ *
+ * @param name the name of the attribute to get
+ * @return the object associated with the name in the page scope
+ * or null if not found.
+ *
+ * @throws NullPointerException if the name is null
+ */
+
+ abstract public Object getAttribute(String name);
+
+ /**
+ * Return the object associated with the name in the specified
+ * scope or null if not found.
+ *
+ * @param name the name of the attribute to set
+ * @param scope the scope with which to associate the name/object
+ * @return the object associated with the name in the specified
+ * scope or null if not found.
+ *
+ * @throws NullPointerException if the name is null
+ * @throws IllegalArgumentException if the scope is invalid
+ * @throws IllegalStateException if the scope is
+ * PageContext.SESSION_SCOPE but the page that was requested
+ * does not participate in a session or the session has been
+ * invalidated.
+ */
+
+ abstract public Object getAttribute(String name, int scope);
+
+ /**
+ * Searches for the named attribute in page, request, session (if valid),
+ * and application scope(s) in order and returns the value associated or
+ * null.
+ *
+ * @param name the name of the attribute to search for
+ * @return the value associated or null
+ * @throws NullPointerException if the name is null
+ */
+
+ abstract public Object findAttribute(String name);
+
+ /**
+ * Remove the object reference associated with the given name
+ * from all scopes. Does nothing if there is no such object.
+ *
+ * @param name The name of the object to remove.
+ * @throws NullPointerException if the name is null
+ */
+
+ abstract public void removeAttribute(String name);
+
+ /**
+ * Remove the object reference associated with the specified name
+ * in the given scope. Does nothing if there is no such object.
+ *
+ * @param name The name of the object to remove.
+ * @param scope The scope where to look.
+ * @throws IllegalArgumentException if the scope is invalid
+ * @throws IllegalStateException if the scope is
+ * PageContext.SESSION_SCOPE but the page that was requested
+ * does not participate in a session or the session has been
+ * invalidated.
+ * @throws NullPointerException if the name is null
+ */
+
+ abstract public void removeAttribute(String name, int scope);
+
+ /**
+ * Get the scope where a given attribute is defined.
+ *
+ * @param name the name of the attribute to return the scope for
+ * @return the scope of the object associated with the name specified or 0
+ * @throws NullPointerException if the name is null
+ */
+
+ abstract public int getAttributesScope(String name);
+
+ /**
+ * Enumerate all the attributes in a given scope.
+ *
+ * @param scope the scope to enumerate all the attributes for
+ * @return an enumeration of names (java.lang.String) of all the
+ * attributes the specified scope
+ * @throws IllegalArgumentException if the scope is invalid
+ * @throws IllegalStateException if the scope is
+ * PageContext.SESSION_SCOPE but the page that was requested
+ * does not participate in a session or the session has been
+ * invalidated.
+ */
+
+ abstract public EnumerationjspContext.getELContext().getELResolver()
.
+ * @return A valid instance of a VariableResolver.
+ * @since JSP 2.0
+ */
+ public abstract VariableResolver getVariableResolver();
+
+ /**
+ * Returns the ELContext
associated with this
+ * JspContext
.
+ *
+ * ELContext
is created lazily and is reused if
+ * it already exists. There is a new ELContext
for each
+ * JspContext
.ELContext
must contain the ELResolver
+ * described in the JSP specification (and in the javadocs for
+ * {@link JspApplicationContext#addELResolver}).ELContext
associated with this
+ * JspContext
.
+ * @since JSP 2.1
+ */
+ public abstract ELContext getELContext();
+
+ /**
+ * Return a new JspWriter object that sends output to the
+ * provided Writer. Saves the current "out" JspWriter,
+ * and updates the value of the "out" attribute in the
+ * page scope attribute namespace of the JspContext.
+ *
+ *
+ *