Class ASTProperty

    • Field Detail

      • indexedAccess

        private boolean indexedAccess
      • getterClass

        private java.lang.Class getterClass
      • setterClass

        private java.lang.Class setterClass
    • Constructor Detail

      • ASTProperty

        public ASTProperty​(int id)
    • Method Detail

      • setIndexedAccess

        public void setIndexedAccess​(boolean value)
      • isIndexedAccess

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

        public int getIndexedPropertyType​(OgnlContext context,
                                          java.lang.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 context
        source - The object source
        Returns:
        true, if this property is described by an IndexedPropertyDescriptor
        Throws:
        OgnlException - if an error occurs
      • getValueBody

        protected java.lang.Object getValueBody​(OgnlContext context,
                                                java.lang.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
      • setValueBody

        protected void setValueBody​(OgnlContext context,
                                    java.lang.Object target,
                                    java.lang.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
        Throws:
        OgnlException
      • getGetterClass

        public java.lang.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 java.lang.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.
      • getIndexedWriteMethod

        java.lang.reflect.Method getIndexedWriteMethod​(java.beans.PropertyDescriptor pd)
      • 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
      • getSourceString

        private static java.lang.String getSourceString​(OgnlContext context,
                                                        Node child)