Class RootContext

  • All Implemented Interfaces:
    java.util.Iterator, ExpressionContext

    public class RootContext
    extends EvalContext
    EvalContext that is used to hold the root node for the path traversal.
    Version:
    $Revision: 652845 $ $Date: 2008-05-02 12:46:46 -0500 (Fri, 02 May 2008) $
    Author:
    Dmitri Plotnikov
    • Field Detail

      • registers

        private java.lang.Object[] registers
      • availableRegister

        private int availableRegister
      • UNKNOWN_VALUE

        public static final java.lang.Object UNKNOWN_VALUE
    • Constructor Detail

    • Method Detail

      • getRootContext

        public RootContext getRootContext()
        Description copied from class: EvalContext
        Returns the root context of the path, which provides easy access to variables and functions.
        Overrides:
        getRootContext in class EvalContext
        Returns:
        RootContext
      • getAbsoluteRootContext

        public EvalContext getAbsoluteRootContext()
        Get absolute root context
        Returns:
        EvalContext
      • getCurrentNodePointer

        public NodePointer getCurrentNodePointer()
        Description copied from class: EvalContext
        Returns the current context node. Undefined before the beginning of the iteration.
        Specified by:
        getCurrentNodePointer in class EvalContext
        Returns:
        NodePoiner
      • getValue

        public java.lang.Object getValue()
        Description copied from class: EvalContext
        Typically returns the NodeSet by calling getNodeSet(), but will be overridden for contexts that more naturally produce individual values, e.g. VariableContext
        Overrides:
        getValue in class EvalContext
        Returns:
        Object
      • getCurrentPosition

        public int getCurrentPosition()
        Description copied from class: EvalContext
        Get the current position.
        Overrides:
        getCurrentPosition in class EvalContext
        Returns:
        int position.
      • nextNode

        public boolean nextNode()
        Description copied from class: EvalContext
        Returns true if there is another object in the current set. Switches the current position and node to the next object.
        Specified by:
        nextNode in class EvalContext
        Returns:
        boolean
      • nextSet

        public boolean nextSet()
        Description copied from class: EvalContext
        Returns true if there is another sets of objects to interate over. Resets the current position and node.
        Overrides:
        nextSet in class EvalContext
        Returns:
        boolean
      • setPosition

        public boolean setPosition​(int position)
        Description copied from class: EvalContext
        Moves the current position to the specified index. Used with integer predicates to quickly get to the n'th element of the node set. Returns false if the position is out of the node set range. You can call it with 0 as the position argument to restart the iteration.
        Overrides:
        setPosition in class EvalContext
        Parameters:
        position - to set
        Returns:
        boolean
      • getConstantContext

        public EvalContext getConstantContext​(java.lang.Object constant)
        Get a context that points to the specified object.
        Parameters:
        constant - object
        Returns:
        EvalContext
      • getVariableContext

        public EvalContext getVariableContext​(QName variableName)
        Get variable context.
        Parameters:
        variableName - variable name
        Returns:
        EvalContext
      • getFunction

        public Function getFunction​(QName functionName,
                                    java.lang.Object[] parameters)
        Get the specified function from the context.
        Parameters:
        functionName - QName
        parameters - Object[]
        Returns:
        Function
      • getRegisteredValue

        public java.lang.Object getRegisteredValue​(int id)
        Get a registered value.
        Parameters:
        id - int
        Returns:
        Object
      • setRegisteredValue

        public int setRegisteredValue​(java.lang.Object value)
        Set the next registered value.
        Parameters:
        value - Object
        Returns:
        the id that can reclaim value.