From 0c392619872e840cf84be8fbfc5b6036601734fa Mon Sep 17 00:00:00 2001 From: Ronald Brill Date: Fri, 8 Dec 2023 19:54:55 +0100 Subject: [PATCH] add final --- .../java/org/htmlunit/xpath/Expression.java | 33 ++++++------ src/main/java/org/htmlunit/xpath/NodeSet.java | 4 +- .../java/org/htmlunit/xpath/NodeSetDTM.java | 52 +++++++++---------- src/main/java/org/htmlunit/xpath/XPath.java | 48 +++++++++-------- .../xpath/axes/DescendantIterator.java | 2 +- .../htmlunit/xpath/axes/LocPathIterator.java | 13 ++--- .../org/htmlunit/xpath/axes/NodeSequence.java | 9 ++-- .../htmlunit/xpath/axes/WalkerFactory.java | 26 ++++++---- .../org/htmlunit/xpath/compiler/Compiler.java | 9 ++-- .../xpath/compiler/FunctionTable.java | 9 ++-- .../org/htmlunit/xpath/compiler/Keywords.java | 9 ++-- .../org/htmlunit/xpath/compiler/Lexer.java | 6 ++- .../org/htmlunit/xpath/compiler/OpMap.java | 6 +-- .../htmlunit/xpath/compiler/XPathParser.java | 3 +- .../htmlunit/xpath/functions/Function.java | 2 +- .../org/htmlunit/xpath/objects/XNodeSet.java | 6 +-- .../xpath/xml/dtm/ref/dom2dtm/DOM2DTM.java | 12 +++-- ...OM2DTMdefaultNamespaceDeclarationNode.java | 6 ++- .../xml/utils/SuballocatedIntVector.java | 3 +- .../org/htmlunit/xpath/AbstractXPathTest.java | 3 +- 20 files changed, 146 insertions(+), 115 deletions(-) diff --git a/src/main/java/org/htmlunit/xpath/Expression.java b/src/main/java/org/htmlunit/xpath/Expression.java index e29184f..d800636 100644 --- a/src/main/java/org/htmlunit/xpath/Expression.java +++ b/src/main/java/org/htmlunit/xpath/Expression.java @@ -58,7 +58,7 @@ public boolean canTraverseOutsideSubtree() { * @return The result of the expression in the form of a XObject. * @throws javax.xml.transform.TransformerException if a runtime exception occurs. */ - public XObject execute(XPathContext xctxt, int currentNode) + public XObject execute(final XPathContext xctxt, final int currentNode) throws javax.xml.transform.TransformerException { // For now, the current node is already pushed. @@ -75,7 +75,8 @@ public XObject execute(XPathContext xctxt, int currentNode) * @return The result of the expression in the form of a XObject. * @throws javax.xml.transform.TransformerException if a runtime exception occurs. */ - public XObject execute(XPathContext xctxt, int currentNode, DTM dtm, int expType) + public XObject execute( + final XPathContext xctxt, final int currentNode, final DTM dtm, final int expType) throws javax.xml.transform.TransformerException { // For now, the current node is already pushed. @@ -102,7 +103,7 @@ public abstract XObject execute(XPathContext xctxt) * @return The result of the expression in the form of a XObject. * @throws javax.xml.transform.TransformerException if a runtime exception occurs. */ - public XObject execute(XPathContext xctxt, boolean destructiveOK) + public XObject execute(final XPathContext xctxt, final boolean destructiveOK) throws javax.xml.transform.TransformerException { return execute(xctxt); } @@ -114,7 +115,7 @@ public XObject execute(XPathContext xctxt, boolean destructiveOK) * @return The expression evaluated as a double. * @throws javax.xml.transform.TransformerException if any */ - public double num(XPathContext xctxt) throws javax.xml.transform.TransformerException { + public double num(final XPathContext xctxt) throws javax.xml.transform.TransformerException { return execute(xctxt).num(); } @@ -125,7 +126,7 @@ public double num(XPathContext xctxt) throws javax.xml.transform.TransformerExce * @return false * @throws javax.xml.transform.TransformerException if any */ - public boolean bool(XPathContext xctxt) throws javax.xml.transform.TransformerException { + public boolean bool(final XPathContext xctxt) throws javax.xml.transform.TransformerException { return execute(xctxt).bool(); } @@ -136,8 +137,8 @@ public boolean bool(XPathContext xctxt) throws javax.xml.transform.TransformerEx * @return the first node out of the nodeset, or DTM.NULL. * @throws javax.xml.transform.TransformerException if any */ - public int asNode(XPathContext xctxt) throws javax.xml.transform.TransformerException { - DTMIterator iter = execute(xctxt).iter(); + public int asNode(final XPathContext xctxt) throws javax.xml.transform.TransformerException { + final DTMIterator iter = execute(xctxt).iter(); return iter.nextNode(); } @@ -151,7 +152,7 @@ public int asNode(XPathContext xctxt) throws javax.xml.transform.TransformerExce * is severe enough to halt processing. * @throws javax.xml.transform.TransformerException if any */ - public DTMIterator asIterator(XPathContext xctxt, int contextNode) + public DTMIterator asIterator(final XPathContext xctxt, final int contextNode) throws javax.xml.transform.TransformerException { try { @@ -190,7 +191,7 @@ public boolean isStableNumber() { * * @return true of the passed in class is the exact same class as this class. */ - protected final boolean isSameClass(Expression expr) { + protected final boolean isSameClass(final Expression expr) { if (null == expr) return false; return getClass() == expr.getClass(); @@ -203,10 +204,10 @@ protected final boolean isSameClass(Expression expr) { * @param msg The assertion message, which should be informative. * @throws RuntimeException if the b argument is false. */ - public void assertion(boolean b, java.lang.String msg) { + public void assertion(final boolean b, final String msg) { if (!b) { - java.lang.String fMsg = + final String fMsg = XPATHMessages.createXPATHMessage( XPATHErrorResources.ER_INCORRECT_PROGRAMMER_ASSERTION, new Object[] {msg}); @@ -224,14 +225,14 @@ public void assertion(boolean b, java.lang.String msg) { * @throws TransformerException if the current ErrorListoner determines to throw an exception. * @throws javax.xml.transform.TransformerException if any */ - public void error(XPathContext xctxt, String msg, Object[] args) + public void error(final XPathContext xctxt, final String msg, final Object[] args) throws javax.xml.transform.TransformerException { - java.lang.String fmsg = XPATHMessages.createXPATHMessage(msg, args); + final String fmsg = XPATHMessages.createXPATHMessage(msg, args); if (null != xctxt) { - ErrorListener eh = xctxt.getErrorListener(); - TransformerException te = new TransformerException(fmsg, this); + final ErrorListener eh = xctxt.getErrorListener(); + final TransformerException te = new TransformerException(fmsg, this); eh.fatalError(te); } @@ -252,7 +253,7 @@ public ExpressionNode getExpressionOwner() { /** {@inheritDoc} */ @Override - public void exprSetParent(ExpressionNode n) { + public void exprSetParent(final ExpressionNode n) { assertion(n != this, "Can not parent an expression to itself!"); m_parent = n; } diff --git a/src/main/java/org/htmlunit/xpath/NodeSet.java b/src/main/java/org/htmlunit/xpath/NodeSet.java index c6b566b..d21155e 100644 --- a/src/main/java/org/htmlunit/xpath/NodeSet.java +++ b/src/main/java/org/htmlunit/xpath/NodeSet.java @@ -44,13 +44,13 @@ public class NodeSet implements NodeList { private final ArrayList nodes; /** Create an empty, using the given block size. */ - public NodeSet(List nodes) { + public NodeSet(final List nodes) { this.nodes = new ArrayList<>(nodes); } /** {@inheritDoc} */ @Override - public Node item(int index) { + public Node item(final int index) { return nodes.get(index); } diff --git a/src/main/java/org/htmlunit/xpath/NodeSetDTM.java b/src/main/java/org/htmlunit/xpath/NodeSetDTM.java index 695a8ba..88d6eca 100644 --- a/src/main/java/org/htmlunit/xpath/NodeSetDTM.java +++ b/src/main/java/org/htmlunit/xpath/NodeSetDTM.java @@ -45,7 +45,7 @@ public class NodeSetDTM extends NodeVector implements DTMIterator, Cloneable { /** Create an empty nodelist. */ - public NodeSetDTM(DTMManager dtmManager) { + public NodeSetDTM(final DTMManager dtmManager) { super(); m_manager = dtmManager; } @@ -55,7 +55,7 @@ public NodeSetDTM(DTMManager dtmManager) { * * @param ni Iterator which yields Nodes to be made members of the new set. */ - public NodeSetDTM(DTMIterator ni) { + public NodeSetDTM(final DTMIterator ni) { super(); @@ -78,7 +78,7 @@ public int getRoot() { /** {@inheritDoc} */ @Override - public void setRoot(int context, Object environment) { + public void setRoot(final int context, final Object environment) { // no-op, I guess... (-sb) } @@ -93,7 +93,7 @@ public Object clone() throws CloneNotSupportedException { @Override public DTMIterator cloneWithReset() throws CloneNotSupportedException { - NodeSetDTM clone = (NodeSetDTM) clone(); + final NodeSetDTM clone = (NodeSetDTM) clone(); clone.reset(); @@ -120,7 +120,7 @@ public boolean getExpandEntityReferences() { /** {@inheritDoc} */ @Override - public DTM getDTM(int nodeHandle) { + public DTM getDTM(final int nodeHandle) { return m_manager.getDTM(nodeHandle); } @@ -140,7 +140,7 @@ public DTMManager getDTMManager() { public int nextNode() { if (m_next < this.size()) { - int next = this.elementAt(m_next); + final int next = this.elementAt(m_next); m_next++; @@ -176,7 +176,7 @@ public boolean isFresh() { /** {@inheritDoc} */ @Override - public void runTo(int index) { + public void runTo(final int index) { if (!m_cacheNodes) throw new RuntimeException( @@ -188,7 +188,7 @@ public void runTo(int index) { /** {@inheritDoc} */ @Override - public int item(int index) { + public int item(final int index) { runTo(index); @@ -210,7 +210,7 @@ public int getLength() { * @param n Node to be added * @throws RuntimeException thrown if this NodeSetDTM is not of a mutable type. */ - public void addNode(int n) { + public void addNode(final int n) { this.addElement(n); } @@ -221,7 +221,7 @@ public void addNode(int n) { * @param iterator DTMIterator which yields the nodes to be added. * @throws RuntimeException thrown if this NodeSetDTM is not of a mutable type. */ - public void addNodes(DTMIterator iterator) { + public void addNodes(final DTMIterator iterator) { if (null != iterator) // defensive to fix a bug that Sanjiva reported. { int obj; @@ -242,16 +242,16 @@ public void addNodes(DTMIterator iterator) { * @param support The XPath runtime context. * @throws RuntimeException thrown if this NodeSetDTM is not of a mutable type. */ - public void addNodeInDocOrder(int node, boolean test, XPathContext support) { + public void addNodeInDocOrder(final int node, final boolean test, final XPathContext support) { if (test) { // This needs to do a binary search, but a binary search // is somewhat tough because the sequence test involves // two nodes. - int size = size(), i; - + final int size = size(); + int i; for (i = size - 1; i >= 0; i--) { - int child = elementAt(i); + final int child = elementAt(i); if (child == node) { i = -2; // Duplicate, suppress insert @@ -259,7 +259,7 @@ public void addNodeInDocOrder(int node, boolean test, XPathContext support) { break; } - DTM dtm = support.getDTM(node); + final DTM dtm = support.getDTM(node); if (!dtm.isNodeAfter(node, child)) { break; } @@ -269,7 +269,7 @@ public void addNodeInDocOrder(int node, boolean test, XPathContext support) { insertElementAt(node, i + 1); } } else { - int insertIndex = this.size(); + final int insertIndex = this.size(); boolean foundit = false; @@ -294,13 +294,13 @@ public void addNodeInDocOrder(int node, boolean test, XPathContext support) { * @param support The XPath runtime context. * @throws RuntimeException thrown if this NodeSetDTM is not of a mutable type. */ - public void addNodeInDocOrder(int node, XPathContext support) { + public void addNodeInDocOrder(final int node, final XPathContext support) { addNodeInDocOrder(node, true, support); } // end addNodeInDocOrder(Vector v, Object obj) /** {@inheritDoc} */ @Override - public int elementAt(int i) { + public int elementAt(final int i) { runTo(i); @@ -309,7 +309,7 @@ public int elementAt(int i) { /** {@inheritDoc} */ @Override - public boolean contains(int s) { + public boolean contains(final int s) { runTo(-1); @@ -318,7 +318,7 @@ public boolean contains(int s) { /** {@inheritDoc} */ @Override - public int indexOf(int elem, int index) { + public int indexOf(final int elem, final int index) { runTo(-1); @@ -327,7 +327,7 @@ public int indexOf(int elem, int index) { /** {@inheritDoc} */ @Override - public int indexOf(int elem) { + public int indexOf(final int elem) { runTo(-1); @@ -345,7 +345,7 @@ public int getCurrentPos() { /** {@inheritDoc} */ @Override - public void setCurrentPos(int i) { + public void setCurrentPos(final int i) { if (!m_cacheNodes) throw new RuntimeException( @@ -361,12 +361,12 @@ public int getCurrentNode() { if (!m_cacheNodes) throw new RuntimeException("This NodeSetDTM can not do indexing or counting functions!"); - int saved = m_next; + final int saved = m_next; // because nextNode always increments // But watch out for copy29, where the root iterator didn't // have nextNode called on it. - int current = (m_next > 0) ? m_next - 1 : m_next; - int n = (current < m_firstFree) ? elementAt(current) : DTM.NULL; + final int current = (m_next > 0) ? m_next - 1 : m_next; + final int n = (current < m_firstFree) ? elementAt(current) : DTM.NULL; m_next = saved; // HACK: I think this is a bit of a hack. -sb return n; } @@ -383,7 +383,7 @@ public int getCurrentNode() { /** {@inheritDoc} */ @Override - public void setShouldCacheNodes(boolean b) { + public void setShouldCacheNodes(final boolean b) { if (!isFresh()) throw new RuntimeException( diff --git a/src/main/java/org/htmlunit/xpath/XPath.java b/src/main/java/org/htmlunit/xpath/XPath.java index 4f89572..1915f2d 100644 --- a/src/main/java/org/htmlunit/xpath/XPath.java +++ b/src/main/java/org/htmlunit/xpath/XPath.java @@ -77,14 +77,17 @@ public SourceLocator getLocator() { * @throws javax.xml.transform.TransformerException if syntax or other error. */ public XPath( - String exprString, PrefixResolver prefixResolver, int type, ErrorListener errorListener) + final String exprString, + final PrefixResolver prefixResolver, + final int type, + ErrorListener errorListener) throws javax.xml.transform.TransformerException { initFunctionTable(); if (null == errorListener) errorListener = new org.htmlunit.xpath.xml.utils.DefaultErrorHandler(); - XPathParser parser = new XPathParser(errorListener); - Compiler compiler = new Compiler(errorListener, m_funcTable); + final XPathParser parser = new XPathParser(errorListener); + final Compiler compiler = new Compiler(errorListener, m_funcTable); if (SELECT == type) parser.initXPath(compiler, exprString, prefixResolver); else if (MATCH == type) parser.initMatchPattern(compiler, exprString, prefixResolver); @@ -111,18 +114,18 @@ public XPath( * @throws javax.xml.transform.TransformerException if syntax or other error. */ public XPath( - String exprString, - PrefixResolver prefixResolver, - int type, + final String exprString, + final PrefixResolver prefixResolver, + final int type, ErrorListener errorListener, - FunctionTable aTable) + final FunctionTable aTable) throws javax.xml.transform.TransformerException { m_funcTable = aTable; if (null == errorListener) errorListener = new org.htmlunit.xpath.xml.utils.DefaultErrorHandler(); - XPathParser parser = new XPathParser(errorListener); - Compiler compiler = new Compiler(errorListener, m_funcTable); + final XPathParser parser = new XPathParser(errorListener); + final Compiler compiler = new Compiler(errorListener, m_funcTable); if (SELECT == type) parser.initXPath(compiler, exprString, prefixResolver); else if (MATCH == type) parser.initMatchPattern(compiler, exprString, prefixResolver); @@ -146,7 +149,7 @@ public XPath( * @param type one of {@link #SELECT} or {@link #MATCH}. * @throws javax.xml.transform.TransformerException if syntax or other error. */ - public XPath(String exprString, PrefixResolver prefixResolver, int type) + public XPath(final String exprString, final PrefixResolver prefixResolver, final int type) throws javax.xml.transform.TransformerException { this(exprString, prefixResolver, type, null); } @@ -156,7 +159,7 @@ public XPath(String exprString, PrefixResolver prefixResolver, int type) * * @param expr The Expression object. */ - public XPath(Expression expr) { + public XPath(final Expression expr) { m_mainExp = expr; initFunctionTable(); } @@ -173,7 +176,9 @@ public XPath(Expression expr) { * @throws javax.xml.transform.TransformerException in case of error */ public XObject execute( - XPathContext xctxt, org.w3c.dom.Node contextNode, PrefixResolver namespaceContext) + final XPathContext xctxt, + final org.w3c.dom.Node contextNode, + final PrefixResolver namespaceContext) throws javax.xml.transform.TransformerException { return execute(xctxt, xctxt.getDTMHandleFromNode(contextNode), namespaceContext); } @@ -189,7 +194,8 @@ public XObject execute( * is severe enough to halt processing. * @throws javax.xml.transform.TransformerException in case of error */ - public XObject execute(XPathContext xctxt, int contextNode, PrefixResolver namespaceContext) + public XObject execute( + final XPathContext xctxt, final int contextNode, final PrefixResolver namespaceContext) throws javax.xml.transform.TransformerException { xctxt.pushNamespaceContext(namespaceContext); @@ -200,9 +206,9 @@ public XObject execute(XPathContext xctxt, int contextNode, PrefixResolver names try { xobj = m_mainExp.execute(xctxt); - } catch (TransformerException te) { + } catch (final TransformerException te) { te.setLocator(this.getLocator()); - ErrorListener el = xctxt.getErrorListener(); + final ErrorListener el = xctxt.getErrorListener(); if (null != el) // defensive, should never happen. { el.error(te); @@ -217,8 +223,8 @@ public XObject execute(XPathContext xctxt, int contextNode, PrefixResolver names if (msg == null || msg.length() == 0) { msg = XPATHMessages.createXPATHMessage(XPATHErrorResources.ER_XPATH_ERROR, null); } - TransformerException te = new TransformerException(msg, getLocator(), e); - ErrorListener el = xctxt.getErrorListener(); + final TransformerException te = new TransformerException(msg, getLocator(), e); + final ErrorListener el = xctxt.getErrorListener(); if (null != el) // defensive, should never happen. { el.fatalError(te); @@ -241,11 +247,11 @@ public XObject execute(XPathContext xctxt, int contextNode, PrefixResolver names * @param args An array of arguments represented in the format string, which may be null. * @throws TransformerException if the current ErrorListoner determines to throw an exception. */ - public void error(XPathContext xctxt, String msg, Object[] args) + public void error(final XPathContext xctxt, final String msg, final Object[] args) throws javax.xml.transform.TransformerException { - String fmsg = XPATHMessages.createXPATHMessage(msg, args); - ErrorListener ehandler = xctxt.getErrorListener(); + final String fmsg = XPATHMessages.createXPATHMessage(msg, args); + final ErrorListener ehandler = xctxt.getErrorListener(); if (null != ehandler) { ehandler.fatalError(new TransformerException(fmsg)); @@ -258,7 +264,7 @@ public void error(XPathContext xctxt, String msg, Object[] args) * * @param visitor The visitor whose appropriate method will be called. */ - public void callVisitors(XPathVisitor visitor) { + public void callVisitors(final XPathVisitor visitor) { m_mainExp.callVisitors(visitor); } diff --git a/src/main/java/org/htmlunit/xpath/axes/DescendantIterator.java b/src/main/java/org/htmlunit/xpath/axes/DescendantIterator.java index 822e88a..008655b 100644 --- a/src/main/java/org/htmlunit/xpath/axes/DescendantIterator.java +++ b/src/main/java/org/htmlunit/xpath/axes/DescendantIterator.java @@ -227,6 +227,6 @@ public int getAxis() { public boolean deepEquals(Expression expr) { if (!super.deepEquals(expr)) return false; - return m_axis == ((DescendantIterator) expr).m_axis; + return m_axis == ((DescendantIterator) expr).m_axis; } } diff --git a/src/main/java/org/htmlunit/xpath/axes/LocPathIterator.java b/src/main/java/org/htmlunit/xpath/axes/LocPathIterator.java index adb5cf1..ceed951 100644 --- a/src/main/java/org/htmlunit/xpath/axes/LocPathIterator.java +++ b/src/main/java/org/htmlunit/xpath/axes/LocPathIterator.java @@ -32,12 +32,12 @@ /** * This class extends NodeSetDTM, which implements NodeIterator, and fetches nodes one at a time in * document order based on a XPath.
- * @see = 0) && (index <= getCurrentPos()))) return; if (-1 == index) { - while (DTM.NULL != nextNode()) ; + while (DTM.NULL != nextNode()) + ; } else { while (DTM.NULL != nextNode()) { if (getCurrentPos() >= index) break; diff --git a/src/main/java/org/htmlunit/xpath/axes/NodeSequence.java b/src/main/java/org/htmlunit/xpath/axes/NodeSequence.java index 5cc8a7a..f39df62 100644 --- a/src/main/java/org/htmlunit/xpath/axes/NodeSequence.java +++ b/src/main/java/org/htmlunit/xpath/axes/NodeSequence.java @@ -327,15 +327,18 @@ public int getCurrentPos() { public void runTo(int index) { if (-1 == index) { int pos = m_next; - while (DTM.NULL != nextNode()) ; + while (DTM.NULL != nextNode()) + ; m_next = pos; } else if (m_next == index) { } else if (hasCache() && m_next < getVector().size()) { m_next = index; } else if ((null == getVector()) && (index < m_next)) { - while ((m_next >= index) && DTM.NULL != previousNode()) ; + while ((m_next >= index) && DTM.NULL != previousNode()) + ; } else { - while ((m_next < index) && DTM.NULL != nextNode()) ; + while ((m_next < index) && DTM.NULL != nextNode()) + ; } } diff --git a/src/main/java/org/htmlunit/xpath/axes/WalkerFactory.java b/src/main/java/org/htmlunit/xpath/axes/WalkerFactory.java index bdc8bc0..3f1f45d 100644 --- a/src/main/java/org/htmlunit/xpath/axes/WalkerFactory.java +++ b/src/main/java/org/htmlunit/xpath/axes/WalkerFactory.java @@ -51,7 +51,8 @@ public class WalkerFactory { * @return non-null AxesWalker derivative. * @throws javax.xml.transform.TransformerException if any */ - static AxesWalker loadWalkers(final WalkingIterator lpi, final Compiler compiler, int stepOpCodePos) + static AxesWalker loadWalkers( + final WalkingIterator lpi, final Compiler compiler, int stepOpCodePos) throws javax.xml.transform.TransformerException { int stepType; @@ -87,7 +88,8 @@ public static boolean isSet(final int analysis, final int bits) { return 0 != (analysis & bits); } - public static void diagnoseIterator(final String name, final int analysis, final Compiler compiler) { + public static void diagnoseIterator( + final String name, final int analysis, final Compiler compiler) { System.out.println( compiler.toString() + ", " @@ -108,7 +110,8 @@ public static void diagnoseIterator(final String name, final int analysis, final * @return non-null reference to a LocPathIterator or derivative. * @throws javax.xml.transform.TransformerException if any */ - public static DTMIterator newDTMIterator(final Compiler compiler, final int opPos, final boolean isTopLevel) + public static DTMIterator newDTMIterator( + final Compiler compiler, final int opPos, final boolean isTopLevel) throws javax.xml.transform.TransformerException { final int firstStepPos = OpMap.getFirstChildPos(opPos); @@ -336,7 +339,7 @@ static boolean functionProximateOrContainsProximate(final Compiler compiler, int } static boolean isProximateInnerExpr(final Compiler compiler, final int opPos) { - final int op = compiler.getOp(opPos); + final int op = compiler.getOp(opPos); final int innerExprOpPos = opPos + 2; switch (op) { case OpCodes.OP_ARGUMENT: @@ -370,7 +373,8 @@ static boolean isProximateInnerExpr(final Compiler compiler, final int opPos) { } /** Tell if the predicates need to have proximity knowledge. */ - public static boolean mightBeProximate(final Compiler compiler, final int opPos, final int stepType) + public static boolean mightBeProximate( + final Compiler compiler, final int opPos, final int stepType) throws javax.xml.transform.TransformerException { final boolean mightBeProximate = false; @@ -433,8 +437,8 @@ public static boolean mightBeProximate(final Compiler compiler, final int opPos, * @return 32 bits as an integer that give information about the location path as a whole. * @throws javax.xml.transform.TransformerException if any */ - private static boolean isOptimizableForDescendantIterator(final Compiler compiler, int stepOpCodePos) - throws javax.xml.transform.TransformerException { + private static boolean isOptimizableForDescendantIterator( + final Compiler compiler, int stepOpCodePos) throws javax.xml.transform.TransformerException { int stepType; int stepCount = 0; @@ -718,7 +722,8 @@ static StepPattern loadSteps(final Compiler compiler, int stepOpCodePos) // -sb final int whatToShow = pat.getWhatToShow(); if (whatToShow == DTMFilter.SHOW_ATTRIBUTE || whatToShow == DTMFilter.SHOW_NAMESPACE) { - final int newAxis = (whatToShow == DTMFilter.SHOW_ATTRIBUTE) ? Axis.ATTRIBUTE : Axis.NAMESPACE; + final int newAxis = + (whatToShow == DTMFilter.SHOW_ATTRIBUTE) ? Axis.ATTRIBUTE : Axis.NAMESPACE; if (isDownwardAxisOfMany(axis)) { final StepPattern attrPat = new StepPattern( @@ -911,7 +916,7 @@ static boolean analyzePredicate(final Compiler compiler, final int opPos, final * @throws RuntimeException if the input is bad. */ private static AxesWalker createDefaultWalker( - final Compiler compiler, final int opPos, final WalkingIterator lpi, final int analysis) { + final Compiler compiler, final int opPos, final WalkingIterator lpi, final int analysis) { final AxesWalker ai; final int stepType = compiler.getOp(opPos); @@ -1225,7 +1230,8 @@ else if (walksSubtree(analysis) * @param analysis The general analysis of the pattern. * @return true if the walk can be done in natural order. */ - private static boolean isNaturalDocOrder(final Compiler compiler, int stepOpCodePos, final int analysis) { + private static boolean isNaturalDocOrder( + final Compiler compiler, int stepOpCodePos, final int analysis) { if (canCrissCross(analysis)) return false; // Namespaces can present some problems, so just punt if we're looking for diff --git a/src/main/java/org/htmlunit/xpath/compiler/Compiler.java b/src/main/java/org/htmlunit/xpath/compiler/Compiler.java index 4ce4515..16e0dcd 100644 --- a/src/main/java/org/htmlunit/xpath/compiler/Compiler.java +++ b/src/main/java/org/htmlunit/xpath/compiler/Compiler.java @@ -856,8 +856,8 @@ Expression compileFunction(int opPos) throws TransformerException { } func.checkNumberArgs(i); - } catch (WrongNumberArgsException wnae) { - java.lang.String name = m_functionTable.getFunctionName(funcID); + } catch (final WrongNumberArgsException wnae) { + final String name = m_functionTable.getFunctionName(funcID); error(XPATHErrorResources.ER_ONLY_ALLOWS, new Object[] {name, wnae.getMessage()}); } @@ -870,9 +870,8 @@ Expression compileFunction(int opPos) throws TransformerException { /** {@inheritDoc} */ @Override - public void error(String msg, Object[] args) throws TransformerException { - - java.lang.String fmsg = XPATHMessages.createXPATHMessage(msg, args); + public void error(final String msg, final Object[] args) throws TransformerException { + final String fmsg = XPATHMessages.createXPATHMessage(msg, args); if (null != m_errorHandler) { m_errorHandler.fatalError(new TransformerException(fmsg)); diff --git a/src/main/java/org/htmlunit/xpath/compiler/FunctionTable.java b/src/main/java/org/htmlunit/xpath/compiler/FunctionTable.java index 1689524..1f51eed 100644 --- a/src/main/java/org/htmlunit/xpath/compiler/FunctionTable.java +++ b/src/main/java/org/htmlunit/xpath/compiler/FunctionTable.java @@ -166,7 +166,8 @@ public class FunctionTable { m_functionID.put(Keywords.FUNC_POSITION_STRING, Integer.valueOf(FunctionTable.FUNC_POSITION)); m_functionID.put(Keywords.FUNC_COUNT_STRING, Integer.valueOf(FunctionTable.FUNC_COUNT)); m_functionID.put(Keywords.FUNC_ID_STRING, Integer.valueOf(FunctionTable.FUNC_ID)); - m_functionID.put(Keywords.FUNC_LOCAL_PART_STRING, Integer.valueOf(FunctionTable.FUNC_LOCAL_PART)); + m_functionID.put( + Keywords.FUNC_LOCAL_PART_STRING, Integer.valueOf(FunctionTable.FUNC_LOCAL_PART)); m_functionID.put(Keywords.FUNC_NAMESPACE_STRING, Integer.valueOf(FunctionTable.FUNC_NAMESPACE)); m_functionID.put(Keywords.FUNC_NAME_STRING, Integer.valueOf(FunctionTable.FUNC_QNAME)); m_functionID.put(Keywords.FUNC_NOT_STRING, Integer.valueOf(FunctionTable.FUNC_NOT)); @@ -180,10 +181,12 @@ public class FunctionTable { m_functionID.put(Keywords.FUNC_ROUND_STRING, Integer.valueOf(FunctionTable.FUNC_ROUND)); m_functionID.put(Keywords.FUNC_SUM_STRING, Integer.valueOf(FunctionTable.FUNC_SUM)); m_functionID.put(Keywords.FUNC_STRING_STRING, Integer.valueOf(FunctionTable.FUNC_STRING)); - m_functionID.put(Keywords.FUNC_STARTS_WITH_STRING, Integer.valueOf(FunctionTable.FUNC_STARTS_WITH)); + m_functionID.put( + Keywords.FUNC_STARTS_WITH_STRING, Integer.valueOf(FunctionTable.FUNC_STARTS_WITH)); m_functionID.put(Keywords.FUNC_CONTAINS_STRING, Integer.valueOf(FunctionTable.FUNC_CONTAINS)); m_functionID.put( - Keywords.FUNC_SUBSTRING_BEFORE_STRING, Integer.valueOf(FunctionTable.FUNC_SUBSTRING_BEFORE)); + Keywords.FUNC_SUBSTRING_BEFORE_STRING, + Integer.valueOf(FunctionTable.FUNC_SUBSTRING_BEFORE)); m_functionID.put( Keywords.FUNC_SUBSTRING_AFTER_STRING, Integer.valueOf(FunctionTable.FUNC_SUBSTRING_AFTER)); m_functionID.put( diff --git a/src/main/java/org/htmlunit/xpath/compiler/Keywords.java b/src/main/java/org/htmlunit/xpath/compiler/Keywords.java index 4eee737..cc4a335 100644 --- a/src/main/java/org/htmlunit/xpath/compiler/Keywords.java +++ b/src/main/java/org/htmlunit/xpath/compiler/Keywords.java @@ -181,12 +181,15 @@ public class Keywords { m_axisnames.put(FROM_ATTRIBUTES_STRING, Integer.valueOf(OpCodes.FROM_ATTRIBUTES)); m_axisnames.put(FROM_CHILDREN_STRING, Integer.valueOf(OpCodes.FROM_CHILDREN)); m_axisnames.put(FROM_DESCENDANTS_STRING, Integer.valueOf(OpCodes.FROM_DESCENDANTS)); - m_axisnames.put(FROM_DESCENDANTS_OR_SELF_STRING, Integer.valueOf(OpCodes.FROM_DESCENDANTS_OR_SELF)); + m_axisnames.put( + FROM_DESCENDANTS_OR_SELF_STRING, Integer.valueOf(OpCodes.FROM_DESCENDANTS_OR_SELF)); m_axisnames.put(FROM_FOLLOWING_STRING, Integer.valueOf(OpCodes.FROM_FOLLOWING)); - m_axisnames.put(FROM_FOLLOWING_SIBLINGS_STRING, Integer.valueOf(OpCodes.FROM_FOLLOWING_SIBLINGS)); + m_axisnames.put( + FROM_FOLLOWING_SIBLINGS_STRING, Integer.valueOf(OpCodes.FROM_FOLLOWING_SIBLINGS)); m_axisnames.put(FROM_PARENT_STRING, Integer.valueOf(OpCodes.FROM_PARENT)); m_axisnames.put(FROM_PRECEDING_STRING, Integer.valueOf(OpCodes.FROM_PRECEDING)); - m_axisnames.put(FROM_PRECEDING_SIBLINGS_STRING, Integer.valueOf(OpCodes.FROM_PRECEDING_SIBLINGS)); + m_axisnames.put( + FROM_PRECEDING_SIBLINGS_STRING, Integer.valueOf(OpCodes.FROM_PRECEDING_SIBLINGS)); m_axisnames.put(FROM_SELF_STRING, Integer.valueOf(OpCodes.FROM_SELF)); m_axisnames.put(FROM_NAMESPACE_STRING, Integer.valueOf(OpCodes.FROM_NAMESPACE)); m_nodetypes.put(NODETYPE_COMMENT_STRING, Integer.valueOf(OpCodes.NODETYPE_COMMENT)); diff --git a/src/main/java/org/htmlunit/xpath/compiler/Lexer.java b/src/main/java/org/htmlunit/xpath/compiler/Lexer.java index c72bfed..36566f4 100644 --- a/src/main/java/org/htmlunit/xpath/compiler/Lexer.java +++ b/src/main/java/org/htmlunit/xpath/compiler/Lexer.java @@ -117,7 +117,8 @@ void tokenize(String pat, List targetStrings) startSubstring = i; - for (i++; (i < nChars) && ((c = pat.charAt(i)) != '\"'); i++) ; + for (i++; (i < nChars) && ((c = pat.charAt(i)) != '\"'); i++) + ; if (c == '\"' && i < nChars) { addToTokenQueue(pat.substring(startSubstring, i + 1)); @@ -143,7 +144,8 @@ void tokenize(String pat, List targetStrings) startSubstring = i; - for (i++; (i < nChars) && ((c = pat.charAt(i)) != '\''); i++) ; + for (i++; (i < nChars) && ((c = pat.charAt(i)) != '\''); i++) + ; if (c == '\'' && i < nChars) { addToTokenQueue(pat.substring(startSubstring, i + 1)); diff --git a/src/main/java/org/htmlunit/xpath/compiler/OpMap.java b/src/main/java/org/htmlunit/xpath/compiler/OpMap.java index 93bcca4..59b6dbd 100644 --- a/src/main/java/org/htmlunit/xpath/compiler/OpMap.java +++ b/src/main/java/org/htmlunit/xpath/compiler/OpMap.java @@ -204,9 +204,9 @@ public int getFirstPredicateOpPos(int opPos) throws javax.xml.transform.Transfor * @param args An array of arguments represented in the format string, which may be null. * @throws TransformerException if the current ErrorListoner determines to throw an exception. */ - public void error(String msg, Object[] args) throws javax.xml.transform.TransformerException { - - java.lang.String fmsg = XPATHMessages.createXPATHMessage(msg, args); + public void error(final String msg, final Object[] args) + throws javax.xml.transform.TransformerException { + final String fmsg = XPATHMessages.createXPATHMessage(msg, args); throw new javax.xml.transform.TransformerException(fmsg); } diff --git a/src/main/java/org/htmlunit/xpath/compiler/XPathParser.java b/src/main/java/org/htmlunit/xpath/compiler/XPathParser.java index 0fafcae..82499e9 100644 --- a/src/main/java/org/htmlunit/xpath/compiler/XPathParser.java +++ b/src/main/java/org/htmlunit/xpath/compiler/XPathParser.java @@ -17,6 +17,7 @@ */ package org.htmlunit.xpath.compiler; +import java.util.Objects; import javax.xml.transform.ErrorListener; import javax.xml.transform.TransformerException; import org.htmlunit.xpath.XPathProcessorException; @@ -26,8 +27,6 @@ import org.htmlunit.xpath.res.XPATHMessages; import org.htmlunit.xpath.xml.utils.PrefixResolver; -import java.util.Objects; - /** * Tokenizes and parses XPath expressions. This should really be named XPathParserImpl, and may be * renamed in the future. diff --git a/src/main/java/org/htmlunit/xpath/functions/Function.java b/src/main/java/org/htmlunit/xpath/functions/Function.java index bd07ac3..bff6566 100644 --- a/src/main/java/org/htmlunit/xpath/functions/Function.java +++ b/src/main/java/org/htmlunit/xpath/functions/Function.java @@ -91,7 +91,7 @@ public void callVisitors(XPathVisitor visitor) { /** {@inheritDoc} */ @Override public boolean deepEquals(Expression expr) { - return isSameClass(expr); + return isSameClass(expr); } /** diff --git a/src/main/java/org/htmlunit/xpath/objects/XNodeSet.java b/src/main/java/org/htmlunit/xpath/objects/XNodeSet.java index 4c1f3f9..0fb3908 100644 --- a/src/main/java/org/htmlunit/xpath/objects/XNodeSet.java +++ b/src/main/java/org/htmlunit/xpath/objects/XNodeSet.java @@ -59,9 +59,9 @@ public XNodeSet(DTMIterator val) { * nodes may be added. */ public XNodeSet(DTMManager dtmMgr) { - super(new NodeSetDTM(dtmMgr)); - m_dtmMgr = dtmMgr; - m_last = 0; + super(new NodeSetDTM(dtmMgr)); + m_dtmMgr = dtmMgr; + m_last = 0; } /** {@inheritDoc} */ diff --git a/src/main/java/org/htmlunit/xpath/xml/dtm/ref/dom2dtm/DOM2DTM.java b/src/main/java/org/htmlunit/xpath/xml/dtm/ref/dom2dtm/DOM2DTM.java index 2e99b3d..ab6ae42 100644 --- a/src/main/java/org/htmlunit/xpath/xml/dtm/ref/dom2dtm/DOM2DTM.java +++ b/src/main/java/org/htmlunit/xpath/xml/dtm/ref/dom2dtm/DOM2DTM.java @@ -87,7 +87,11 @@ public class DOM2DTM extends DTMDefaultBaseIterators { * @param dtmIdentity The DTM identity ID for this DTM. * @param doIndexing true if the caller considers it worth it to use indexing schemes. */ - public DOM2DTM(final DTMManager mgr, final DOMSource domSource, final int dtmIdentity, final boolean doIndexing) { + public DOM2DTM( + final DTMManager mgr, + final DOMSource domSource, + final int dtmIdentity, + final boolean doIndexing) { super(mgr, domSource, dtmIdentity, doIndexing); // Initialize DOM navigation @@ -142,7 +146,8 @@ public DOM2DTM(final DTMManager mgr, final DOMSource domSource, final int dtmIde * DTM behavior). * @return The index identity of the node that was added. */ - protected int addNode(final Node node, final int parentIndex, final int previousSibling, final int forceNodeType) { + protected int addNode( + final Node node, final int parentIndex, final int previousSibling, final int forceNodeType) { final int nodeIndex = m_nodes.size(); // Have we overflowed a DTM Identity's addressing range? @@ -311,7 +316,8 @@ protected boolean nextNode() { // %TBD% Should never arise, but I want to be sure of that... if (JJK_DEBUG) { System.out.println("***** DOM2DTM Pop Control Flow problem"); - for (; ; ) ; // Freeze right here! + for (; ; ) + ; // Freeze right here! } } diff --git a/src/main/java/org/htmlunit/xpath/xml/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java b/src/main/java/org/htmlunit/xpath/xml/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java index 2effd23..e01ad25 100644 --- a/src/main/java/org/htmlunit/xpath/xml/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java +++ b/src/main/java/org/htmlunit/xpath/xml/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java @@ -50,7 +50,8 @@ public class DOM2DTMdefaultNamespaceDeclarationNode implements Attr, TypeInfo { final String uri; final String nodename; - DOM2DTMdefaultNamespaceDeclarationNode(final Element pseudoparent, final String prefix, final String uri) { + DOM2DTMdefaultNamespaceDeclarationNode( + final Element pseudoparent, final String prefix, final String uri) { this.pseudoparent = pseudoparent; this.prefix = prefix; this.uri = uri; @@ -249,7 +250,8 @@ public String getTypeNamespace() { /** {@inheritDoc} */ @Override - public boolean isDerivedFrom(final String ns, final String localName, final int derivationMethod) { + public boolean isDerivedFrom( + final String ns, final String localName, final int derivationMethod) { return false; } diff --git a/src/main/java/org/htmlunit/xpath/xml/utils/SuballocatedIntVector.java b/src/main/java/org/htmlunit/xpath/xml/utils/SuballocatedIntVector.java index a5a537e..c21e47b 100644 --- a/src/main/java/org/htmlunit/xpath/xml/utils/SuballocatedIntVector.java +++ b/src/main/java/org/htmlunit/xpath/xml/utils/SuballocatedIntVector.java @@ -72,7 +72,8 @@ public class SuballocatedIntVector { */ public SuballocatedIntVector(int blocksize, int numblocks) { // m_blocksize = blocksize; - for (m_SHIFT = 0; 0 != (blocksize >>>= 1); ++m_SHIFT) ; + for (m_SHIFT = 0; 0 != (blocksize >>>= 1); ++m_SHIFT) + ; m_blocksize = 1 << m_SHIFT; m_MASK = m_blocksize - 1; m_numblocks = numblocks; diff --git a/src/test/java/org/htmlunit/xpath/AbstractXPathTest.java b/src/test/java/org/htmlunit/xpath/AbstractXPathTest.java index 3224832..3bddaae 100644 --- a/src/test/java/org/htmlunit/xpath/AbstractXPathTest.java +++ b/src/test/java/org/htmlunit/xpath/AbstractXPathTest.java @@ -49,8 +49,7 @@ public void assertGetByXpathException( Exception exception = Assertions.assertThrows( - RuntimeException.class, - () -> XPathHelper.getByXPath(doc, xPath, null, false)); + RuntimeException.class, () -> XPathHelper.getByXPath(doc, xPath, null, false)); Assertions.assertEquals(exMsg, exception.getMessage()); Assertions.assertEquals(exCauseMsg, exception.getCause().getMessage()); }