Package org.jaxen

Class JaxenHandler

  • All Implemented Interfaces:
    XPathHandler
    Direct Known Subclasses:
    PatternHandler

    public class JaxenHandler
    extends java.lang.Object
    implements XPathHandler
    SAXPath XPathHandler implementation capable of building Jaxen expression trees which can walk various different object models.
    • Constructor Summary

      Constructors 
      Constructor Description
      JaxenHandler()
      Constructor
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void addParameters​(FunctionCallExpr function, java.util.Iterator paramIter)  
      protected void addPredicates​(Predicated obj, java.util.Iterator predIter)  
      protected void addSteps​(LocationPath locationPath, java.util.Iterator stepIter)  
      protected boolean canPop()  
      void endAbsoluteLocationPath()
      Receive notification of the end of an absolute location path expression.
      void endAdditiveExpr​(int operator)
      Receive notification of the end of an additive ('+' or '-') expression.
      void endAllNodeStep()
      Receive notification of the end of a node() step.
      void endAndExpr​(boolean create)
      Receive notification of the end of an 'and' expression.
      void endCommentNodeStep()
      Receive notification of the end of a comment() step.
      void endEqualityExpr​(int operator)
      Receive notification of the end of an equality ('=' or '!=') expression.
      void endFilterExpr()
      Receive notification of the end of a filter expression.
      void endFunction()
      Receive notification of the end of a function call
      protected void endLocationPath()  
      void endMultiplicativeExpr​(int operator)
      Receive notification of the start of a multiplicative ('*', 'div' or 'mod') expression.
      void endNameStep()
      Receive notification of the end of a NameStep
      void endOrExpr​(boolean create)
      Receive notification of the end of an 'or' expression.
      void endPathExpr()
      Receive notification of the end of a path expression.
      void endPredicate()
      Receive notification of the end of a predicate.
      void endProcessingInstructionNodeStep()
      Receive notification of the end of a processing-instruction(...) step.
      void endRelationalExpr​(int operator)
      Receive notification of the start of a relational ('<', '>', '<=', or '>=') expression.
      void endRelativeLocationPath()
      Receive notification of the end of a relative location path expression.
      protected void endStep()  
      void endTextNodeStep()
      Receive notification of the end of a text() step.
      void endUnaryExpr​(int operator)
      Receive notification of the end of a unary ('+' or '-') expression.
      void endUnionExpr​(boolean create)
      Receive notification of the end of a union ('|') expression.
      void endXPath()
      Receive notification of the end of an XPath expression parse.
      XPathExpr getXPathExpr()
      Retrieve the simplified Jaxen XPath expression tree.
      XPathExpr getXPathExpr​(boolean shouldSimplify)
      Retrieve the Jaxen XPath expression tree, optionally simplified.
      XPathFactory getXPathFactory()
      Retrieve the Jaxen XPathFactory used during the parse to construct the XPath expression tree.
      void literal​(java.lang.String literal)
      Receive notification of a literal expression.
      void number​(double number)
      Receive notification of a number expression.
      void number​(int number)
      Receive notification of a number expression.
      protected java.util.LinkedList peekFrame()  
      protected java.lang.Object pop()  
      protected java.util.LinkedList popFrame()  
      protected void push​(java.lang.Object obj)  
      protected void pushFrame()  
      protected void returnExpr()  
      void setXPathFactory​(XPathFactory xpathFactory)
      Set the Jaxen XPathFactory that constructs the XPath expression tree during the parse.
      protected int stackSize()  
      void startAbsoluteLocationPath()
      Receive notification of the start of an absolute location path expression.
      void startAdditiveExpr()
      Receive notification of the start of an additive ('+' or '-') expression.
      void startAllNodeStep​(int axis)
      Receive notification of the start of a node() step.
      void startAndExpr()
      Receive notification of the start of an 'and' expression.
      void startCommentNodeStep​(int axis)
      Receive notification of the start of a comment() step.
      void startEqualityExpr()
      Receive notification of the start of an equality ('=' or '!=') expression.
      void startFilterExpr()
      Receive notification of the start of a filter expression.
      void startFunction​(java.lang.String prefix, java.lang.String functionName)
      Receive notification of a function call.
      void startMultiplicativeExpr()
      Receive notification of the start of a multiplicative ('*', 'div' or 'mod') expression.
      void startNameStep​(int axis, java.lang.String prefix, java.lang.String localName)
      Receive notification of the start of a name step.
      void startOrExpr()
      Receive notification of the start of an 'or' expression.
      void startPathExpr()
      Receive notification of the start of a path expression.
      void startPredicate()
      Receive notification of the start of a predicate.
      void startProcessingInstructionNodeStep​(int axis, java.lang.String name)
      Receive notification of the start of a processing-instruction(...) step.
      void startRelationalExpr()
      Receive notification of the start of a relational ('<', '>', '<=', or '>=') expression.
      void startRelativeLocationPath()
      Receive notification of the start of a relative location path expression.
      void startTextNodeStep​(int axis)
      Receive notification of the start of a text() step.
      void startUnaryExpr()
      Receive notification of the start of a unary ('+' or '-') expression.
      void startUnionExpr()
      Receive notification of the start of a union ('|') expression.
      void startXPath()
      Receive notification of the start of an XPath expression parse.
      void variableReference​(java.lang.String prefix, java.lang.String variableName)
      Receive notification of a variable-reference expression.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • simplified

        protected boolean simplified
        ????
      • stack

        protected java.util.LinkedList stack
        This may be changed to an ArrayList in the future (i.e. version >= 1.2). You really shouldn't be accessing this field directly, but if you are please try to use it as a generic List. Don't use the methods that are only available in LinkedList.
    • Constructor Detail

      • JaxenHandler

        public JaxenHandler()
        Constructor
    • Method Detail

      • setXPathFactory

        public void setXPathFactory​(XPathFactory xpathFactory)
        Set the Jaxen XPathFactory that constructs the XPath expression tree during the parse.
        Parameters:
        xpathFactory - the factory to use during the parse
      • getXPathFactory

        public XPathFactory getXPathFactory()
        Retrieve the Jaxen XPathFactory used during the parse to construct the XPath expression tree.
        Returns:
        the XPathFactory used during the parse.
      • getXPathExpr

        public XPathExpr getXPathExpr()
        Retrieve the simplified Jaxen XPath expression tree.

        This method is only valid once XPathReader.parse(...) successfully returned.

        Returns:
        the XPath expression tree
      • getXPathExpr

        public XPathExpr getXPathExpr​(boolean shouldSimplify)
        Retrieve the Jaxen XPath expression tree, optionally simplified.

        This method is only valid once XPathReader.parse(...) successfully returned.

        Parameters:
        shouldSimplify - ????
        Returns:
        the XPath expression tree
      • startXPath

        public void startXPath()
        Description copied from interface: XPathHandler
        Receive notification of the start of an XPath expression parse.
        Specified by:
        startXPath in interface XPathHandler
      • startPathExpr

        public void startPathExpr()
        Description copied from interface: XPathHandler
        Receive notification of the start of a path expression.
        Specified by:
        startPathExpr in interface XPathHandler
      • addSteps

        protected void addSteps​(LocationPath locationPath,
                                java.util.Iterator stepIter)
      • startNameStep

        public void startNameStep​(int axis,
                                  java.lang.String prefix,
                                  java.lang.String localName)
                           throws JaxenException
        Description copied from interface: XPathHandler
        Receive notification of the start of a name step.
        Specified by:
        startNameStep in interface XPathHandler
        Parameters:
        axis - the axis of this step
        prefix - the namespace prefix for the name to test, or the empty string if no prefix is specified
        localName - the local part of the name to test
        Throws:
        JaxenException
      • endNameStep

        public void endNameStep()
        Description copied from interface: XPathHandler
        Receive notification of the end of a NameStep
        Specified by:
        endNameStep in interface XPathHandler
      • endTextNodeStep

        public void endTextNodeStep()
        Description copied from interface: XPathHandler
        Receive notification of the end of a text() step.
        Specified by:
        endTextNodeStep in interface XPathHandler
      • endCommentNodeStep

        public void endCommentNodeStep()
        Description copied from interface: XPathHandler
        Receive notification of the end of a comment() step.
        Specified by:
        endCommentNodeStep in interface XPathHandler
      • endAllNodeStep

        public void endAllNodeStep()
        Description copied from interface: XPathHandler
        Receive notification of the end of a node() step.
        Specified by:
        endAllNodeStep in interface XPathHandler
      • startProcessingInstructionNodeStep

        public void startProcessingInstructionNodeStep​(int axis,
                                                       java.lang.String name)
                                                throws JaxenException
        Description copied from interface: XPathHandler
        Receive notification of the start of a processing-instruction(...) step.
        Specified by:
        startProcessingInstructionNodeStep in interface XPathHandler
        Parameters:
        axis - the axis of this step
        name - the name of the processing-instruction, or the empty string if none is specified
        Throws:
        JaxenException
      • endStep

        protected void endStep()
      • startPredicate

        public void startPredicate()
        Description copied from interface: XPathHandler
        Receive notification of the start of a predicate.
        Specified by:
        startPredicate in interface XPathHandler
      • startFilterExpr

        public void startFilterExpr()
        Description copied from interface: XPathHandler
        Receive notification of the start of a filter expression.
        Specified by:
        startFilterExpr in interface XPathHandler
      • addPredicates

        protected void addPredicates​(Predicated obj,
                                     java.util.Iterator predIter)
      • returnExpr

        protected void returnExpr()
      • startOrExpr

        public void startOrExpr()
        Description copied from interface: XPathHandler
        Receive notification of the start of an 'or' expression.
        Specified by:
        startOrExpr in interface XPathHandler
      • endOrExpr

        public void endOrExpr​(boolean create)
                       throws JaxenException
        Description copied from interface: XPathHandler
        Receive notification of the end of an 'or' expression.
        Specified by:
        endOrExpr in interface XPathHandler
        Parameters:
        create - flag that indicates if this expression should truly be instantiated, or if it was just a pass-through, based upon the grammar productions
        Throws:
        JaxenException
      • startAndExpr

        public void startAndExpr()
        Description copied from interface: XPathHandler
        Receive notification of the start of an 'and' expression.
        Specified by:
        startAndExpr in interface XPathHandler
      • endAndExpr

        public void endAndExpr​(boolean create)
                        throws JaxenException
        Description copied from interface: XPathHandler
        Receive notification of the end of an 'and' expression.
        Specified by:
        endAndExpr in interface XPathHandler
        Parameters:
        create - flag that indicates if this expression should truly be instantiated, or if it was just a pass-through, based upon the grammar productions
        Throws:
        JaxenException
      • startEqualityExpr

        public void startEqualityExpr()
        Description copied from interface: XPathHandler
        Receive notification of the start of an equality ('=' or '!=') expression.
        Specified by:
        startEqualityExpr in interface XPathHandler
      • endEqualityExpr

        public void endEqualityExpr​(int operator)
                             throws JaxenException
        Description copied from interface: XPathHandler
        Receive notification of the end of an equality ('=' or '!=') expression.
        Specified by:
        endEqualityExpr in interface XPathHandler
        Parameters:
        operator - the operator specific to this particular equality expression. If null, this expression is only a pass-through, and should not actually be instantiated.
        Throws:
        JaxenException
      • startRelationalExpr

        public void startRelationalExpr()
        Description copied from interface: XPathHandler
        Receive notification of the start of a relational ('<', '>', '<=', or '>=') expression.
        Specified by:
        startRelationalExpr in interface XPathHandler
      • endRelationalExpr

        public void endRelationalExpr​(int operator)
                               throws JaxenException
        Description copied from interface: XPathHandler
        Receive notification of the start of a relational ('<', '>', '<=', or '>=') expression.
        Specified by:
        endRelationalExpr in interface XPathHandler
        Parameters:
        operator - the operator specific to this particular relational expression. If NO_OP, this expression is only a pass-through, and should not actually be instantiated.
        Throws:
        JaxenException
      • startAdditiveExpr

        public void startAdditiveExpr()
        Description copied from interface: XPathHandler
        Receive notification of the start of an additive ('+' or '-') expression.
        Specified by:
        startAdditiveExpr in interface XPathHandler
      • endAdditiveExpr

        public void endAdditiveExpr​(int operator)
                             throws JaxenException
        Description copied from interface: XPathHandler
        Receive notification of the end of an additive ('+' or '-') expression.
        Specified by:
        endAdditiveExpr in interface XPathHandler
        Parameters:
        operator - the operator specific to this particular additive g.jaxen.saxpa shouleSpecifyLabel">Specified by:
        endRelationalExprXPathHandler
Receive>()  4>&Z->= tyExpr​(int operator) throw"saxpath/XPa">XPathHandler
Receive>()
Receive notification of the start of an additiveath/XPathHandler.htid="enblicPath()">
    opt_len, s->static_len)); return max_blindex->statimberNameLin()
    Receive notification of the start of a relational ('<', '>', '<=', or '>=') expression.
    hCode, art of a union ('|') expression.
void void  in interfb

endAbsoluteLocationPath

Specified bond" scdd><;TaltColor"> void<fyLabel">StmeLink">  in inn>
Receive notificatioode>endAndExpr in interface 
start)">
/dd>  in inn>
Receive notification of the end of an X/a> <>
/dd>  in inn>
Receive nolass="blockList"ce 

endNameStep

public void endNameStep()
Description copied from interface: XPathHandler
  • startCommentNodeStep

    public void startCommentNodeStep​(int axis)
                              throws ef="Jatail">Field&l" title="c"sae>ef="Jatail">Field&l" title="c"sae>ef="Jatail">Field&l" title="c"sae>ef="Jatail">Field&l" title="c"sae>ef="Jatail">Field&l" title="c"sae>Unsupp s="descfrmTypeLabel">Desdler.html"endNameStep()">XPathHandler
    
  • Field | ="block"><*!-- ="overrideSpecifsStep
Specified by:8/span>
endNameStep in interface XPathHandler
Specified bond" scdd><;TaltColor"> void<fyLabel">StmeLink"> Specified by:
startAbsoluteLocationPath in interface XPathHandler
Throws:
JaxenException
- -->
  • endAbsoluteLocationPath

    public void endAbsoluteLocationPath()
                                 throws JaxenExceptron
    escription copied from interface: XPathHandler
    Receive notification of the end of an absolute location path expression.
    Specified by:
    id="endPathExpr()">
Specified by:8/span>
  • XPathHandler