Class ASTStaticField

java.lang.Object
org.apache.commons.ognl.SimpleNode
org.apache.commons.ognl.ASTStaticField
All Implemented Interfaces:
Serializable, JavaSource, Node, NodeType

public class ASTStaticField extends SimpleNode implements NodeType
$Id$
See Also:
  • Field Details

    • className

      private String className
    • fieldName

      private String fieldName
    • getterClass

      private Class getterClass
  • Constructor Details

    • ASTStaticField

      public ASTStaticField(int id)
    • ASTStaticField

      public ASTStaticField(OgnlParser p, int id)
  • Method Details

    • init

      void init(String className, String fieldName)
      Called from parser action.
    • getValueBody

      protected Object getValueBody(OgnlContext context, Object source) throws OgnlException
      Description copied from class: SimpleNode
      Subclasses implement this method to do the actual work of extracting the appropriate value from the source object.
      Specified by:
      getValueBody in class SimpleNode
      Throws:
      OgnlException
    • isNodeConstant

      public boolean isNodeConstant(OgnlContext context) throws OgnlException
      Description copied from class: SimpleNode
      Returns true iff this node is constant without respect to the children.
      Overrides:
      isNodeConstant in class SimpleNode
      Throws:
      OgnlException
    • getFieldClass

      Class getFieldClass(OgnlContext context) throws OgnlException
      Throws:
      OgnlException
    • getGetterClass

      public Class getGetterClass()
      Description copied from interface: NodeType
      The type returned from the expression - if any.
      Specified by:
      getGetterClass in interface NodeType
      Returns:
      The type.
    • getSetterClass

      public Class getSetterClass()
      Description copied from interface: NodeType
      The type used to set the value - if any.
      Specified by:
      getSetterClass in interface NodeType
      Returns:
      The type.
    • toGetSourceString

      public String toGetSourceString(OgnlContext context, Object target)
      Description copied from interface: JavaSource
      Expected to return a java source representation of itself such that it could be turned into a literal java expression to be compiled and executed for ExpressionAccessor.get(OgnlContext, Object) calls.
      Specified by:
      toGetSourceString in interface JavaSource
      Overrides:
      toGetSourceString in class SimpleNode
      Returns:
      Literal java string representation of an object get.
    • toSetSourceString

      public String toSetSourceString(OgnlContext context, Object target)
      Description copied from interface: JavaSource
      Expected to return a java source representation of itself such that it could be turned into a literal java expression to be compiled and executed for ExpressionAccessor.get(OgnlContext, Object) calls.
      Specified by:
      toSetSourceString in interface JavaSource
      Overrides:
      toSetSourceString in class SimpleNode
      Returns:
      Literal java string representation of an object get.
    • accept

      public <R, P> R accept(NodeVisitor<? extends R,? super P> visitor, P data) throws OgnlException
      Description copied from interface: Node
      Supports the Visitor pattern. The method which corresponds to the runtime type of this Node will be called.
      Specified by:
      accept in interface Node
      Type Parameters:
      R - The return type of the visitor.visit method.
      P - The type of the second parameter type.
      Parameters:
      visitor - The visitor to accept.
      data - The second parameter to pass through to visitor.visit
      Returns:
      the value returned by visitor.visit
      Throws:
      OgnlException
    • getFieldName

      String getFieldName()
      Get the field name for this field.
      Returns:
      the field name.
      Since:
      4.0
    • getClassName

      String getClassName()
      Get the class name for this field.
      Returns:
      the class name.
      Since:
      4.0