Class ExpressionBuilder

java.lang.Object
org.glassfish.expressly.lang.ExpressionBuilder
All Implemented Interfaces:
NodeVisitor

public final class ExpressionBuilder extends Object implements NodeVisitor
Version:
$Change: 181177 $$DateTime: 2001/06/26 08:45:09 $$Author: kchung $
  • Field Details

    • cache

      private static final ExpressionBuilder.SoftConcurrentHashMap cache
    • fnMapper

      private jakarta.el.FunctionMapper fnMapper
    • varMapper

      private jakarta.el.VariableMapper varMapper
    • expression

      private String expression
  • Constructor Details

    • ExpressionBuilder

      public ExpressionBuilder(String expression, jakarta.el.ELContext ctx) throws jakarta.el.ELException
      Throws:
      jakarta.el.ELException
  • Method Details

    • createNode

      public static Node createNode(String expr) throws jakarta.el.ELException
      Throws:
      jakarta.el.ELException
    • createNodeInternal

      private static Node createNodeInternal(String expr) throws jakarta.el.ELException
      Throws:
      jakarta.el.ELException
    • prepare

      private void prepare(Node node) throws jakarta.el.ELException
      Scan the expression nodes and captures the functions and variables used in this expression. This ensures that any changes to the functions or variables mappings during the expression will not affect the evaluation of this expression, as the functions and variables are bound and resolved at parse time, as specified in the spec.
      Throws:
      jakarta.el.ELException
    • build

      private Node build() throws jakarta.el.ELException
      Throws:
      jakarta.el.ELException
    • visit

      public void visit(Node node) throws jakarta.el.ELException
      Specified by:
      visit in interface NodeVisitor
      Throws:
      jakarta.el.ELException
    • createValueExpression

      public jakarta.el.ValueExpression createValueExpression(Class<?> expectedType) throws jakarta.el.ELException
      Throws:
      jakarta.el.ELException
    • createMethodExpression

      public jakarta.el.MethodExpression createMethodExpression(Class<?> expectedReturnType, Class<?>[] expectedParamTypes) throws jakarta.el.ELException
      Throws:
      jakarta.el.ELException