]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
Add generics to layout
authorSimon Steiner <ssteiner@apache.org>
Tue, 2 Jul 2024 09:45:01 +0000 (10:45 +0100)
committerSimon Steiner <ssteiner@apache.org>
Tue, 2 Jul 2024 09:45:01 +0000 (10:45 +0100)
37 files changed:
fop-core/src/main/java/org/apache/fop/fo/flow/table/Table.java
fop-core/src/main/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/AbstractPageSequenceLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/BlockContainerLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/BlockStackingLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/BreakElement.java
fop-core/src/main/java/org/apache/fop/layoutmgr/ElementListObserver.java
fop-core/src/main/java/org/apache/fop/layoutmgr/KnuthBlockBox.java
fop-core/src/main/java/org/apache/fop/layoutmgr/LayoutContext.java
fop-core/src/main/java/org/apache/fop/layoutmgr/LayoutManagerMaker.java
fop-core/src/main/java/org/apache/fop/layoutmgr/LayoutManagerMapping.java
fop-core/src/main/java/org/apache/fop/layoutmgr/LocalBreaker.java
fop-core/src/main/java/org/apache/fop/layoutmgr/PageBreaker.java
fop-core/src/main/java/org/apache/fop/layoutmgr/PageBreakingAlgorithm.java
fop-core/src/main/java/org/apache/fop/layoutmgr/PageSequenceLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/RestartAtLM.java
fop-core/src/main/java/org/apache/fop/layoutmgr/SpaceResolver.java
fop-core/src/main/java/org/apache/fop/layoutmgr/SpaceSpecifier.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/ContentLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/InlineStackingLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/LineLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/LineLayoutPossibilities.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/TextLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/list/ListItemLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/ActiveCell.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/ColumnSetup.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/RowGroupLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/RowPainter.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/TableAndCaptionLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/TableCaptionLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/TableCellLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/TableContentLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/TableContentPosition.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/TableHFPenaltyPosition.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/TableHeaderFooterPosition.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/TableLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/TableStepper.java

index 212608664f281fd8cabebf4fe55b069e2ee94467..5fa17cf173948c34d039432d5576ad68dfa87f03 100644 (file)
@@ -83,7 +83,7 @@ public class Table extends TableFObj implements ColumnNumberManagerHolder, Break
     private Length orphanContentLimit;
 
     /** collection of columns in this table */
-    private List columns = new ArrayList();
+    private List<FONode> columns = new ArrayList<FONode>();
 
     private ColumnNumberManager columnNumberManager = new ColumnNumberManager();
 
@@ -405,7 +405,7 @@ public class Table extends TableFObj implements ColumnNumberManagerHolder, Break
      *
      * @return a list of {@link TableColumn} elements, may contain null elements
      */
-    public List getColumns() {
+    public List<FONode> getColumns() {
         return columns;
     }
 
index f7f269df1a99c69f16df843282040f4410ecf9e2..ff693ed67bdfd465ddfb90b2d6bc824394b6674c 100644 (file)
@@ -509,7 +509,7 @@ public abstract class AbstractLayoutManager extends AbstractBaseLayoutManager im
     }
 
     public void recreateChildrenLMs() {
-        childLMs = new ArrayList();
+        childLMs = new ArrayList<>();
         isFinished = false;
         if (fobj == null) {
             return;
index 64f87757a793e4f1b076b83974ad52aba4ed70cf..dd30b8abf740cdd5f399f6a5864e5013c2389d96 100644 (file)
@@ -122,9 +122,9 @@ public abstract class AbstractPageSequenceLayoutManager extends AbstractLayoutMa
      * @return the first PageViewport that contains the ID trait
      */
     public PageViewport getFirstPVWithID(String idref) {
-        List list = idTracker.getPageViewportsContainingID(idref);
+        List<PageViewport> list = idTracker.getPageViewportsContainingID(idref);
         if (list != null && list.size() > 0) {
-            return (PageViewport) list.get(0);
+            return list.get(0);
         }
         return null;
     }
@@ -137,9 +137,9 @@ public abstract class AbstractPageSequenceLayoutManager extends AbstractLayoutMa
      * @return the last PageViewport that contains the ID trait
      */
     public PageViewport getLastPVWithID(String idref) {
-        List list = idTracker.getPageViewportsContainingID(idref);
+        List<PageViewport> list = idTracker.getPageViewportsContainingID(idref);
         if (list != null && list.size() > 0) {
-            return (PageViewport) list.get(list.size() - 1);
+            return list.get(list.size() - 1);
         }
         return null;
     }
index ad49720e8f559d721c903f8a7bceb1ccdfc2c13e..7f540337881ede810b9105bbea9c82f624aebfe6 100644 (file)
@@ -666,7 +666,7 @@ public class BlockContainerLayoutManager extends SpacedBorderedPaddedBlockLayout
             while ((curLM = getChildLM()) != null) {
                 LayoutContext childLC = makeChildLayoutContext(context);
 
-                List returnedList = null;
+                List<ListElement> returnedList = null;
                 if (!curLM.isFinished()) {
                     returnedList = curLM.getNextKnuthElements(childLC, alignment);
                 }
index 9a6c7dc8f0a5431e516de08e1aa3a98b96f6fb3a..c7ca3a6c4db6da07d75e135915853284b10402bd 100644 (file)
@@ -1164,7 +1164,7 @@ public abstract class BlockStackingLayoutManager extends AbstractLayoutManager
      * @param sourceList source list
      * @param targetList target list receiving the wrapped position elements
      */
-    protected void wrapPositionElements(List sourceList, List targetList) {
+    protected void wrapPositionElements(List sourceList, List<ListElement> targetList) {
         wrapPositionElements(sourceList, targetList, false);
     }
 
@@ -1175,7 +1175,7 @@ public abstract class BlockStackingLayoutManager extends AbstractLayoutManager
      * @param targetList target list receiving the wrapped position elements
      * @param force if true, every Position is wrapped regardless of its LM of origin
      */
-    protected void wrapPositionElements(List sourceList, List targetList, boolean force) {
+    protected void wrapPositionElements(List sourceList, List<ListElement> targetList, boolean force) {
 
         ListIterator listIter = sourceList.listIterator();
         Object tempElement;
@@ -1201,7 +1201,7 @@ public abstract class BlockStackingLayoutManager extends AbstractLayoutManager
      * @param targetList target list receiving the wrapped position elements
      * @param force if true, every Position is wrapped regardless of its LM of origin
      */
-    protected void wrapPositionElement(ListElement el, List targetList, boolean force) {
+    protected void wrapPositionElement(ListElement el, List<ListElement> targetList, boolean force) {
         if (force || el.getLayoutManager() != this) {
             el.setPosition(notifyPos(new NonLeafPosition(this, el.getPosition())));
         }
index f3f173d8c543e3562cbd0bc7e02c07ccb99b4e37..e71c5d22ffc38359e61ed870950e1d508cc33b69 100644 (file)
@@ -31,8 +31,8 @@ public class BreakElement extends UnresolvedListElement {
     private int penaltyWidth;
     private int penaltyValue;
     private int breakClass;
-    private List pendingBeforeMarks;
-    private List pendingAfterMarks;
+    private List<ListElement> pendingBeforeMarks;
+    private List<ListElement> pendingAfterMarks;
 
     /**
      * Main constructor
@@ -165,12 +165,12 @@ public class BreakElement extends UnresolvedListElement {
     }
 
     /** @return the pending border and padding elements at the before edge */
-    public List getPendingBeforeMarks() {
+    public List<ListElement> getPendingBeforeMarks() {
         return this.pendingBeforeMarks;
     }
 
     /** @return the pending border and padding elements at the after edge */
-    public List getPendingAfterMarks() {
+    public List<ListElement> getPendingAfterMarks() {
         return this.pendingAfterMarks;
     }
 
index 8108cda7e8eb444f758c7ae0cfbfecf67ff6715d..c06d6bf414c67904cc2cd4cde41b099ef7707bea 100644 (file)
@@ -31,7 +31,7 @@ public final class ElementListObserver {
     private ElementListObserver() {
     }
 
-    private static List activeObservers;
+    private static List<Observer> activeObservers;
 
     /**
      * Adds a new Observer to the list.
@@ -39,7 +39,7 @@ public final class ElementListObserver {
      */
     public static void addObserver(Observer observer) {
         if (!isObservationActive()) {
-            activeObservers = new java.util.ArrayList();
+            activeObservers = new java.util.ArrayList<>();
         }
         activeObservers.add(observer);
     }
index 92ae1aacf51d450ea7884bffc1fd2814bb4b7059..6d92c9abced72fa64d526b7c309997f14a8c4d04 100644 (file)
@@ -38,7 +38,7 @@ public class KnuthBlockBox extends KnuthBox {
     private List<FootnoteBodyLayoutManager> footnoteList;
     private List<FloatContentLayoutManager> floatContentLMs;
     /** List of Knuth elements. This is a list of LinkedList elements. */
-    private List elementLists;
+    private List<List<KnuthElement>> elementLists;
 
     /**
      * Creates a new box.
@@ -104,7 +104,7 @@ public class KnuthBlockBox extends KnuthBox {
      */
     public void addElementList(List list) {
         if (elementLists == null) {
-            elementLists = new LinkedList();
+            elementLists = new LinkedList<>();
         }
         elementLists.add(list);
     }
@@ -114,7 +114,7 @@ public class KnuthBlockBox extends KnuthBox {
      *
      * @return a list of KnuthElement sequences corresponding to footnotes cited in this box
      */
-    public List getElementLists() {
+    public List<List<KnuthElement>> getElementLists() {
         return elementLists;
     }
 
index bb240e637804a10d5f326192b94ae02c847644d9..c2082108dfcfbe0a8e1f64032734598330961cc8 100644 (file)
@@ -85,13 +85,13 @@ public final class LayoutContext {
      * A list of pending marks (border and padding) on the after edge when a page break occurs.
      * May be null.
      */
-    private List pendingAfterMarks;
+    private List<ListElement> pendingAfterMarks;
 
     /**
      * A list of pending marks (border and padding) on the before edge when a page break occurs.
      * May be null.
      */
-    private List pendingBeforeMarks;
+    private List<ListElement> pendingBeforeMarks;
 
     /** Current hyphenation context. May be null. */
     private HyphContext hyphContext;
@@ -177,10 +177,10 @@ public final class LayoutContext {
     /** @param source from which pending marks are copied */
     public void copyPendingMarksFrom(LayoutContext source) {
         if (source.pendingAfterMarks != null) {
-            this.pendingAfterMarks = new java.util.ArrayList(source.pendingAfterMarks);
+            this.pendingAfterMarks = new java.util.ArrayList<>(source.pendingAfterMarks);
         }
         if (source.pendingBeforeMarks != null) {
-            this.pendingBeforeMarks = new java.util.ArrayList(source.pendingBeforeMarks);
+            this.pendingBeforeMarks = new java.util.ArrayList<>(source.pendingBeforeMarks);
         }
     }
 
@@ -334,7 +334,7 @@ public final class LayoutContext {
      */
     public void addPendingAfterMark(UnresolvedListElementWithLength element) {
         if (this.pendingAfterMarks == null) {
-            this.pendingAfterMarks = new java.util.ArrayList();
+            this.pendingAfterMarks = new java.util.ArrayList<>();
         }
         this.pendingAfterMarks.add(element);
     }
@@ -343,7 +343,7 @@ public final class LayoutContext {
      * @return the pending border and padding elements at the after edge
      * @see #addPendingAfterMark(UnresolvedListElementWithLength)
      */
-    public List getPendingAfterMarks() {
+    public List<ListElement> getPendingAfterMarks() {
         if (this.pendingAfterMarks != null) {
             return Collections.unmodifiableList(this.pendingAfterMarks);
         } else {
@@ -367,7 +367,7 @@ public final class LayoutContext {
      */
     public void addPendingBeforeMark(UnresolvedListElementWithLength element) {
         if (this.pendingBeforeMarks == null) {
-            this.pendingBeforeMarks = new java.util.ArrayList();
+            this.pendingBeforeMarks = new java.util.ArrayList<>();
         }
         this.pendingBeforeMarks.add(element);
     }
@@ -376,7 +376,7 @@ public final class LayoutContext {
      * @return the pending border and padding elements at the before edge
      * @see #addPendingBeforeMark(UnresolvedListElementWithLength)
      */
-    public List getPendingBeforeMarks() {
+    public List<ListElement> getPendingBeforeMarks() {
         if (this.pendingBeforeMarks != null) {
             return Collections.unmodifiableList(this.pendingBeforeMarks);
         } else {
index 789d66eb239215cb9b0e25ce3d053162133a8c8e..d1055a036edc2addc754bd6340c3ff68115f193b 100644 (file)
@@ -42,7 +42,7 @@ public interface LayoutManagerMaker {
      * @param node the FO node for which the LayoutManagers are made
      * @param lms the list to which the LayoutManagers are added
      */
-    void makeLayoutManagers(FONode node, List lms);
+    void makeLayoutManagers(FONode node, List<LayoutManager> lms);
 
     /**
      * Make a specific LayoutManager for the node.
index 4ab176b9eb6bc1693613de30ebf2b044040058a0..8be8b58034c10d49b9f8be7cff272bdf5452a7d9 100644 (file)
@@ -186,7 +186,7 @@ public class LayoutManagerMapping implements LayoutManagerMaker {
 
     /** {@inheritDoc} */
     public LayoutManager makeLayoutManager(FONode node) {
-        List lms = new ArrayList();
+        List<LayoutManager> lms = new ArrayList<>();
         makeLayoutManagers(node, lms);
         if (lms.size() == 0) {
             throw new IllegalStateException("LayoutManager for class "
@@ -197,7 +197,7 @@ public class LayoutManagerMapping implements LayoutManagerMaker {
                                    + node.getClass()
                                    + " found, only one may be declared.");
         }
-        return (LayoutManager) lms.get(0);
+        return lms.get(0);
     }
 
     /** {@inheritDoc} */
index 41a7b381340eb4e751667ccf79a087c4619a48d0..5d632c658bffdfefa6abaab16b361a4c10565ea8 100644 (file)
@@ -100,7 +100,7 @@ public abstract class LocalBreaker extends AbstractBreaker {
             childLC.setRefIPD(context.getRefIPD());
             childLC.setWritingMode(context.getWritingMode());
 
-            List returnedList = null;
+            List<ListElement> returnedList = null;
             // The following is a HACK! Ignore leading and trailing white space
             boolean ignore = curLM instanceof TextLayoutManager;
             if (!curLM.isFinished()) {
index 1f2d57bdb0feef8ee52551d9296c1883bbb0299e..1e9a1e87bfbc626ff3babe89b244a72ea2277799 100644 (file)
@@ -56,8 +56,8 @@ public class PageBreaker extends AbstractBreaker {
     private int floatHeight;
     private int floatYOffset;
 
-    private List relayedFootnotesList;
-    private List relayedLengthList;
+    private List<ListElement> relayedFootnotesList;
+    private List<Integer> relayedLengthList;
     private int relayedTotalFootnotesLength;
     private int relayedInsertedFootnotesLength;
     private boolean relayedFootnotesPending;
@@ -926,8 +926,8 @@ public class PageBreaker extends AbstractBreaker {
         pageBreakHandled = true;
     }
 
-    public void holdFootnotes(List fl, List ll, int tfl, int ifl, boolean fp, boolean nf, int fnfi, int fli,
-            int fei, MinOptMax fsl, int pfli, int pfei) {
+    public void holdFootnotes(List fl, List<Integer> ll, int tfl, int ifl, boolean fp, boolean nf, int fnfi, int fli,
+                              int fei, MinOptMax fsl, int pfli, int pfei) {
         relayedFootnotesList = fl;
         relayedLengthList = ll;
         relayedTotalFootnotesLength = tfl;
index b72124c772484fab90732440e029ceaa122202e5..93eeaf0e81e1f605e93ed2cf28fa3ac472045f19 100644 (file)
@@ -1344,7 +1344,7 @@ class PageBreakingAlgorithm extends BreakingAlgorithm {
         handlingStartOfFloat = false;
     }
 
-    public void loadFootnotes(List fl, List ll, int tfl, int ifl, boolean fp, boolean nf, int fnfi, int fli,
+    public void loadFootnotes(List fl, List<Integer> ll, int tfl, int ifl, boolean fp, boolean nf, int fnfi, int fli,
             int fei, MinOptMax fsl, int pfli, int pfei) {
         footnotesList = fl;
         lengthList = ll;
index 1f0b50162c9e6a33a2f6757926bbc41a62ae3ad9..32c7661bd9e0bf6aef11a4a889df66cbd95d2844 100644 (file)
@@ -395,8 +395,8 @@ public class PageSequenceLayoutManager extends AbstractPageSequenceLayoutManager
         return flowIPD;
     }
 
-    public void holdFootnotes(List fl, List ll, int tfl, int ifl, boolean fp, boolean nf, int fnfi, int fli,
-            int fei, MinOptMax fsl, int pfli, int pfei) {
+    public void holdFootnotes(List fl, List<Integer> ll, int tfl, int ifl, boolean fp, boolean nf, int fnfi, int fli,
+                              int fei, MinOptMax fsl, int pfli, int pfei) {
         if (fl != null && fl.size() > 0) {
             pageBreaker.holdFootnotes(fl, ll, tfl, ifl, fp, nf, fnfi, fli, fei, fsl, pfli, pfei);
         }
index 6dd80075d62e6f492ccf67f20ad9c8ad0d4a6495..08189cba9f272173316131babdd13d05b1d25496 100644 (file)
@@ -50,7 +50,7 @@ class RestartAtLM {
                                 .get(eventBroadcaster);
                         eventProducer.nonRestartableContentFlowingToNarrowerPage(this);
                     }
-                    breaker.firstElementsForRestart = new LinkedList();
+                    breaker.firstElementsForRestart = new LinkedList<>();
                     boolean boxFound = false;
                     Iterator iter = blockList.listIterator(positionIndex + 1);
                     Position position = null;
index 868b467f7bef52e7d3504b8a8c4b11f9cf788225..3666f286aa3a81d12e9c9c9fe530d8f4fa7d19a4 100644 (file)
@@ -57,7 +57,7 @@ public final class SpaceResolver {
      * @param isFirst Resolution at the beginning of a (full) element list
      * @param isLast Resolution at the end of a (full) element list
      */
-    private SpaceResolver(List first, BreakElement breakPoss, List second,
+    private SpaceResolver(List first, BreakElement breakPoss, List<ListElement> second,
             boolean isFirst, boolean isLast) {
         this.isFirst = isFirst;
         this.isLast = isLast;
@@ -603,9 +603,9 @@ public final class SpaceResolver {
         boolean first = true;
         boolean last = false;
         boolean skipNextElement = false;
-        List unresolvedFirst = new java.util.ArrayList();
-        List unresolvedSecond = new java.util.ArrayList();
-        List currentGroup;
+        List<ListElement> unresolvedFirst = new java.util.ArrayList<>();
+        List<ListElement> unresolvedSecond = new java.util.ArrayList<>();
+        List<ListElement> currentGroup;
         ListIterator iter = elems.listIterator();
         while (iter.hasNext()) {
             ListElement el = (ListElement)iter.next();
@@ -651,7 +651,7 @@ public final class SpaceResolver {
                     LOG.trace("Swap first and second parts in no-break condition,"
                             + " second part is empty.");
                     //The first list is reversed, so swap if this shouldn't happen
-                    List swapList = unresolvedSecond;
+                    List<ListElement> swapList = unresolvedSecond;
                     unresolvedSecond = unresolvedFirst;
                     unresolvedFirst = swapList;
                 }
index dd525e16f2711478ce573d0d6f61c5e1c0bd32cd..2c08f352bb8e983953af32da31d15103eb68ad8a 100644 (file)
@@ -34,7 +34,7 @@ public class SpaceSpecifier implements Cloneable {
 
     private boolean startsReferenceArea;
     private boolean hasForcing;
-    private List spaceVals = new ArrayList();
+    private List<SpaceVal> spaceVals = new ArrayList<SpaceVal>();
 
     /**
      * Creates a new SpaceSpecifier.
@@ -53,7 +53,7 @@ public class SpaceSpecifier implements Cloneable {
             ss.startsReferenceArea = startsReferenceArea;
             ss.hasForcing = hasForcing;
             // Clone the vector, but share the objects in it!
-            ss.spaceVals = new ArrayList();
+            ss.spaceVals = new ArrayList<SpaceVal>();
             ss.spaceVals.addAll(spaceVals);
             return ss;
         } catch (CloneNotSupportedException cnse) {
@@ -118,7 +118,7 @@ public class SpaceSpecifier implements Cloneable {
             // Start from the end and count conditional specifiers
             // Stop at first non-conditional
             for (; lastIndex > 0; --lastIndex) {
-                SpaceVal spaceVal = (SpaceVal) spaceVals.get(lastIndex - 1);
+                SpaceVal spaceVal = spaceVals.get(lastIndex - 1);
                 if (!spaceVal.isConditional()) {
                     break;
                 }
@@ -127,7 +127,7 @@ public class SpaceSpecifier implements Cloneable {
         MinOptMax resolvedSpace = MinOptMax.ZERO;
         int maxPrecedence = -1;
         for (int index = 0; index < lastIndex; index++) {
-            SpaceVal spaceVal = (SpaceVal) spaceVals.get(index);
+            SpaceVal spaceVal = spaceVals.get(index);
             MinOptMax space = spaceVal.getSpace();
             if (hasForcing) {
                 resolvedSpace = resolvedSpace.plus(space);
index 881f596e91063685c604b509a62777bf5d797002..5366592c3c440a9b034064815d7b0b1238c9521e 100644 (file)
@@ -220,7 +220,7 @@ public class ContentLayoutManager extends AbstractBaseLayoutManager
      * {@inheritDoc}
      */
     public List<LayoutManager> getChildLMs() {
-        List childLMs = new ArrayList(1);
+        List<LayoutManager> childLMs = new ArrayList<>(1);
         childLMs.add(childLM);
         return childLMs;
     }
index df733d358a3105c564795824f17ffed7989bcf83..d13edf1ceddfb9355a4d534a0a7865301e7f25b7 100644 (file)
@@ -333,7 +333,7 @@ public abstract class InlineStackingLayoutManager extends AbstractLayoutManager
         depth += 1;
 
         KnuthElement returnedElement;
-        LinkedList returnedList = new LinkedList();
+        LinkedList returnedList = new LinkedList<>();
         LinkedList<ListElement> returnList = new LinkedList<>();
         InlineLevelLayoutManager prevLM = null;
         InlineLevelLayoutManager currLM;
index 1b186109cc0ec1b872429f051d235bf973d3123f..ddffde3e198576ccd1e0b0ec9afd89e18892dea4 100644 (file)
@@ -706,7 +706,7 @@ public class LineLayoutManager extends InlineStackingLayoutManager
 
         InlineLevelLayoutManager curLM;
         while ((curLM = (InlineLevelLayoutManager) getChildLM()) != null) {
-            List inlineElements = curLM.getNextKnuthElements(inlineLC, effectiveAlignment);
+            List<KnuthSequence> inlineElements = curLM.getNextKnuthElements(inlineLC, effectiveAlignment);
             if (inlineElements == null || inlineElements.size() == 0) {
                 /* curLM.getNextKnuthElements() returned null or an empty list;
                  * this can happen if there is nothing more to layout,
@@ -715,7 +715,7 @@ public class LineLayoutManager extends InlineStackingLayoutManager
             }
 
             if (lastPar != null) {
-                KnuthSequence firstSeq = (KnuthSequence) inlineElements.get(0);
+                KnuthSequence firstSeq = inlineElements.get(0);
 
                 // finish last paragraph before a new block sequence
                 if (!firstSeq.isInlineSequence()) {
@@ -1281,7 +1281,7 @@ public class LineLayoutManager extends InlineStackingLayoutManager
         // hyphenate every word
         ListIterator currParIterator = currPar.listIterator(currPar.ignoreAtStart);
         // list of TLM involved in hyphenation
-        List updateList = new LinkedList();
+        List<Update> updateList = new LinkedList<>();
         KnuthElement firstElement;
         KnuthElement nextElement;
         // current InlineLevelLayoutManager
@@ -1366,7 +1366,7 @@ public class LineLayoutManager extends InlineStackingLayoutManager
         processUpdates(currPar, updateList);
     }
 
-    private void processUpdates(Paragraph par, List<ListElement> updateList) {
+    private void processUpdates(Paragraph par, List<Update> updateList) {
         // create iterator for the updateList
         ListIterator updateListIterator = updateList.listIterator();
         Update currUpdate;
@@ -1625,7 +1625,7 @@ public class LineLayoutManager extends InlineStackingLayoutManager
          * The positionList must contain one area-generating position,
          * which creates one line area.
          */
-        List positionList = new ArrayList(1);
+        List<Position> positionList = new ArrayList<>(1);
         Position innerPosition = pos.getPosition();
         positionList.add(innerPosition);
 
index 54ca3e54fe20ed5b2cbf77c67726de126ea96b37..75aa3467a1738d0cada5dd5377bb5b8e673d5938 100644 (file)
@@ -73,8 +73,8 @@ public class LineLayoutPossibilities {
 
     /** default constructor */
     public LineLayoutPossibilities() {
-        possibilitiesList = new java.util.ArrayList();
-        savedPossibilities = new java.util.ArrayList();
+        possibilitiesList = new java.util.ArrayList<>();
+        savedPossibilities = new java.util.ArrayList<>();
         optimumIndex = -1;
     }
 
@@ -117,7 +117,7 @@ public class LineLayoutPossibilities {
             savedOptLineCount = 0;
         }
         savedPossibilities = possibilitiesList;
-        possibilitiesList = new java.util.ArrayList();
+        possibilitiesList = new java.util.ArrayList<>();
     }
 
     /**
index 35a63a9e5bb6e89091146065e5d3cc9af9e29c6a..a96e5706e837035e4a12683d7a19ecbc148cedd3 100644 (file)
@@ -116,7 +116,7 @@ public class TextLayoutManager extends LeafNodeLayoutManager {
     private int changeOffset;
     private int thisStart;
     private int tempStart;
-    private List changeList = new LinkedList();
+    private List<PendingChange> changeList = new LinkedList<>();
 
     private AlignmentContext alignmentContext;
 
index 91f7b3678704ed1b5eda2466e35dcc2942864c66..3857ef0709a860b91de1cb51fb76c510cdeeddb9 100644 (file)
@@ -44,6 +44,7 @@ import org.apache.fop.layoutmgr.ElementListObserver;
 import org.apache.fop.layoutmgr.ElementListUtils;
 import org.apache.fop.layoutmgr.FloatContentLayoutManager;
 import org.apache.fop.layoutmgr.FootenoteUtil;
+import org.apache.fop.layoutmgr.FootnoteBodyLayoutManager;
 import org.apache.fop.layoutmgr.Keep;
 import org.apache.fop.layoutmgr.KnuthBlockBox;
 import org.apache.fop.layoutmgr.KnuthElement;
@@ -422,7 +423,7 @@ public class ListItemLayoutManager extends SpacedBorderedPaddedBlockLayoutManage
             // collect footnote information
             // TODO this should really not be done like this. ListItemLM should remain as
             // footnote-agnostic as possible
-            LinkedList<LayoutManager> footnoteList = new LinkedList<LayoutManager>();
+            LinkedList<FootnoteBodyLayoutManager> footnoteList = new LinkedList<>();
             for (int i = 0; i < elementLists.length; i++) {
                 footnoteList.addAll(FootenoteUtil.getFootnotes(elementLists[i], start[i], end[i]));
             }
index 668bd9c19b2df4513cba7f4562d1b2c4dd51e255..ca869c7334a25b86efff6dfd971c534bd1195d20 100644 (file)
@@ -33,11 +33,13 @@ import org.apache.fop.fo.flow.table.EffRow;
 import org.apache.fop.fo.flow.table.PrimaryGridUnit;
 import org.apache.fop.fo.properties.CommonBorderPaddingBackground;
 import org.apache.fop.layoutmgr.ElementListUtils;
+import org.apache.fop.layoutmgr.FootnoteBodyLayoutManager;
 import org.apache.fop.layoutmgr.Keep;
 import org.apache.fop.layoutmgr.KnuthBlockBox;
 import org.apache.fop.layoutmgr.KnuthBox;
 import org.apache.fop.layoutmgr.KnuthElement;
 import org.apache.fop.layoutmgr.KnuthPenalty;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.traits.MinOptMax;
 
 /**
@@ -49,7 +51,7 @@ class ActiveCell {
 
     private PrimaryGridUnit pgu;
     /** Knuth elements for this active cell. */
-    private List elementList;
+    private List<ListElement> elementList;
     /** Iterator over the Knuth element list. */
     private ListIterator knuthIter;
     /** Number of the row where the row-span ends, zero-based. */
@@ -104,7 +106,7 @@ class ActiveCell {
         /** Value of the penalty ending this step, 0 if the step does not end on a penalty. */
         private int penaltyValue;
         /** List of footnotes for this step. */
-        private List footnoteList;
+        private List<FootnoteBodyLayoutManager> footnoteList;
         /**
          * One of {@link Constants#EN_AUTO}, {@link Constants#EN_COLUMN},
          * {@link Constants#EN_PAGE}, {@link Constants#EN_EVEN_PAGE},
@@ -136,7 +138,7 @@ class ActiveCell {
             this.penaltyValue  = other.penaltyValue;
             if (other.footnoteList != null) {
                 if (this.footnoteList == null) {
-                    this.footnoteList = new ArrayList();
+                    this.footnoteList = new ArrayList<>();
                 }
                 this.footnoteList.addAll(other.footnoteList);
             }
@@ -338,7 +340,7 @@ class ActiveCell {
             } else {
                 if (el instanceof KnuthBlockBox && ((KnuthBlockBox) el).hasAnchors()) {
                     if (afterNextStep.footnoteList == null) {
-                        afterNextStep.footnoteList = new LinkedList();
+                        afterNextStep.footnoteList = new LinkedList<>();
                     }
                     afterNextStep.footnoteList.addAll(((KnuthBlockBox) el).getFootnoteBodyLMs());
                 }
index 1835d05477f5549cdfcb356efe6c481032b54851..f219dc9aa507945beec3005d0dae7a8e18184b9f 100644 (file)
@@ -46,8 +46,8 @@ public class ColumnSetup {
 
     private Table table;
     private WritingModeTraitsGetter wmTraits;
-    private List columns = new java.util.ArrayList();
-    private List colWidths = new java.util.ArrayList();
+    private List<TableColumn> columns = new java.util.ArrayList<TableColumn>();
+    private List<Length> colWidths = new java.util.ArrayList<Length>();
 
     private int maxColIndexReferenced;
 
@@ -64,7 +64,7 @@ public class ColumnSetup {
     }
 
     private void prepareColumns() {
-        List rawCols = table.getColumns();
+        List<FONode> rawCols = table.getColumns();
         if (rawCols != null) {
             int colnum = 1;
             for (Object rawCol : rawCols) {
@@ -122,9 +122,9 @@ public class ColumnSetup {
                     }
                 }
             }
-            return (TableColumn) columns.get(size - 1);
+            return columns.get(size - 1);
         } else {
-            return (TableColumn) columns.get(index - 1);
+            return columns.get(index - 1);
         }
     }
 
@@ -171,7 +171,7 @@ public class ColumnSetup {
 
         for (int i = columns.size(); --i >= 0;) {
             if (columns.get(i) != null) {
-                col = (TableColumn) columns.get(i);
+                col = columns.get(i);
                 colWidth = col.getColumnWidth();
                 colWidths.add(0, colWidth);
             }
@@ -265,7 +265,7 @@ public class ColumnSetup {
         for (int i = (col + nrColSpan - 1), nc = colWidths.size(); ++i < nc;) {
             int effCol = i;
             if (colWidths.get(effCol) != null) {
-                xoffset += ((Length) colWidths.get(effCol)).getValue(context);
+                xoffset += colWidths.get(effCol).getValue(context);
             }
         }
         return xoffset;
@@ -286,7 +286,7 @@ public class ColumnSetup {
                 effCol = colWidths.size() - 1;
             }
             if (colWidths.get(effCol) != null) {
-                xoffset += ((Length) colWidths.get(effCol)).getValue(context);
+                xoffset += colWidths.get(effCol).getValue(context);
             }
         }
         return xoffset;
@@ -305,7 +305,7 @@ public class ColumnSetup {
                 effIndex = colWidths.size() - 1;
             }
             if (colWidths.get(effIndex) != null) {
-                sum += ((Length) colWidths.get(effIndex)).getValue(context);
+                sum += colWidths.get(effIndex).getValue(context);
             }
         }
         return sum;
index 6fce25c66ff3bb50527692d956cdbec8c5352bc8..8b74f635df87eb54fd5ddee9d3de0675ae3547a2 100644 (file)
@@ -118,7 +118,7 @@ class RowGroupLayoutManager {
                     childLC.setRefIPD(spanWidth);
 
                     //Get the element list for the cell contents
-                    List elems = primary.getCellLM().getNextKnuthElements(
+                    List<ListElement> elems = primary.getCellLM().getNextKnuthElements(
                             childLC, alignment);
                     ElementListObserver.observe(elems, "table-cell", primary.getCell().getId());
                     primary.setElements(elems);
@@ -126,7 +126,7 @@ class RowGroupLayoutManager {
             }
         }
         computeRowHeights();
-        List elements = tableStepper.getCombinedKnuthElementsForRowGroup(context,
+        List<ListElement> elements = tableStepper.getCombinedKnuthElementsForRowGroup(context,
                 rowGroup, bodyType);
         returnList.addAll(elements);
     }
index dbb1107efdbceb52d958545758889fda770927cf..6de85c3a68c3f0a308f96b8262db66dd1e918ac3 100644 (file)
@@ -70,7 +70,7 @@ class RowPainter {
      * This is particularly needed for spanned cells where you need to know the y-offset
      * of the starting row when the area is generated at the time the cell is closed.
      */
-    private List rowOffsets = new ArrayList();
+    private List<Integer> rowOffsets = new ArrayList<>();
 
     private int[] cellHeights;
     private boolean[] firstCellOnPage;
@@ -82,7 +82,7 @@ class RowPainter {
     /** See {@link RowPainter#registerPartBackgroundArea(Block)}. */
     private CommonBorderPaddingBackground tablePartBackground;
     /** See {@link RowPainter#registerPartBackgroundArea(Block)}. */
-    private List tablePartBackgroundAreas;
+    private List<Block> tablePartBackgroundAreas;
 
     private TableContentLayoutManager tclm;
 
@@ -103,7 +103,7 @@ class RowPainter {
         if (background.hasBackground()) {
             tablePartBackground = background;
             if (tablePartBackgroundAreas == null) {
-                tablePartBackgroundAreas = new ArrayList();
+                tablePartBackgroundAreas = new ArrayList<Block>();
             }
         }
         tablePartOffset = currentRowOffset;
@@ -538,7 +538,7 @@ class RowPainter {
      * @return its y-offset on the page
      */
     private int getRowOffset(int rowIndex) {
-        return (Integer) rowOffsets.get(rowIndex - firstRowIndex);
+        return rowOffsets.get(rowIndex - firstRowIndex);
     }
 
     // TODO get rid of that
index d95e508c5052731b6d51fe84193f2e357de75d74..1d8cb890cbb98b76e096501aaaceacd9054681b9 100644 (file)
@@ -39,8 +39,6 @@ public class TableAndCaptionLayoutManager extends BlockStackingLayoutManager {
 
     private Block curBlockArea;
 
-    //private List childBreaks = new java.util.ArrayList();
-
     /**
      * Create a new table and caption layout manager.
      * @param node table-and-caption FO
index ee4cba2e44818e690a0875a174b621c92a6cfc42..a89519425f395e78d1b97c5c226d9f41b4b9fcdc 100644 (file)
@@ -37,8 +37,6 @@ public class TableCaptionLayoutManager extends BlockStackingLayoutManager {
 
     private Block curBlockArea;
 
-    //private List childBreaks = new ArrayList();
-
     /**
      * Create a new Caption layout manager.
      * @param node table-caption FO
index 14485361d9aa1da0ed1307e4b3c4c0f9f79fafe8..7e369e5261ddde5cdc7a90f8bfcc1f99c541da2d 100644 (file)
@@ -176,7 +176,7 @@ public class TableCellLayoutManager extends BlockStackingLayoutManager {
         cellIPD = referenceIPD;
         cellIPD -= getIPIndents();
 
-        List returnedList;
+        List<ListElement> returnedList;
         List<ListElement> contentList = new LinkedList<>();
         List<ListElement> returnList = new LinkedList<>();
 
@@ -218,7 +218,7 @@ public class TableCellLayoutManager extends BlockStackingLayoutManager {
         }
         primaryGridUnit.setKeepWithNext(context.getKeepWithNextPending());
 
-        returnedList = new LinkedList();
+        returnedList = new LinkedList<>();
         if (!contentList.isEmpty()) {
             wrapPositionElements(contentList, returnList);
         } else {
@@ -230,7 +230,7 @@ public class TableCellLayoutManager extends BlockStackingLayoutManager {
         }
         //Space resolution
         SpaceResolver.resolveElementList(returnList);
-        if (((KnuthElement) returnList.get(0)).isForcedBreak()) {
+        if (returnList.get(0).isForcedBreak()) {
             primaryGridUnit.setBreakBefore(((KnuthPenalty) returnList.get(0)).getBreakClass());
             returnList.remove(0);
             assert !returnList.isEmpty();
index 3f96eba5f7ee237bbe7d433046883fea61b690e9..053ce737a11fd478db09622a1d47006ba7baab73 100644 (file)
@@ -267,7 +267,7 @@ public class TableContentLayoutManager implements PercentBaseContext {
         if (rowGroup != null) {
             RowGroupLayoutManager rowGroupLM = new RowGroupLayoutManager(getTableLM(), rowGroup,
                     stepper);
-            List nextRowGroupElems = rowGroupLM.getNextKnuthElements(context, alignment, bodyType);
+            List<ListElement> nextRowGroupElems = rowGroupLM.getNextKnuthElements(context, alignment, bodyType);
             keepWithPrevious = keepWithPrevious.compare(context.getKeepWithPreviousPending());
             breakBefore = context.getBreakBefore();
             int breakBetween = context.getBreakAfter();
@@ -383,9 +383,9 @@ public class TableContentLayoutManager implements PercentBaseContext {
         this.usedBPD = 0;
         RowPainter painter = new RowPainter(this, layoutContext);
 
-        List tablePositions = new java.util.ArrayList();
-        List headerElements = null;
-        List footerElements = null;
+        List<Position> tablePositions = new java.util.ArrayList<>();
+        List<ListElement> headerElements = null;
+        List<ListElement> footerElements = null;
         Position firstPos = null;
         Position lastPos = null;
         Position lastCheckPos = null;
@@ -506,7 +506,7 @@ public class TableContentLayoutManager implements PercentBaseContext {
 
     private void addHeaderFooterAreas(List elements, TablePart part, RowPainter painter,
             boolean lastOnPage) {
-        List lst = new java.util.ArrayList(elements.size());
+        List<Position> lst = new java.util.ArrayList<>(elements.size());
         for (Iterator iter = new KnuthPossPosIter(elements); iter.hasNext();) {
             Position pos = (Position) iter.next();
             /*
@@ -533,7 +533,7 @@ public class TableContentLayoutManager implements PercentBaseContext {
     private void addBodyAreas(Iterator iterator, RowPainter painter,
             boolean lastOnPage) {
         painter.startBody();
-        List lst = new java.util.ArrayList();
+        List<TableContentPosition> lst = new java.util.ArrayList<>();
         TableContentPosition pos = (TableContentPosition) iterator.next();
         boolean isFirstPos = pos.getFlag(TableContentPosition.FIRST_IN_ROWGROUP)
                 && pos.getRow().getFlag(EffRow.FIRST_IN_PART);
index e6dc5b22d6696a1c2d4dcd6fc39077c1de055004..98d474f8e7c0987d05ad9de2143972de4fd88b57 100644 (file)
@@ -38,7 +38,7 @@ class TableContentPosition extends Position {
     public static final int LAST_IN_ROWGROUP = 2;
 
     /** the list of CellParts making up this position */
-    protected List cellParts;
+    protected List<CellPart> cellParts;
     /** effective row this position belongs to */
     private EffRow row;
     /** flags for the position */
@@ -52,8 +52,8 @@ class TableContentPosition extends Position {
      * @param cellParts the list of CellPart instances
      * @param row effective row this position belongs to
      */
-    protected TableContentPosition(LayoutManager lm, List cellParts,
-            EffRow row) {
+    protected TableContentPosition(LayoutManager lm, List<CellPart> cellParts,
+                                   EffRow row) {
         super(lm);
         this.cellParts = cellParts;
         this.row = row;
@@ -81,7 +81,7 @@ class TableContentPosition extends Position {
     }
 
     TablePart getTablePart() {
-        return ((CellPart) cellParts.get(0)).pgu.getTablePart();
+        return cellParts.get(0).pgu.getTablePart();
     }
 
     /**
index 3e504a45c84c9f26729f83227ae4bdfd9db3b852..47d80315e76a8263a327fdfd5b9ccf83dd41fb4b 100644 (file)
@@ -22,6 +22,7 @@ package org.apache.fop.layoutmgr.table;
 import java.util.List;
 
 import org.apache.fop.layoutmgr.LayoutManager;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.layoutmgr.Position;
 
 /**
@@ -31,9 +32,9 @@ import org.apache.fop.layoutmgr.Position;
 class TableHFPenaltyPosition extends Position {
 
     /** Element list for the header */
-    protected List headerElements;
+    protected List<ListElement> headerElements;
     /** Element list for the footer */
-    protected List footerElements;
+    protected List<ListElement> footerElements;
 
     /**
      * Creates a new TableHFPenaltyPosition
index 8d3b993b2624c1c6a8c3902b7f0cc22535a897f6..5795395577aaa4a3d7c475413962c7ad3d8dbea4 100644 (file)
@@ -22,6 +22,7 @@ package org.apache.fop.layoutmgr.table;
 import java.util.List;
 
 import org.apache.fop.layoutmgr.LayoutManager;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.layoutmgr.Position;
 
 /**
@@ -33,7 +34,7 @@ class TableHeaderFooterPosition extends Position {
     /** True indicates a position for a header, false for a footer. */
     protected boolean header;
     /** Element list representing the header/footer */
-    protected List nestedElements;
+    protected List<ListElement> nestedElements;
 
     /**
      * Creates a new TableHeaderFooterPosition.
@@ -42,7 +43,7 @@ class TableHeaderFooterPosition extends Position {
      * @param nestedElements Element list representing the header/footer
      */
     protected TableHeaderFooterPosition(LayoutManager lm,
-            boolean header, List nestedElements) {
+            boolean header, List<ListElement> nestedElements) {
         super(lm);
         this.header = header;
         this.nestedElements = nestedElements;
index 91390dbcd3eb4b902ce1731008959ef793d117f6..284dbdede66d03b6b5ef4dea952d9c48b9a8c7f8 100644 (file)
@@ -87,7 +87,7 @@ public class TableLayoutManager extends SpacedBorderedPaddedBlockLayoutManager
     private int halfBorderSeparationIPD;
 
     /** See {@link TableLayoutManager#registerColumnBackgroundArea(TableColumn, Block, int)}. */
-    private List columnBackgroundAreas;
+    private List<ColumnBackgroundInfo> columnBackgroundAreas;
 
     private Position auxiliaryPosition;
 
@@ -363,7 +363,7 @@ public class TableLayoutManager extends SpacedBorderedPaddedBlockLayoutManager
     void registerColumnBackgroundArea(TableColumn column, Block backgroundArea, int xShift) {
         addBackgroundArea(backgroundArea);
         if (columnBackgroundAreas == null) {
-            columnBackgroundAreas = new ArrayList();
+            columnBackgroundAreas = new ArrayList<>();
         }
         columnBackgroundAreas.add(new ColumnBackgroundInfo(column, backgroundArea, xShift));
     }
index ed9a29ad66b5e76fcb848be7f6da99b65c34ad19..dc45593177a2a21dc3cdb3b5ee7bd7a9188aefbf 100644 (file)
@@ -63,10 +63,10 @@ public class TableStepper {
     private boolean rowFinished;
 
     /** Cells spanning the current row. */
-    private List activeCells = new LinkedList();
+    private List<ActiveCell> activeCells = new LinkedList<>();
 
     /** Cells that will start the next row. */
-    private List nextActiveCells = new LinkedList();
+    private List<ActiveCell> nextActiveCells = new LinkedList<>();
 
     /**
      * True if the next row is being delayed, that is, if cells spanning the current and