You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by fa...@apache.org on 2021/12/01 19:26:12 UTC

svn commit: r1895476 - in /poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf: model/CommentsTable.java streaming/SXSSFSheet.java usermodel/OoxmlSheetExtensions.java usermodel/XSSFSheet.java

Author: fanningpj
Date: Wed Dec  1 19:26:11 2021
New Revision: 1895476

URL: http://svn.apache.org/viewvc?rev=1895476&view=rev
Log:
add /* ====================================================================

Added:
    poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/OoxmlSheetExtensions.java   (with props)
Modified:
    poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/model/CommentsTable.java
    poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/streaming/SXSSFSheet.java
    poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFSheet.java

Modified: poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/model/CommentsTable.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/model/CommentsTable.java?rev=1895476&r1=1895475&r2=1895476&view=diff
==============================================================================
--- poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/model/CommentsTable.java (original)
+++ poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/model/CommentsTable.java Wed Dec  1 19:26:11 2021
@@ -34,11 +34,7 @@ import org.apache.poi.ss.util.CellAddres
 import org.apache.poi.util.Internal;
 import org.apache.poi.util.Removal;
 import org.apache.poi.util.Units;
-import org.apache.poi.xssf.streaming.SXSSFSheet;
-import org.apache.poi.xssf.usermodel.XSSFClientAnchor;
-import org.apache.poi.xssf.usermodel.XSSFComment;
-import org.apache.poi.xssf.usermodel.XSSFSheet;
-import org.apache.poi.xssf.usermodel.XSSFVMLDrawing;
+import org.apache.poi.xssf.usermodel.*;
 import org.apache.xmlbeans.XmlException;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTComment;
 import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTCommentList;
@@ -339,10 +335,8 @@ public class CommentsTable extends POIXM
 
     private XSSFVMLDrawing getVMLDrawing(Sheet sheet, boolean autocreate) {
         if (vmlDrawing == null) {
-            if (sheet instanceof XSSFSheet) {
-                vmlDrawing = ((XSSFSheet)sheet).getVMLDrawing(autocreate);
-            } else if (sheet instanceof SXSSFSheet) {
-                vmlDrawing = ((SXSSFSheet)sheet).getVMLDrawing(autocreate);
+            if (sheet instanceof OoxmlSheetExtensions) {
+                vmlDrawing = ((OoxmlSheetExtensions)sheet).getVMLDrawing(autocreate);
             }
         }
         return vmlDrawing;

Modified: poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/streaming/SXSSFSheet.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/streaming/SXSSFSheet.java?rev=1895476&r1=1895475&r2=1895476&view=diff
==============================================================================
--- poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/streaming/SXSSFSheet.java (original)
+++ poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/streaming/SXSSFSheet.java Wed Dec  1 19:26:11 2021
@@ -57,8 +57,7 @@ import org.openxmlformats.schemas.spread
 /**
  * Streaming version of XSSFSheet implementing the "BigGridDemo" strategy.
  */
-public class SXSSFSheet implements Sheet
-{
+public class SXSSFSheet implements Sheet, OoxmlSheetExtensions {
     /*package*/ final XSSFSheet _sh;
     protected final SXSSFWorkbook _workbook;
     private final TreeMap<Integer,SXSSFRow> _rows = new TreeMap<>();
@@ -345,14 +344,13 @@ public class SXSSFSheet implements Sheet
 
 
     /**
-     * Get VML drawing for this sheet (aka 'legacy' drawing). This method is for internal POI use only.
+     * Get VML drawing for this sheet (aka 'legacy' drawing).
      *
      * @param autoCreate if true, then a new VML drawing part is created
      *
      * @return the VML drawing of {@code null} if the drawing was not found and autoCreate=false
      * @since POI 5.2.0
      */
-    @Internal
     public XSSFVMLDrawing getVMLDrawing(boolean autoCreate) {
         XSSFSheet xssfSheet = getWorkbook().getXSSFSheet(this);
         return xssfSheet == null ? null : xssfSheet.getVMLDrawing(autoCreate);

Added: poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/OoxmlSheetExtensions.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/OoxmlSheetExtensions.java?rev=1895476&view=auto
==============================================================================
--- poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/OoxmlSheetExtensions.java (added)
+++ poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/OoxmlSheetExtensions.java Wed Dec  1 19:26:11 2021
@@ -0,0 +1,37 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.xssf.usermodel;
+
+import org.apache.poi.ss.usermodel.Sheet;
+
+/**
+ * Methods exposed by XSSF, SXSSF and related sheets - that are additional to the ones on the {@link Sheet} interface.
+ *
+ * @since POI 5.2.0
+ */
+public interface OoxmlSheetExtensions {
+    /**
+     * Get VML drawing for this sheet (aka 'legacy' drawing).
+     *
+     * @param autoCreate if true, then a new VML drawing part is created
+     *
+     * @return the VML drawing or {@code null} if the drawing was not found and autoCreate=false
+     *         (or this method is not implemented)
+     */
+    XSSFVMLDrawing getVMLDrawing(boolean autoCreate);
+}

Propchange: poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/OoxmlSheetExtensions.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFSheet.java?rev=1895476&r1=1895475&r2=1895476&view=diff
==============================================================================
--- poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFSheet.java (original)
+++ poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFSheet.java Wed Dec  1 19:26:11 2021
@@ -77,7 +77,7 @@ import org.openxmlformats.schemas.spread
  * contain text, numbers, dates, and formulas. Cells can also be formatted.
  * </p>
  */
-public class XSSFSheet extends POIXMLDocumentPart implements Sheet  {
+public class XSSFSheet extends POIXMLDocumentPart implements Sheet, OoxmlSheetExtensions  {
     private static final Logger LOG = LogManager.getLogger(XSSFSheet.class);
 
     private static final double DEFAULT_ROW_HEIGHT = 15.0;
@@ -560,13 +560,13 @@ public class XSSFSheet extends POIXMLDoc
     }
 
     /**
-     * Get VML drawing for this sheet (aka 'legacy' drawing). This method is for internal POI use only.
+     * Get VML drawing for this sheet (aka 'legacy' drawing).
      *
      * @param autoCreate if true, then a new VML drawing part is created
      *
      * @return the VML drawing of {@code null} if the drawing was not found and autoCreate=false
      */
-    @Internal
+    @Override
     public XSSFVMLDrawing getVMLDrawing(boolean autoCreate) {
         if (xssfvmlDrawing == null) {
             XSSFVMLDrawing drawing = null;



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