]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
Add generics to layout
authorSimon Steiner <ssteiner@apache.org>
Wed, 26 Jun 2024 08:51:53 +0000 (09:51 +0100)
committerSimon Steiner <ssteiner@apache.org>
Wed, 26 Jun 2024 08:51:53 +0000 (09:51 +0100)
33 files changed:
fop-core/src/main/java/org/apache/fop/layoutmgr/AbstractBaseLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/AbstractBreaker.java
fop-core/src/main/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/BalancingColumnBreakingAlgorithm.java
fop-core/src/main/java/org/apache/fop/layoutmgr/BlockKnuthSequence.java
fop-core/src/main/java/org/apache/fop/layoutmgr/BreakingAlgorithm.java
fop-core/src/main/java/org/apache/fop/layoutmgr/FootnoteBodyLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/InlineKnuthSequence.java
fop-core/src/main/java/org/apache/fop/layoutmgr/KnuthSequence.java
fop-core/src/main/java/org/apache/fop/layoutmgr/LayoutManager.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/RetrieveTableMarkerLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/StaticContentLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/AbstractGraphicsLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/CharacterLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/ContentLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/FloatLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/FootnoteLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/InlineContainerLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/InlineLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/InlineLevelLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/InlineStackingLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/LeaderLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/LeafNodeLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/LineLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/TextLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/inline/WrapperLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/list/ListItemLayoutManager.java
fop-core/src/main/java/org/apache/fop/layoutmgr/table/RowGroupLayoutManager.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/TableLayoutManager.java

index a84a243b09cd8973f9e7492d3ddb8d8b9f616e83..a3edc2088abd905d2ae67f23d0222c14cb4b18fb 100644 (file)
@@ -284,7 +284,7 @@ public abstract class AbstractBaseLayoutManager
     }
 
     /** {@inheritDoc} */
-    public List getNextKnuthElements(LayoutContext context, int alignment, Stack lmStack,
+    public List<ListElement> getNextKnuthElements(LayoutContext context, int alignment, Stack lmStack,
             Position positionAtIPDChange, LayoutManager restartAtLM) {
         throw new UnsupportedOperationException("Not implemented");
     }
index 40b518af366a0352a29f1387681abc641f5a6f49..3fc3951fc2d068dad14b4a4a92ec3db7ffd2e1c7 100644 (file)
@@ -288,7 +288,7 @@ public abstract class AbstractBreaker {
      * @param alignment the desired text alignment
      * @return          the list of KnuthElements
      */
-    protected abstract List<KnuthElement> getNextKnuthElements(LayoutContext context,
+    protected abstract List<ListElement> getNextKnuthElements(LayoutContext context,
                                                                int alignment);
 
     /**
@@ -302,7 +302,7 @@ public abstract class AbstractBreaker {
      * change occurs between two LMs
      * @return          the list of KnuthElements
      */
-    protected List<KnuthElement> getNextKnuthElements(LayoutContext context, int alignment,
+    protected List<ListElement> getNextKnuthElements(LayoutContext context, int alignment,
             Position positionAtIPDChange, LayoutManager restartAtLM) {
         throw new UnsupportedOperationException("TODO: implement acceptable fallback");
     }
@@ -673,13 +673,13 @@ public abstract class AbstractBreaker {
      */
     protected int getNextBlockList(LayoutContext childLC, int nextSequenceStartsOn,
             Position positionAtIPDChange, LayoutManager restartAtLM,
-            List<KnuthElement> firstElements) {
+            List<ListElement> firstElements) {
         updateLayoutContext(childLC);
         //Make sure the span change signal is reset
         childLC.signalSpanChange(Constants.NOT_SET);
 
         BlockSequence blockList;
-        List<KnuthElement> returnedList;
+        List<ListElement> returnedList;
         if (firstElements == null) {
             returnedList = getNextKnuthElements(childLC, alignment);
         } else if (positionAtIPDChange == null) {
index 0060c4b11930a24ab7689a4a36b37b25c45cd77e..f7f269df1a99c69f16df843282040f4410ecf9e2 100644 (file)
@@ -170,7 +170,7 @@ public abstract class AbstractLayoutManager extends AbstractBaseLayoutManager im
     }
 
     /** {@inheritDoc} */
-    public List getChangedKnuthElements(List oldList, int alignment) {
+    public List<ListElement> getChangedKnuthElements(List<ListElement> oldList, int alignment) {
         log.warn("null implementation of getChangeKnuthElement() called!");
         return null;
     }
index 06c3c538d37be1529b40de7941f9f2492ef8d183..375153f9838afc76dd828f467b6aa5362d2661f0 100644 (file)
@@ -140,7 +140,7 @@ public class BalancingColumnBreakingAlgorithm extends PageBreakingAlgorithm {
         boolean prevIsBox = false;
         int colNumber = 1;
         for (int i = startIndex; i < par.size(); i++) {
-            KnuthElement element = (KnuthElement) par.get(i);
+            KnuthElement element = par.get(i);
             if (isLegalBreak(i, prevIsBox)) {
                 int breakLength = totalLength
                         + (element instanceof KnuthPenalty ? element.getWidth() : 0);
@@ -225,7 +225,7 @@ public class BalancingColumnBreakingAlgorithm extends PageBreakingAlgorithm {
     }
 
     private boolean isLegalBreak(int index, boolean prevIsBox) {
-        KnuthElement element = (KnuthElement) par.get(index);
+        KnuthElement element = par.get(index);
         return element instanceof KnuthPenalty && element.getPenalty() < KnuthPenalty.INFINITE
                 || prevIsBox && element instanceof KnuthGlue;
     }
@@ -235,7 +235,7 @@ public class BalancingColumnBreakingAlgorithm extends PageBreakingAlgorithm {
     }
 
     private int getPenaltyWidth(int index) {
-        KnuthElement element = (KnuthElement) par.get(index);
+        KnuthElement element = par.get(index);
         return element instanceof KnuthPenalty ? element.getWidth() : 0;
     }
 
index 83c1ae5852dc3242378dfe5b947f4c9682a29e6a..030fe4a44e15b6b3acf42d7be9b37e622b242f92 100644 (file)
@@ -42,7 +42,7 @@ public class BlockKnuthSequence extends KnuthSequence {
      * Creates a new list from an existing list.
      * @param list The list from which to create the new list.
      */
-    public BlockKnuthSequence(List list) {
+    public BlockKnuthSequence(List<KnuthSequence> list) {
         super(list);
     }
 
index 08c27404d641968ab8394924b6b503f8fc1d9c9c..260d32ac81a9c482e7f98c8a04e35c970cbd00e8 100644 (file)
@@ -113,7 +113,7 @@ public abstract class BreakingAlgorithm {
     /**
      * The paragraph of KnuthElements.
      */
-    protected KnuthSequence par;
+    protected KnuthSequence<KnuthElement> par;
 
     /**
      * The width of a line (or height of a column in page-breaking mode).
@@ -1313,7 +1313,7 @@ public abstract class BreakingAlgorithm {
      * @return the element at index idx in the paragraph.
      */
     protected KnuthElement getElement(int idx) {
-        return (KnuthElement) par.get(idx);
+        return par.get(idx);
     }
 
     /**
index e20826ca3b4c306bc9adec6ca3b5a903b7ea2fb6..ccb31820309d63701eb8cb85263e6025269e440b 100644 (file)
@@ -30,7 +30,7 @@ import org.apache.fop.fo.flow.FootnoteBody;
  */
 public class FootnoteBodyLayoutManager extends BlockStackingLayoutManager {
 
-    private List<KnuthElement> knuthElements;
+    private List<ListElement> knuthElements;
 
     /**
      * Creates a new FootnoteBodyLayoutManager.
@@ -41,7 +41,7 @@ public class FootnoteBodyLayoutManager extends BlockStackingLayoutManager {
     }
 
     @Override
-    public List<KnuthElement> getNextKnuthElements(LayoutContext context, int alignment) {
+    public List getNextKnuthElements(LayoutContext context, int alignment) {
         if (knuthElements == null) {
             knuthElements = super.getNextKnuthElements(context, alignment);
         }
index 1b38b9d8faaa00d0f1925150fc4d379e40e78abd..5e0bd37ebd93e26f00b92dd7949b2670f7eeca30 100644 (file)
@@ -30,7 +30,7 @@ import org.apache.fop.layoutmgr.inline.KnuthInlineBox;
  * Represents a list of inline Knuth elements.
  * If closed, it represents all elements of a Knuth paragraph.
  */
-public class InlineKnuthSequence extends KnuthSequence  {
+public class InlineKnuthSequence<T extends ListElement> extends KnuthSequence  {
 
     private static final long serialVersionUID = 1354774188859946549L;
 
@@ -47,7 +47,7 @@ public class InlineKnuthSequence extends KnuthSequence  {
      * Creates a new list from an existing list.
      * @param list The list from which to create the new list.
      */
-    public InlineKnuthSequence(List list) {
+    public InlineKnuthSequence(List<T> list) {
         super(list);
     }
 
index cd37f0d3a1ac60e1ccde7ff0b664a6f3350edfa2..ce85b686cb458107c488147832b171e8742fc2c1 100644 (file)
@@ -29,7 +29,7 @@ import org.apache.fop.util.ListUtil;
 /**
  * Represents a list of {@link KnuthElement Knuth elements}.
  */
-public abstract class KnuthSequence extends ArrayList {
+public abstract class KnuthSequence<T extends ListElement> extends ArrayList<T> {
 
     //TODO: do not extend ArrayList
 
@@ -44,7 +44,7 @@ public abstract class KnuthSequence extends ArrayList {
      * Creates a new list from an existing list.
      * @param list The list from which to create the new list.
      */
-    public KnuthSequence(List list) {
+    public KnuthSequence(List<T> list) {
         super(list);
     }
 
@@ -157,7 +157,7 @@ public abstract class KnuthSequence extends ArrayList {
     public ListElement getElement(int index) {
         return (index >= size() || index < 0)
                 ? null
-                : (ListElement) get(index);
+                : get(index);
     }
 
     /**
@@ -175,7 +175,7 @@ public abstract class KnuthSequence extends ArrayList {
         } else {
             int boxIndex = startIndex;
             @SuppressWarnings("unchecked")
-            Iterator<ListElement> iter = listIterator(startIndex);
+            Iterator<T> iter = listIterator(startIndex);
             while (iter.hasNext() && !iter.next().isBox()) {
                 boxIndex++;
             }
index 97449762b40ce9557da3733a39b32792e6c7bbb0..3adaceebc5cb5fd0d1c4e0de6ddb0fba17034997 100644 (file)
@@ -175,7 +175,7 @@ public interface LayoutManager extends PercentBaseContext {
      * @param alignment      the desired text alignment
      * @return               the updated list of KnuthElements
      */
-    List getChangedKnuthElements(List oldList, int alignment);
+    List<ListElement> getChangedKnuthElements(List<ListElement> oldList, int alignment);
 
     /**
      * Whether the FO handled by this layout manager has a descendant (including itself)
@@ -269,7 +269,7 @@ public interface LayoutManager extends PercentBaseContext {
      * a paragraph
      * @return an updated list of elements, taking the new IPD into account
      */
-    List getNextKnuthElements(LayoutContext context, int alignment, Stack lmStack,
+    List<ListElement> getNextKnuthElements(LayoutContext context, int alignment, Stack lmStack,
             Position positionAtIPDChange, LayoutManager restartAtLM);
 
     boolean isFromFootnote();
index f5882f11975b79d21a8cf6db6dc6bfa6bac56a36..41a7b381340eb4e751667ccf79a087c4619a48d0 100644 (file)
@@ -90,9 +90,9 @@ public abstract class LocalBreaker extends AbstractBreaker {
         return lc;
     }
 
-    protected List getNextKnuthElements(LayoutContext context, int alignment) {
+    protected List<ListElement> getNextKnuthElements(LayoutContext context, int alignment) {
         LayoutManager curLM; // currently active LM
-        List returnList = new LinkedList();
+        List<ListElement> returnList = new LinkedList<>();
 
         while ((curLM = lm.getChildLM()) != null) {
             LayoutContext childLC = LayoutContext.newInstance();
index cd9b7f3633961c3dece86c9c427dfb38ccf4d3bd..3f246adfb3f80cd7d0e614d69958848f33df8596 100644 (file)
@@ -201,9 +201,9 @@ public class PageBreaker extends AbstractBreaker {
         return containsFootnotes;
     }
 
-    public static  List<List<KnuthElement>> getFootnoteKnuthElements(FlowLayoutManager flowLM, LayoutContext context,
+    public static List<List<KnuthElement>> getFootnoteKnuthElements(FlowLayoutManager flowLM, LayoutContext context,
             List<FootnoteBodyLayoutManager> footnoteBodyLMs) {
-        List<List<KnuthElement>> footnotes = new ArrayList<List<KnuthElement>>();
+        List<List<KnuthElement>> footnotes = new ArrayList<>();
         LayoutContext footnoteContext = LayoutContext.copyOf(context);
         footnoteContext.setStackLimitBP(context.getStackLimitBP());
         footnoteContext.setRefIPD(flowLM.getPSLM()
@@ -245,8 +245,8 @@ public class PageBreaker extends AbstractBreaker {
     }
 
     /** {@inheritDoc} */
-    protected List getNextKnuthElements(LayoutContext context, int alignment) {
-        List contentList = null;
+    protected List<ListElement> getNextKnuthElements(LayoutContext context, int alignment) {
+        List<ListElement> contentList = null;
 
         while (!childFLM.isFinished() && contentList == null) {
             contentList = childFLM.getNextKnuthElements(context, alignment);
@@ -262,9 +262,9 @@ public class PageBreaker extends AbstractBreaker {
     }
 
     /** {@inheritDoc} */
-    protected List getNextKnuthElements(LayoutContext context, int alignment,
+    protected List<ListElement> getNextKnuthElements(LayoutContext context, int alignment,
             Position positionAtIPDChange, LayoutManager restartAtLM) {
-        List contentList = null;
+        List<ListElement> contentList = null;
 
         do {
             contentList = childFLM.getNextKnuthElements(context, alignment, positionAtIPDChange,
index 9d0979a29b14986fb0dbd212f75a6d23d8104aa4..c644d7f82614903c3ebad818f63c2e0a63e2e795 100644 (file)
@@ -39,7 +39,7 @@ public class RetrieveTableMarkerLayoutManager extends LeafNodeLayoutManager {
     }
 
     /** {@inheritDoc} */
-    public List getNextKnuthElements(LayoutContext context, int alignment) {
+    public List<KnuthSequence> getNextKnuthElements(LayoutContext context, int alignment) {
         setFinished(true);
         FONode foNode = (FONode) getFObj();
         foNode = getTableLayoutManager().resolveRetrieveTableMarker((RetrieveTableMarker) foNode);
index 83fa63151591c6d839cece78eb8e691400bbb7ae..20b337fe9ed4f09c3717b596dca67c9c3614df7e 100644 (file)
@@ -72,7 +72,7 @@ public class StaticContentLayoutManager extends BlockStackingLayoutManager {
     }
 
     /** {@inheritDoc} */
-    public List getNextKnuthElements(LayoutContext context, int alignment) {
+    public List<ListElement> getNextKnuthElements(LayoutContext context, int alignment) {
         throw new IllegalStateException();
     }
 
index 8afec46e11b31128694c87aaa37ec1963b33d3e7..51e1a1c7436817500675f6b854abf93b522fe0a8 100644 (file)
@@ -30,6 +30,7 @@ import org.apache.fop.datatypes.LengthBase;
 import org.apache.fop.fo.FObj;
 import org.apache.fop.fo.flow.AbstractGraphics;
 import org.apache.fop.fo.properties.CommonBorderPaddingBackground;
+import org.apache.fop.layoutmgr.KnuthSequence;
 import org.apache.fop.layoutmgr.LayoutContext;
 import org.apache.fop.layoutmgr.TraitSetter;
 
@@ -111,8 +112,8 @@ public abstract class AbstractGraphicsLayoutManager extends LeafNodeLayoutManage
     }
 
     /** {@inheritDoc} */
-    public List getNextKnuthElements(LayoutContext context,
-                                           int alignment) {
+    public List<KnuthSequence> getNextKnuthElements(LayoutContext context,
+                                                    int alignment) {
         InlineViewport areaCurrent = getInlineArea();
         setCurrentArea(areaCurrent);
         return super.getNextKnuthElements(context, alignment);
index 3f68df0e209695dd1ecb8dfb2b647fc5d237313e..1ba50e9923cbc33ae39b756daa632a93427c3a18 100644 (file)
@@ -111,7 +111,7 @@ public class CharacterLayoutManager extends LeafNodeLayoutManager {
     }
 
     /** {@inheritDoc} */
-    public List getNextKnuthElements(LayoutContext context, int alignment) {
+    public List<KnuthSequence> getNextKnuthElements(LayoutContext context, int alignment) {
         Character fobj = (Character) this.fobj;
 
         // TODO: may need some special handling for fo:character
@@ -152,7 +152,7 @@ public class CharacterLayoutManager extends LeafNodeLayoutManager {
 
         addKnuthElementsForBorderPaddingEnd(seq);
 
-        LinkedList<KnuthSequence> returnList = new LinkedList<KnuthSequence>();
+        LinkedList<KnuthSequence> returnList = new LinkedList<>();
         returnList.add(seq);
         setFinished(true);
         return returnList;
index a5f128f85a144af9e1ac4daf4fb41230043e35f7..0b419217c84f0a6c679295ea7909c0d59ee86a91 100644 (file)
@@ -38,6 +38,7 @@ import org.apache.fop.layoutmgr.KnuthPossPosIter;
 import org.apache.fop.layoutmgr.KnuthSequence;
 import org.apache.fop.layoutmgr.LayoutContext;
 import org.apache.fop.layoutmgr.LayoutManager;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.layoutmgr.PageSequenceLayoutManager;
 import org.apache.fop.layoutmgr.Position;
 import org.apache.fop.layoutmgr.PositionIterator;
@@ -129,8 +130,8 @@ public class ContentLayoutManager extends AbstractBaseLayoutManager
 
         stackSize = 0;
 
-        List contentList = getNextKnuthElements(childLC, Constants.EN_START);
-        for (Object aContentList : contentList) {
+        List<ListElement> contentList = getNextKnuthElements(childLC, Constants.EN_START);
+        for (ListElement aContentList : contentList) {
             KnuthElement element = (KnuthElement) aContentList;
             if (element instanceof KnuthInlineBox) {
                 KnuthInlineBox box = (KnuthInlineBox) element;
@@ -315,12 +316,12 @@ public class ContentLayoutManager extends AbstractBaseLayoutManager
     }
 
     /** {@inheritDoc} */
-    public List getChangedKnuthElements(List oldList, int alignment) {
+    public List<ListElement> getChangedKnuthElements(List<ListElement> oldList, int alignment) {
         return null;
     }
 
     /** {@inheritDoc} */
-    public List getChangedKnuthElements(List oldList, int alignment, int depth) {
+    public List<ListElement> getChangedKnuthElements(List<ListElement> oldList, int alignment, int depth) {
         return getChangedKnuthElements(oldList, alignment);
     }
 
index fe63791bf9799571426aafc88d7a24d04747b5bd..eb5cb8d8c206615ddbb2c9405c96c877cdf1cab6 100644 (file)
@@ -25,11 +25,11 @@ import java.util.List;
 import org.apache.fop.fo.flow.Float;
 import org.apache.fop.layoutmgr.FloatContentLayoutManager;
 import org.apache.fop.layoutmgr.InlineKnuthSequence;
-import org.apache.fop.layoutmgr.KnuthElement;
 import org.apache.fop.layoutmgr.KnuthPossPosIter;
 import org.apache.fop.layoutmgr.KnuthSequence;
 import org.apache.fop.layoutmgr.LayoutContext;
 import org.apache.fop.layoutmgr.LayoutManager;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.layoutmgr.Position;
 import org.apache.fop.layoutmgr.PositionIterator;
 import org.apache.fop.layoutmgr.SpaceResolver;
@@ -38,7 +38,7 @@ public class FloatLayoutManager extends InlineStackingLayoutManager {
 
     private FloatContentLayoutManager floatContentLM;
     private KnuthInlineBox anchor;
-    private List<KnuthElement> floatContentKnuthElements;
+    private List<ListElement> floatContentKnuthElements;
     private Float floatContent;
     private boolean floatContentAreaAdded;
 
@@ -51,7 +51,7 @@ public class FloatLayoutManager extends InlineStackingLayoutManager {
         return null;
     }
 
-    public LinkedList getNextKnuthElements(LayoutContext context, int alignment) {
+    public LinkedList<KnuthSequence> getNextKnuthElements(LayoutContext context, int alignment) {
 
         if (!floatContentAreaAdded && !floatContent.isDisabled()) {
             floatContentLM = new FloatContentLayoutManager(floatContent);
@@ -62,7 +62,7 @@ public class FloatLayoutManager extends InlineStackingLayoutManager {
         }
 
         // the only knuth element is a zero width and height knuth box
-        LinkedList knuthElements = new LinkedList();
+        LinkedList<KnuthSequence> knuthElements = new LinkedList<>();
         KnuthSequence seq = new InlineKnuthSequence();
         anchor = new KnuthInlineBox(0, null, null, true);
         if (!floatContentAreaAdded) {
index 06e742434d67576af7bf7351a1fc8d15575653b7..1fd29eb591f1c7e045945a9236c40f85f1ef0018 100644 (file)
@@ -86,7 +86,7 @@ public class FootnoteLayoutManager extends InlineStackingLayoutManager {
         bodyLM.initialize();
 
         // get Knuth elements representing the footnote citation
-        List returnedList = new LinkedList();
+        List<KnuthSequence> returnedList = new LinkedList<>();
         while (!citationLM.isFinished()) {
             List partialList = citationLM.getNextKnuthElements(context, alignment);
             if (partialList != null) {
index 54237a9148208600616ac2778410e5390f2b2317..e589ab0b99be042b21c0c37953f8f4b43ad683f2 100644 (file)
@@ -319,7 +319,7 @@ public class InlineContainerLayoutManager extends AbstractLayoutManager implemen
         return false;
     }
 
-    public List getChangedKnuthElements(List oldList, int alignment, int depth) {
+    public List<ListElement> getChangedKnuthElements(List<ListElement> oldList, int alignment, int depth) {
         return oldList;
     }
 
index 52418d816c7885afef15f2ca97e502f55a8eb80d..08a85a9315fae425b869291e17c0189697dc5f92 100644 (file)
@@ -259,7 +259,7 @@ public class InlineLayoutManager extends InlineStackingLayoutManager {
 
     /** {@inheritDoc} */
     @Override
-    public List getNextKnuthElements(
+    public List<KnuthSequence> getNextKnuthElements(
         LayoutContext context, int alignment) {
         LayoutManager curLM;
 
index ac829a2fc341fb03e6c8eea6f090dae59c750385..addad2b924aa48f8be29d76b771bc0c90a5da98f 100644 (file)
@@ -22,6 +22,7 @@ package org.apache.fop.layoutmgr.inline;
 import java.util.List;
 
 import org.apache.fop.layoutmgr.LayoutManager;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.layoutmgr.Position;
 
 /**
@@ -91,6 +92,6 @@ List addALetterSpaceTo(List oldList, int depth);
      * @param depth the depth at which the Positions for this LM in oldList are found
      * @return               the updated list of KnuthElements
      **/
-    List getChangedKnuthElements(List oldList, int alignment, int depth);
+    List<ListElement> getChangedKnuthElements(List<ListElement> oldList, int alignment, int depth);
 
 }
index a0acd1cd3ed03a80bf1d120d8b38ac028ebe4fce..d0ee9104b327ba7e6970011941644aa8dc2d42b6 100644 (file)
@@ -32,6 +32,7 @@ import org.apache.fop.layoutmgr.BreakOpportunity;
 import org.apache.fop.layoutmgr.BreakOpportunityHelper;
 import org.apache.fop.layoutmgr.KnuthElement;
 import org.apache.fop.layoutmgr.LayoutContext;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.layoutmgr.NonLeafPosition;
 import org.apache.fop.layoutmgr.Position;
 import org.apache.fop.traits.MinOptMax;
@@ -320,12 +321,12 @@ public abstract class InlineStackingLayoutManager extends AbstractLayoutManager
     /**
      * {@inheritDoc}
      */
-    public List getChangedKnuthElements(List oldList, int alignment) {
+    public List<ListElement> getChangedKnuthElements(List<ListElement> oldList, int alignment) {
         return getChangedKnuthElements(oldList, alignment, 0);
     }
 
     /** {@inheritDoc} */
-    public List getChangedKnuthElements(List oldList, int alignment, int depth) {
+    public List<ListElement> getChangedKnuthElements(List<ListElement> oldList, int alignment, int depth) {
         // "unwrap" the Positions stored in the elements
         ListIterator oldListIterator = oldList.listIterator();
         KnuthElement oldElement;
index a6d695b063779cbb8471c072ff7b9dd54a49a46c..0ccea38407db0e6eee183b636eea1c816ff5b2e4 100644 (file)
@@ -41,6 +41,7 @@ import org.apache.fop.layoutmgr.KnuthPossPosIter;
 import org.apache.fop.layoutmgr.KnuthSequence;
 import org.apache.fop.layoutmgr.LayoutContext;
 import org.apache.fop.layoutmgr.LeafPosition;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.layoutmgr.Position;
 import org.apache.fop.layoutmgr.PositionIterator;
 import org.apache.fop.layoutmgr.TraitSetter;
@@ -256,7 +257,7 @@ public class LeaderLayoutManager extends LeafNodeLayoutManager {
     }
 
     /** {@inheritDoc} */
-    public List getNextKnuthElements(LayoutContext context, int alignment) {
+    public List<KnuthSequence> getNextKnuthElements(LayoutContext context, int alignment) {
         MinOptMax ipd;
         curArea = get(context);
         KnuthSequence seq = new InlineKnuthSequence();
@@ -319,7 +320,7 @@ public class LeaderLayoutManager extends LeafNodeLayoutManager {
     }
 
     /** {@inheritDoc} */
-    public List getChangedKnuthElements(List oldList, int alignment) {
+    public List<ListElement> getChangedKnuthElements(List<ListElement> oldList, int alignment) {
         if (isFinished()) {
             return null;
         }
index ae337b0d01a5244e77ec44a0e5985025dd2b8885..04c6fd72c48348a9baa8856565ff878c922e1411 100644 (file)
@@ -37,6 +37,7 @@ import org.apache.fop.layoutmgr.KnuthPenalty;
 import org.apache.fop.layoutmgr.KnuthSequence;
 import org.apache.fop.layoutmgr.LayoutContext;
 import org.apache.fop.layoutmgr.LeafPosition;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.layoutmgr.Position;
 import org.apache.fop.layoutmgr.PositionIterator;
 import org.apache.fop.layoutmgr.TraitSetter;
@@ -261,7 +262,7 @@ public abstract class LeafNodeLayoutManager extends AbstractLayoutManager
 
     /** {@inheritDoc} */
     @Override
-    public List getNextKnuthElements(LayoutContext context, int alignment) {
+    public List<KnuthSequence> getNextKnuthElements(LayoutContext context, int alignment) {
         curArea = get(context);
 
         alignmentContext = makeAlignmentContext(context);
@@ -327,18 +328,18 @@ public abstract class LeafNodeLayoutManager extends AbstractLayoutManager
      * {@inheritDoc}
      * No subclass has a meaningful implementation of this method
      */
-    public List getChangedKnuthElements(List oldList, int alignment, int depth) {
+    public List<ListElement> getChangedKnuthElements(List<ListElement> oldList, int alignment, int depth) {
         return getChangedKnuthElements(oldList, alignment);
     }
 
     /** {@inheritDoc} */
     @Override
-    public List getChangedKnuthElements(List oldList, int alignment) {
+    public List<ListElement> getChangedKnuthElements(List<ListElement> oldList, int alignment) {
         if (isFinished()) {
             return null;
         }
 
-        LinkedList returnList = new LinkedList();
+        LinkedList<ListElement> returnList = new LinkedList<>();
 
         addKnuthElementsForBorderPaddingStart(returnList);
 
index 60d05b58126502bf9e95cfc68a8b04d65deba84d..9ba707e3c806c2ba318c52583e3a5f0633bd2551 100644 (file)
@@ -607,7 +607,7 @@ public class LineLayoutManager extends InlineStackingLayoutManager
 
     /** {@inheritDoc} */
     @Override
-    public List getNextKnuthElements(LayoutContext context, int alignment) {
+    public List<ListElement> getNextKnuthElements(LayoutContext context, int alignment) {
         if (alignmentContext == null) {
             FontInfo fi = fobj.getFOEventHandler().getFontInfo();
             FontTriplet[] fontkeys = fobj.getCommonFont().getFontState(fi);
@@ -933,7 +933,7 @@ public class LineLayoutManager extends InlineStackingLayoutManager
      */
     private List<ListElement> postProcessLineBreaks(int alignment, LayoutContext context) {
 
-        List<ListElement> returnList = new LinkedList<ListElement>();
+        List<ListElement> returnList = new LinkedList<>();
 
         int endIndex = -1;
         for (int p = 0; p < knuthParagraphs.size(); p++) {
@@ -1366,7 +1366,7 @@ public class LineLayoutManager extends InlineStackingLayoutManager
         processUpdates(currPar, updateList);
     }
 
-    private void processUpdates(Paragraph par, List updateList) {
+    private void processUpdates(Paragraph par, List<ListElement> updateList) {
         // create iterator for the updateList
         ListIterator updateListIterator = updateList.listIterator();
         Update currUpdate;
@@ -1394,7 +1394,7 @@ public class LineLayoutManager extends InlineStackingLayoutManager
                 .applyChanges(par.subList(fromIndex + elementsAdded,
                                               toIndex + elementsAdded))) {
                 // insert the new KnuthElements
-                List newElements = currUpdate.inlineLM.getChangedKnuthElements(
+                List<ListElement> newElements = currUpdate.inlineLM.getChangedKnuthElements(
                     par.subList(fromIndex + elementsAdded,
                                      toIndex + elementsAdded),
                      /*flaggedPenalty,*/ effectiveAlignment);
index e524b87ac0031766836164e9a3d1098d2267c433..aab2dd56c344774aa3375b10c1ce0f9cf49bcd7e 100644 (file)
@@ -45,6 +45,7 @@ import org.apache.fop.layoutmgr.KnuthPenalty;
 import org.apache.fop.layoutmgr.KnuthSequence;
 import org.apache.fop.layoutmgr.LayoutContext;
 import org.apache.fop.layoutmgr.LeafPosition;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.layoutmgr.Position;
 import org.apache.fop.layoutmgr.PositionIterator;
 import org.apache.fop.layoutmgr.TraitSetter;
@@ -1189,7 +1190,7 @@ public class TextLayoutManager extends LeafNodeLayoutManager {
     }
 
     /** {@inheritDoc} */
-    public List getChangedKnuthElements(final List oldList, final int alignment) {
+    public List<ListElement> getChangedKnuthElements(final List<ListElement> oldList, final int alignment) {
         if (isFinished()) {
             return null;
         }
index c6a2b05b2a0dd1814f2a0056cb4b393c2534e1f6..0dcba3efecf11afb78257649d923db755ce50ead 100644 (file)
@@ -27,6 +27,7 @@ import org.apache.fop.area.inline.InlineArea;
 import org.apache.fop.fo.flow.Wrapper;
 import org.apache.fop.layoutmgr.BlockLayoutManager;
 import org.apache.fop.layoutmgr.BlockStackingLayoutManager;
+import org.apache.fop.layoutmgr.KnuthSequence;
 import org.apache.fop.layoutmgr.LayoutContext;
 import org.apache.fop.layoutmgr.PositionIterator;
 import org.apache.fop.layoutmgr.TraitSetter;
@@ -90,8 +91,8 @@ public class WrapperLayoutManager extends LeafNodeLayoutManager {
         getPSLM().addIDToPage(fobj.getId());
     }
 
-    public List getNextKnuthElements(LayoutContext context, int alignment) {
-        List list = super.getNextKnuthElements(context, alignment);
+    public List<KnuthSequence> getNextKnuthElements(LayoutContext context, int alignment) {
+        List<KnuthSequence> list = super.getNextKnuthElements(context, alignment);
         if (parentLayoutManager instanceof LineLayoutManager && !fobj.hasId() && fobj.hasChildren()) {
             return Collections.emptyList();
         }
index 9473db66c2655249ad64b1c9b839d46fe53cf5ff..807d79b0ea40e80068477c76031657c1dd400544 100644 (file)
@@ -636,11 +636,11 @@ public class ListItemLayoutManager extends SpacedBorderedPaddedBlockLayoutManage
             }
         }
 
-        List returnedList = body.getChangedKnuthElements(oldList, alignment);
+        List<ListElement> returnedList = body.getChangedKnuthElements(oldList, alignment);
         // "wrap" the Position inside each element
-        List tempList = returnedList;
+        List<ListElement> tempList = returnedList;
         KnuthElement tempElement;
-        returnedList = new LinkedList();
+        returnedList = new LinkedList<>();
         for (Object aTempList : tempList) {
             tempElement = (KnuthElement) aTempList;
             tempElement.setPosition(new NonLeafPosition(this, tempElement.getPosition()));
index 3b263b09fc70f515b6c2f1b14fd41926abb13589..6fce25c66ff3bb50527692d956cdbec8c5352bc8 100644 (file)
@@ -36,6 +36,7 @@ import org.apache.fop.fo.properties.CommonBorderPaddingBackground;
 import org.apache.fop.fo.properties.LengthRangeProperty;
 import org.apache.fop.layoutmgr.ElementListObserver;
 import org.apache.fop.layoutmgr.LayoutContext;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.traits.MinOptMax;
 import org.apache.fop.util.BreakUtil;
 
@@ -58,8 +59,8 @@ class RowGroupLayoutManager {
         this.tableStepper = tableStepper;
     }
 
-    public LinkedList getNextKnuthElements(LayoutContext context, int alignment, int bodyType) {
-        LinkedList returnList = new LinkedList();
+    public LinkedList<ListElement> getNextKnuthElements(LayoutContext context, int alignment, int bodyType) {
+        LinkedList<ListElement> returnList = new LinkedList<>();
         createElementsForRowGroup(context, alignment, bodyType, returnList);
 
         context.updateKeepWithPreviousPending(rowGroup[0].getKeepWithPrevious());
index cba4c2fae03a319a2c7238546ee7a724830ef798..b62e066d83e9e9c0119fd167540079a009c9e8d4 100644 (file)
@@ -54,6 +54,7 @@ import org.apache.fop.layoutmgr.KnuthGlue;
 import org.apache.fop.layoutmgr.KnuthPenalty;
 import org.apache.fop.layoutmgr.LayoutContext;
 import org.apache.fop.layoutmgr.LayoutManager;
+import org.apache.fop.layoutmgr.ListElement;
 import org.apache.fop.layoutmgr.LocalBreaker;
 import org.apache.fop.layoutmgr.Position;
 import org.apache.fop.layoutmgr.PositionIterator;
@@ -168,7 +169,7 @@ public class TableCellLayoutManager extends BlockStackingLayoutManager {
     /**
      * {@inheritDoc}
      */
-    public List getNextKnuthElements(LayoutContext context, int alignment) {
+    public List<ListElement> getNextKnuthElements(LayoutContext context, int alignment) {
         MinOptMax stackLimit = context.getStackLimitBP();
 
         referenceIPD = context.getRefIPD();
@@ -177,7 +178,7 @@ public class TableCellLayoutManager extends BlockStackingLayoutManager {
 
         List returnedList;
         List contentList = new LinkedList();
-        List returnList = new LinkedList();
+        List<ListElement> returnList = new LinkedList<>();
 
         LayoutManager curLM; // currently active LM
         LayoutManager prevLM = null; // previously active LM
index a887215f6745eb2c5d27ea3e04527262a4138f84..e656b505c6a23ef08c3b5addec99cc3c0be2a5bc 100644 (file)
@@ -152,7 +152,7 @@ public class TableContentLayoutManager implements PercentBaseContext {
         KnuthBox headerAsFirst = null;
         KnuthBox headerAsSecondToLast = null;
         KnuthBox footerAsLast = null;
-        LinkedList returnList = new LinkedList();
+        LinkedList<ListElement> returnList = new LinkedList<>();
         int headerFootnoteBPD = 0;
         if (headerIter != null && headerList == null) {
             this.headerList = getKnuthElementsForRowIterator(
@@ -213,20 +213,20 @@ public class TableContentLayoutManager implements PercentBaseContext {
                 bodyIter, context, alignment, TableRowIterator.BODY));
         if (headerAsFirst != null) {
             int insertionPoint = 0;
-            if (returnList.size() > 0 && ((ListElement)returnList.getFirst()).isForcedBreak()) {
+            if (returnList.size() > 0 && returnList.getFirst().isForcedBreak()) {
                 insertionPoint++;
             }
             returnList.add(insertionPoint, headerAsFirst);
         } else if (headerAsSecondToLast != null) {
             int insertionPoint = returnList.size();
-            if (returnList.size() > 0 && ((ListElement)returnList.getLast()).isForcedBreak()) {
+            if (returnList.size() > 0 && returnList.getLast().isForcedBreak()) {
                 insertionPoint--;
             }
             returnList.add(insertionPoint, headerAsSecondToLast);
         }
         if (footerAsLast != null) {
             int insertionPoint = returnList.size();
-            if (returnList.size() > 0 && ((ListElement)returnList.getLast()).isForcedBreak()) {
+            if (returnList.size() > 0 && returnList.getLast().isForcedBreak()) {
                 insertionPoint--;
             }
             returnList.add(insertionPoint, footerAsLast);
index 182f3e8f735c93485f032c502beda0e30f615f6a..91390dbcd3eb4b902ce1731008959ef793d117f6 100644 (file)
@@ -203,9 +203,9 @@ public class TableLayoutManager extends SpacedBorderedPaddedBlockLayoutManager
     }
 
     /** {@inheritDoc} */
-    public List getNextKnuthElements(LayoutContext context, int alignment) {
+    public List<ListElement> getNextKnuthElements(LayoutContext context, int alignment) {
 
-        List returnList = new LinkedList();
+        List<ListElement> returnList = new LinkedList<>();
 
         /*
          * Compute the IPD and adjust it if necessary (overconstrained)