You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ki...@apache.org on 2021/05/23 12:04:27 UTC

svn commit: r1890135 - in /poi/trunk/poi-ooxml/src: main/java/org/apache/poi/xdgf/usermodel/ main/java/org/apache/poi/xdgf/usermodel/section/ test/java/org/apache/poi/xdgf/usermodel/section/

Author: kiwiwings
Date: Sun May 23 12:04:27 2021
New Revision: 1890135

URL: http://svn.apache.org/viewvc?rev=1890135&view=rev
Log:
replace CombinedIterable with a few lines of simple code

Removed:
    poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xdgf/usermodel/section/CombinedIterable.java
Modified:
    poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xdgf/usermodel/XDGFShape.java
    poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xdgf/usermodel/section/GeometrySection.java
    poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/usermodel/section/TestCombinedIterator.java

Modified: poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xdgf/usermodel/XDGFShape.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xdgf/usermodel/XDGFShape.java?rev=1890135&r1=1890134&r2=1890135&view=diff
==============================================================================
--- poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xdgf/usermodel/XDGFShape.java (original)
+++ poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xdgf/usermodel/XDGFShape.java Sun May 23 12:04:27 2021
@@ -17,6 +17,8 @@
 
 package org.apache.poi.xdgf.usermodel;
 
+import static org.apache.poi.xdgf.usermodel.section.GeometrySection.combineGeometries;
+
 import java.awt.BasicStroke;
 import java.awt.Color;
 import java.awt.Stroke;
@@ -33,7 +35,6 @@ import com.microsoft.schemas.office.visi
 import org.apache.poi.ooxml.POIXMLException;
 import org.apache.poi.util.Internal;
 import org.apache.poi.xdgf.exceptions.XDGFException;
-import org.apache.poi.xdgf.usermodel.section.CombinedIterable;
 import org.apache.poi.xdgf.usermodel.section.GeometrySection;
 import org.apache.poi.xdgf.usermodel.section.XDGFSection;
 import org.apache.poi.xdgf.usermodel.shape.ShapeVisitor;
@@ -832,8 +833,7 @@ public class XDGFShape extends XDGFSheet
     //
 
     public Iterable<GeometrySection> getGeometrySections() {
-        return new CombinedIterable<>(_geometry,
-                _masterShape != null ? _masterShape._geometry : null);
+        return combineGeometries(_geometry, _masterShape != null ? _masterShape._geometry : null);
     }
 
     /**

Modified: poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xdgf/usermodel/section/GeometrySection.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xdgf/usermodel/section/GeometrySection.java?rev=1890135&r1=1890134&r2=1890135&view=diff
==============================================================================
--- poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xdgf/usermodel/section/GeometrySection.java (original)
+++ poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xdgf/usermodel/section/GeometrySection.java Sun May 23 12:04:27 2021
@@ -18,6 +18,7 @@
 package org.apache.poi.xdgf.usermodel.section;
 
 import java.awt.geom.Path2D;
+import java.util.Collection;
 import java.util.Iterator;
 import java.util.Map.Entry;
 import java.util.SortedMap;
@@ -26,6 +27,7 @@ import java.util.TreeMap;
 import com.microsoft.schemas.office.visio.x2012.main.RowType;
 import com.microsoft.schemas.office.visio.x2012.main.SectionType;
 import org.apache.poi.ooxml.POIXMLException;
+import org.apache.poi.util.Internal;
 import org.apache.poi.xdgf.geom.SplineCollector;
 import org.apache.poi.xdgf.usermodel.XDGFCell;
 import org.apache.poi.xdgf.usermodel.XDGFShape;
@@ -86,9 +88,20 @@ public class GeometrySection extends XDG
         return noShow;
     }
 
+    @Internal
+    public static <T,S extends SortedMap<Long,T>> Collection<T> combineGeometries(S map1, S map2) {
+        SortedMap<Long,T> map;
+        if (map2 == null) {
+            map = map1;
+        } else {
+            map = new TreeMap<>(map2);
+            map.putAll(map1);
+        }
+        return map.values();
+    }
+
     public Iterable<GeometryRow> getCombinedRows() {
-        return new CombinedIterable<>(_rows,
-                _master == null ? null : _master._rows);
+        return combineGeometries(_rows, _master == null ? null : _master._rows);
     }
 
     public Path2D.Double getPath(XDGFShape parent) {

Modified: poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/usermodel/section/TestCombinedIterator.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/usermodel/section/TestCombinedIterator.java?rev=1890135&r1=1890134&r2=1890135&view=diff
==============================================================================
--- poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/usermodel/section/TestCombinedIterator.java (original)
+++ poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xdgf/usermodel/section/TestCombinedIterator.java Sun May 23 12:04:27 2021
@@ -17,6 +17,7 @@
 
 package org.apache.poi.xdgf.usermodel.section;
 
+import static org.apache.poi.xdgf.usermodel.section.GeometrySection.combineGeometries;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -49,7 +50,7 @@ class TestCombinedIterator {
         base.put(2L, "B2");
         base.put(3L, "B3");
 
-        testIteration(createIter(base, null), "B1", "B2", "B3");
+        testIteration(combineGeometries(base, null), "B1", "B2", "B3");
     }
 
     @Test
@@ -65,7 +66,7 @@ class TestCombinedIterator {
         master.put(5L, "M5");
         master.put(6L, "M6");
 
-        testIteration(createIter(base, master), "B1", "B2", "B3", "M4", "M5", "M6");
+        testIteration(combineGeometries(base, master), "B1", "B2", "B3", "M4", "M5", "M6");
     }
 
     @Test
@@ -81,7 +82,7 @@ class TestCombinedIterator {
         master.put(2L, "M2");
         master.put(3L, "M3");
 
-        testIteration(createIter(base, master), "M1", "M2", "M3", "B4", "B5", "B6");
+        testIteration(combineGeometries(base, master), "M1", "M2", "M3", "B4", "B5", "B6");
     }
 
     @Test
@@ -97,7 +98,7 @@ class TestCombinedIterator {
         master.put(4L, "M4");
         master.put(6L, "M6");
 
-        testIteration(createIter(base, master), "B1", "M2", "B3", "M4", "B5", "M6");
+        testIteration(combineGeometries(base, master), "B1", "M2", "B3", "M4", "B5", "M6");
     }
 
     @Test
@@ -115,7 +116,7 @@ class TestCombinedIterator {
         master.put(7L, "M7");
         master.put(8L, "M8");
 
-        testIteration(createIter(base, master), "B1", "B2", "M3", "M4", "B5", "B6", "M7", "M8");
+        testIteration(combineGeometries(base, master), "B1", "B2", "M3", "M4", "B5", "B6", "M7", "M8");
     }
 
     @Test
@@ -131,7 +132,7 @@ class TestCombinedIterator {
         master.put(2L, "M2");
         master.put(3L, "M3");
 
-        testIteration(createIter(base, master), "B1", "B2", "B3");
+        testIteration(combineGeometries(base, master), "B1", "B2", "B3");
     }
 
     @Test
@@ -148,12 +149,6 @@ class TestCombinedIterator {
         master.put(3L, "M3");
         master.put(4L, "M4");
 
-        testIteration(createIter(base, master), "B1", "B2", "B3", "M4");
-    }
-
-
-    private static <T> Iterable<T> createIter(SortedMap<Long, T> map1, SortedMap<Long, T> map2) {
-        // TODO: try to use commons collection and remove CombinedIterable
-        return new CombinedIterable<>(map1, map2);
+        testIteration(combineGeometries(base, master), "B1", "B2", "B3", "M4");
     }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org