Package ognl

Class ASTProperty

All Implemented Interfaces:
Serializable, JavaSource, Node, NodeType

public class ASTProperty extends SimpleNode implements NodeType
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • indexedAccess

      private boolean indexedAccess
    • getterClass

      private Class<?> getterClass
    • setterClass

      private Class<?> setterClass
  • Constructor Details

    • ASTProperty

      public ASTProperty(int id)
  • Method Details

    • setIndexedAccess

      public void setIndexedAccess(boolean value)
    • isIndexedAccess

      public boolean isIndexedAccess()
      Returns true if this property is itself an index reference.
      Returns:
      true if this property is an index reference, false otherwise.
    • getIndexedPropertyType

      public int getIndexedPropertyType(OgnlContext context, Object source) throws OgnlException
      Returns true if this property is described by an IndexedPropertyDescriptor and that if followed by an index specifier it will call the index get/set methods rather than go through property accessors.
      Parameters:
      context - the OgnlContext within which to perform the operation.
      source - the Object (indexed property) from which to retrieve the indexed property type.
      Returns:
      the int representing the indexed property type of source.
      Throws:
      OgnlException - if source is not an indexed property.
    • getProperty

      public Object getProperty(OgnlContext context, Object source) throws OgnlException
      Throws:
      OgnlException
    • 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
      Parameters:
      context - the OgnlContext within which to perform the operation.
      source - the Object from which to get the value body.
      Returns:
      the value body from the source (as appropriate within the provided context).
      Throws:
      OgnlException - if the value body get fails.
    • setValueBody

      protected void setValueBody(OgnlContext context, Object target, Object value) throws OgnlException
      Description copied from class: SimpleNode
      Subclasses implement this method to do the actual work of setting the appropriate value in the target object. The default implementation throws an InappropriateExpressionException, meaning that it cannot be a set expression.
      Overrides:
      setValueBody in class SimpleNode
      Parameters:
      context - the OgnlContext within which to perform the operation.
      target - the Object upon which to set the value body.
      value - the Object representing the value body to apply to the target.
      Throws:
      OgnlException - if the value body set fails.
    • isNodeSimpleProperty

      public boolean isNodeSimpleProperty(OgnlContext context) throws OgnlException
      Overrides:
      isNodeSimpleProperty in class SimpleNode
      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.
    • toString

      public String toString()
      Overrides:
      toString in class SimpleNode
    • 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
      Parameters:
      context - the OgnlContext within which to perform the operation.
      target - the Object from which to retrieve the get source string.
      Returns:
      Literal java string representation of an object get.
    • getIndexedWriteMethod

      Method getIndexedWriteMethod(PropertyDescriptor pd)
    • 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
      Parameters:
      context - the OgnlContext within which to perform the operation.
      target - the Object from which to retrieve the set source string.
      Returns:
      Literal java string representation of an object set.