Package org.apache.jasper.optimizations
Class ELInterpreterTagSetters
java.lang.Object
org.apache.jasper.optimizations.ELInterpreterTagSetters
- All Implemented Interfaces:
ELInterpreter
A non-specification compliant
ELInterpreter
that optimizes a subset
of setters for tag attributes.
The cases optimized by this implementation are:
- expressions that are solely a literal boolean
- expressions that are solely a constant string used (with coercion where necessary) with a setter that accepts:
- boolean / Boolean
- char / Character
- BigDecimal
- long / Long
- int / Integer
- short / Short
- byte / Byte
- double / Double
- float / Float
- BigInteger
- Enum
- String
ELResolver
s listed in section JSP.2.9 and effectively hard
codes the use of the 4th ELResolver
in that list.- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptioninterpreterCall
(JspCompilationContext context, boolean isTagFile, String expression, Class<?> expectedType, String fnmapvar) Returns the string representing the code that will be inserted into the servlet generated for JSP.
-
Constructor Details
-
ELInterpreterTagSetters
public ELInterpreterTagSetters()
-
-
Method Details
-
interpreterCall
public String interpreterCall(JspCompilationContext context, boolean isTagFile, String expression, Class<?> expectedType, String fnmapvar) Description copied from interface:ELInterpreter
Returns the string representing the code that will be inserted into the servlet generated for JSP. The default implementation creates a call toPageContextImpl.proprietaryEvaluate(String, Class, jakarta.servlet.jsp.PageContext, org.apache.jasper.runtime.ProtectedFunctionMapper)
but other implementations may produce more optimised code.- Specified by:
interpreterCall
in interfaceELInterpreter
- Parameters:
context
- The compilation contextisTagFile
-true
if in a tag file rather than a JSPexpression
- a String containing zero or more "${}" expressionsexpectedType
- the expected type of the interpreted resultfnmapvar
- Variable pointing to a function map.- Returns:
- a String representing a call to the EL interpreter.
-