Author: adelmelle
Date: Sat Jan  2 20:35:38 2016
New Revision: 1722662

URL: http://svn.apache.org/viewvc?rev=1722662&view=rev
Log:
Tweak: Use generics in FONodeIterator, remove unneeded xxxNode() methods.

Modified:
    xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FONode.java
    xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FObj.java
    xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FObjMixed.java
    
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/pagination/Declarations.java
    
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/table/TableRowIterator.java
    
xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/flow/table/CollapsedConditionalBorderTestCase.java

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FONode.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FONode.java?rev=1722662&r1=1722661&r2=1722662&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FONode.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FONode.java Sat Jan  2 
20:35:38 2016
@@ -20,7 +20,6 @@
 package org.apache.fop.fo;
 
 // Java
-import java.util.Iterator;
 import java.util.ListIterator;
 import java.util.Map;
 import java.util.Stack;
@@ -321,9 +320,9 @@ public abstract class FONode implements
      * has been reached.
      * The default implementation simply calls {@link #finalizeNode()}, without
      * sending any event to the {@link FOEventHandler}.
-     * <br/><i>Note: the recommended way to override this method in subclasses 
is</i>
-     * <br/><br/><code>super.endOfNode(); // invoke finalizeNode()
-     * <br/>getFOEventHandler().endXXX(); // send endOfNode() 
notification</code>
+     * <p><i>Note: the recommended way to override this method in subclasses 
is</i></p>
+     * <p><code>super.endOfNode(); // invoke finalizeNode()</code></p>
+     * <p><code>getFOEventHandler().endXXX(); // send endOfNode() 
notification</code></p>
      *
      * @throws FOPException if there's a problem during processing
      */
@@ -622,7 +621,7 @@ public abstract class FONode implements
      *
      * @param propertyName the name of the property.
      * @param propertyValue the value of the property.
-     * * @param e optional property parsing exception.
+     * @param e optional property parsing exception.
      * @throws ValidationException the validation error provoked by the method 
call
      */
     protected void invalidPropertyValueError(String propertyName, String 
propertyValue, Exception e)
@@ -936,7 +935,7 @@ public abstract class FONode implements
      * @param ranges a stack of delimited text ranges
      * @return the (possibly) updated stack of delimited text ranges
      */
-    public Stack collectDelimitedTextRanges(Stack<DelimitedTextRange> ranges) {
+    public Stack<DelimitedTextRange> 
collectDelimitedTextRanges(Stack<DelimitedTextRange> ranges) {
         // if boundary before, then push new range
         if (isRangeBoundaryBefore()) {
             maybeNewRange(ranges);
@@ -965,9 +964,11 @@ public abstract class FONode implements
      * @param currentRange the current range or null (if none)
      * @return the (possibly) updated stack of delimited text ranges
      */
-    protected Stack collectDelimitedTextRanges(Stack<DelimitedTextRange> 
ranges, DelimitedTextRange currentRange) {
-        for (Iterator it = getChildNodes(); (it != null) && it.hasNext();) {
-            ranges = ((FONode) it.next()).collectDelimitedTextRanges(ranges);
+    protected Stack<DelimitedTextRange> collectDelimitedTextRanges(
+            Stack<DelimitedTextRange> ranges, DelimitedTextRange currentRange) 
{
+
+        for (FONodeIterator it = getChildNodes(); (it != null) && 
it.hasNext();) {
+            ranges = it.next().collectDelimitedTextRanges(ranges);
         }
         return ranges;
     }
@@ -1011,9 +1012,10 @@ public abstract class FONode implements
     }
 
     /**
-     * Base iterator interface over a FO's children
+     * Base iterator interface over a FO's children, offering three methods on 
top of the base interface
+     * methods {@see java.util.ListIterator}.
      */
-    public interface FONodeIterator extends ListIterator {
+    public interface FONodeIterator extends ListIterator<FONode> {
 
         /**
          * Returns the parent node for this iterator's list
@@ -1021,23 +1023,7 @@ public abstract class FONode implements
          *
          * @return  the parent node
          */
-        FObj parentNode();
-
-        /**
-         * Convenience method with return type of FONode
-         * (semantically equivalent to: <code>(FONode) next();</code>)
-         *
-         * @return the next node (if any), as a type FONode
-         */
-        FONode nextNode();
-
-        /**
-         * Convenience method with return type of FONode
-         * (semantically equivalent to: <code>(FONode) previous();</code>)
-         *
-         * @return the previous node (if any), as a type FONode
-         */
-        FONode previousNode();
+        FObj parent();
 
         /**
          * Returns the first node in the list, and decreases the index,
@@ -1046,7 +1032,7 @@ public abstract class FONode implements
          *
          * @return the first node in the list
          */
-        FONode firstNode();
+        FONode first();
 
         /**
          * Returns the last node in the list, and advances the
@@ -1055,7 +1041,7 @@ public abstract class FONode implements
          *
          * @return the last node in the list
          */
-        FONode lastNode();
+        FONode last();
 
     }
 

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FObj.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FObj.java?rev=1722662&r1=1722661&r2=1722662&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FObj.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FObj.java Sat Jan  2 
20:35:38 2016
@@ -198,7 +198,7 @@ public abstract class FObj extends FONod
      */
     private void checkId(String id) throws ValidationException {
         if (!inMarker() && !id.equals("")) {
-            Set idrefs = getBuilderContext().getIDReferences();
+            Set<String> idrefs = getBuilderContext().getIDReferences();
             if (!idrefs.contains(id)) {
                 idrefs.add(id);
             } else {
@@ -270,7 +270,7 @@ public abstract class FObj extends FONod
             if (firstChild != null) {
                 firstChild.siblings[0] = null;
             }
-        } else {
+        } else if (child.siblings != null) {
             FONode prevChild = child.siblings[0];
             prevChild.siblings[1] = nextChild;
             if (nextChild != null) {
@@ -338,7 +338,7 @@ public abstract class FObj extends FONod
                 return it;
             } else {
                 while (it.hasNext()
-                        && it.nextNode().siblings[1] != childNode) {
+                        && it.next().siblings[1] != childNode) {
                     //nop
                 }
                 if (it.hasNext()) {
@@ -373,8 +373,8 @@ public abstract class FObj extends FONod
         String mcname = marker.getMarkerClassName();
         if (firstChild != null) {
             // check for empty childNodes
-            for (Iterator iter = getChildNodes(); iter.hasNext();) {
-                FONode node = (FONode) iter.next();
+            for (Iterator<FONode> iter = getChildNodes(); iter.hasNext();) {
+                FONode node = iter.next();
                 if (node instanceof FObj
                         || (node instanceof FOText
                                 && ((FOText) node).willCreateArea())) {
@@ -414,7 +414,7 @@ public abstract class FObj extends FONod
 
     /** {@inheritDoc} */
     protected String getContextInfoAlt() {
-        StringBuffer sb = new StringBuffer();
+        StringBuilder sb = new StringBuilder();
         if (getLocalName() != null) {
             sb.append(getName());
             sb.append(", ");
@@ -448,7 +448,7 @@ public abstract class FObj extends FONod
             if (iter == null) {
                 return null;
             }
-            StringBuffer sb = new StringBuffer();
+            StringBuilder sb = new StringBuilder();
             while (iter.hasNext()) {
                 FONode node = (FONode) iter.next();
                 String s = node.gatherContextInfo();
@@ -466,7 +466,7 @@ public abstract class FObj extends FONod
     /**
      * Convenience method for validity checking.  Checks if the
      * incoming node is a member of the "%block;" parameter entity
-     * as defined in Sect. 6.2 of the XSL 1.0 & 1.1 Recommendations
+     * as defined in Sect. 6.2 of the XSL 1.0 &amp; 1.1 Recommendations
      *
      * @param nsURI namespace URI of incoming node
      * @param lName local name (i.e., no prefix) of incoming node
@@ -486,7 +486,7 @@ public abstract class FObj extends FONod
     /**
      * Convenience method for validity checking.  Checks if the
      * incoming node is a member of the "%inline;" parameter entity
-     * as defined in Sect. 6.2 of the XSL 1.0 & 1.1 Recommendations
+     * as defined in Sect. 6.2 of the XSL 1.0 &amp; 1.1 Recommendations
      *
      * @param nsURI namespace URI of incoming node
      * @param lName local name (i.e., no prefix) of incoming node
@@ -528,7 +528,7 @@ public abstract class FObj extends FONod
     /**
      * Convenience method for validity checking.  Checks if the
      * incoming node is a member of the neutral item list
-     * as defined in Sect. 6.2 of the XSL 1.0 & 1.1 Recommendations
+     * as defined in Sect. 6.2 of the XSL 1.0 &amp; 1.1 Recommendations
      * @param nsURI namespace URI of incoming node
      * @param lName local name (i.e., no prefix) of incoming node
      * @return true if a member, false if not
@@ -619,16 +619,16 @@ public abstract class FObj extends FONod
      * @param bidiLevel a non-negative bidi embedding level
      */
     public void setBidiLevel(int bidiLevel) {
+
         assert bidiLevel >= 0;
-        if (bidiLevel >= 0) {
-            if ((this.bidiLevel < 0) || (bidiLevel < this.bidiLevel)) {
-                this.bidiLevel = bidiLevel;
-                if ((parent != null) && !isBidiPropagationBoundary()) {
-                    FObj foParent = (FObj) parent;
-                    int parentBidiLevel = foParent.getBidiLevel();
-                    if ((parentBidiLevel < 0) || (bidiLevel < 
parentBidiLevel)) {
-                        foParent.setBidiLevel(bidiLevel);
-                    }
+
+        if ((this.bidiLevel < 0) || (bidiLevel < this.bidiLevel)) {
+            this.bidiLevel = bidiLevel;
+            if ((parent != null) && !isBidiPropagationBoundary()) {
+                FObj foParent = (FObj) parent;
+                int parentBidiLevel = foParent.getBidiLevel();
+                if ((parentBidiLevel < 0) || (bidiLevel < parentBidiLevel)) {
+                    foParent.setBidiLevel(bidiLevel);
                 }
             }
         }
@@ -765,12 +765,12 @@ public abstract class FObj extends FONod
         }
 
         /** {@inheritDoc} */
-        public FObj parentNode() {
+        public FObj parent() {
             return parentNode;
         }
 
         /** {@inheritDoc} */
-        public Object next() {
+        public FONode next() {
             if (currentNode != null) {
                 if (currentIndex != 0) {
                     if (currentNode.siblings != null
@@ -789,7 +789,7 @@ public abstract class FObj extends FONod
         }
 
         /** {@inheritDoc} */
-        public Object previous() {
+        public FONode previous() {
             if (currentNode.siblings != null
                     && currentNode.siblings[0] != null) {
                 currentIndex--;
@@ -802,9 +802,8 @@ public abstract class FObj extends FONod
         }
 
         /** {@inheritDoc} */
-        public void set(Object o) {
+        public void set(FONode newNode) {
             if ((flags & F_SET_ALLOWED) == F_SET_ALLOWED) {
-                FONode newNode = (FONode) o;
                 if (currentNode == parentNode.firstChild) {
                     parentNode.firstChild = newNode;
                 } else {
@@ -823,8 +822,7 @@ public abstract class FObj extends FONod
         }
 
         /** {@inheritDoc} */
-        public void add(Object o) {
-            FONode newNode = (FONode) o;
+        public void add(FONode newNode) {
             if (currentIndex == -1) {
                 if (currentNode != null) {
                     FONode.attachSiblings(newNode, currentNode);
@@ -838,9 +836,9 @@ public abstract class FObj extends FONod
             } else {
                 if (currentNode.siblings != null
                         && currentNode.siblings[1] != null) {
-                    FONode.attachSiblings((FONode) o, currentNode.siblings[1]);
+                    FONode.attachSiblings(newNode, currentNode.siblings[1]);
                 }
-                FONode.attachSiblings(currentNode, (FONode) o);
+                FONode.attachSiblings(currentNode, newNode);
                 if (currentNode == parentNode.lastChild) {
                     parentNode.lastChild = newNode;
                 }
@@ -894,7 +892,7 @@ public abstract class FObj extends FONod
         }
 
         /** {@inheritDoc} */
-        public FONode lastNode() {
+        public FONode last() {
             while (currentNode != null
                     && currentNode.siblings != null
                     && currentNode.siblings[1] != null) {
@@ -905,20 +903,10 @@ public abstract class FObj extends FONod
         }
 
         /** {@inheritDoc} */
-        public FONode firstNode() {
+        public FONode first() {
             currentNode = parentNode.firstChild;
             currentIndex = 0;
             return currentNode;
         }
-
-        /** {@inheritDoc} */
-        public FONode nextNode() {
-            return (FONode) next();
-        }
-
-        /** {@inheritDoc} */
-        public FONode previousNode() {
-            return (FONode) previous();
-        }
     }
 }

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FObjMixed.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FObjMixed.java?rev=1722662&r1=1722661&r2=1722662&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FObjMixed.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FObjMixed.java Sat Jan  2 
20:35:38 2016
@@ -149,7 +149,7 @@ public abstract class FObjMixed extends
                     = this.getChildNodes(this.currentTextNode);
             FONode node;
             while (nodeIter.hasNext()) {
-                node = nodeIter.nextNode();
+                node = nodeIter.next();
                 assert (node instanceof FOText
                         || node.getNameId() == FO_CHARACTER);
                 if (node.getNameId() == FO_CHARACTER) {

Modified: 
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/pagination/Declarations.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/pagination/Declarations.java?rev=1722662&r1=1722661&r2=1722662&view=diff
==============================================================================
--- 
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/pagination/Declarations.java 
(original)
+++ 
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/pagination/Declarations.java 
Sat Jan  2 20:35:38 2016
@@ -78,7 +78,7 @@ public class Declarations extends FObj {
     public void endOfNode() throws FOPException {
         if (firstChild != null) {
             for (FONodeIterator iter = getChildNodes(); iter.hasNext();) {
-                FONode node = iter.nextNode();
+                FONode node = iter.next();
                 if (node.getName().equals("fo:color-profile")) {
                     ColorProfile cp = (ColorProfile)node;
                     if (!"".equals(cp.getColorProfileName())) {

Modified: 
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/table/TableRowIterator.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/table/TableRowIterator.java?rev=1722662&r1=1722661&r2=1722662&view=diff
==============================================================================
--- 
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/table/TableRowIterator.java
 (original)
+++ 
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/table/TableRowIterator.java
 Sat Jan  2 20:35:38 2016
@@ -68,7 +68,7 @@ public class TableRowIterator {
                 List rowGroupsList = new LinkedList();
                 // TODO this is ugly
                 for (FONodeIterator iter = table.getChildNodes(); 
iter.hasNext();) {
-                    FONode node = iter.nextNode();
+                    FONode node = iter.next();
                     if (node instanceof TableBody) {
                         rowGroupsList.addAll(((TableBody) 
node).getRowGroups());
                     }

Modified: 
xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/flow/table/CollapsedConditionalBorderTestCase.java
URL: 
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/flow/table/CollapsedConditionalBorderTestCase.java?rev=1722662&r1=1722661&r2=1722662&view=diff
==============================================================================
--- 
xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/flow/table/CollapsedConditionalBorderTestCase.java
 (original)
+++ 
xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/flow/table/CollapsedConditionalBorderTestCase.java
 Sat Jan  2 20:35:38 2016
@@ -140,7 +140,7 @@ public class CollapsedConditionalBorderT
         do {
             String baseErrorMsge = "table " + Integer.toString(tableNum) + " 
(0-based), ";
             Table table = (Table) tableIterator.next();
-            TablePart part = (TablePart) table.getChildNodes().nextNode();
+            TablePart part = (TablePart) table.getChildNodes().next();
             GridUnit gu = getGridUnit(part);
 
             String errorMsge = baseErrorMsge + "border-before";
@@ -182,7 +182,7 @@ public class CollapsedConditionalBorderT
                     resolvedBordersHF[tableNum][borderNum++]);
 
             FONodeIterator bodyIter = table.getChildNodes();
-            TableBody body = (TableBody) bodyIter.nextNode();
+            TableBody body = (TableBody) bodyIter.next();
             gu = getGridUnit(body);
             checkBorder(errorMsge, gu.borderBefore.normal,
                     resolvedBordersHF[tableNum][borderNum++]);
@@ -197,7 +197,7 @@ public class CollapsedConditionalBorderT
             checkBorder(errorMsge, gu.borderAfter.rest,
                     resolvedBordersHF[tableNum][borderNum++]);
 
-            body = (TableBody) bodyIter.nextNode();
+            body = (TableBody) bodyIter.next();
             gu = getGridUnit(body);
             checkBorder(errorMsge, gu.borderBefore.normal,
                     resolvedBordersHF[tableNum][borderNum++]);



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to