]> source.dussan.org Git - poi.git/commitdiff
[bug-67579] add new XWPFDocument/XMLSlideShow constructor
authorPJ Fanning <fanningpj@apache.org>
Thu, 26 Oct 2023 18:20:33 +0000 (18:20 +0000)
committerPJ Fanning <fanningpj@apache.org>
Thu, 26 Oct 2023 18:20:33 +0000 (18:20 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1913363 13f79535-47bb-0310-9956-ffa450edef68

poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XMLSlideShow.java
poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFDocument.java

index 38562f5a5839f8a664fd86dcbe43e190c0d95635..77f7c0e61c412415418d81ed7ab321e5039e0107 100644 (file)
@@ -129,14 +129,27 @@ public class XMLSlideShow extends POIXMLDocument
     }
 
     /**
-     * @param is InputStream
+     * @param stream InputStream, which is closed after it is read
      * @throws IOException If reading data from the stream fails
      * @throws POIXMLException a RuntimeException that can be caused by invalid OOXML data
      * @throws IllegalStateException a number of other runtime exceptions can be thrown, especially if there are problems with the
      * input format
      */
-    public XMLSlideShow(InputStream is) throws IOException {
-        this(PackageHelper.open(is));
+    public XMLSlideShow(InputStream stream) throws IOException {
+        this(stream, true);
+    }
+
+    /**
+     * @param stream InputStream
+     * @param closeStream Whether to close the InputStream
+     * @throws IOException If reading data from the stream fails
+     * @throws POIXMLException a RuntimeException that can be caused by invalid OOXML data
+     * @throws IllegalStateException a number of other runtime exceptions can be thrown, especially if there are problems with the
+     * input format
+     * @since POI 5.2.5
+     */
+    public XMLSlideShow(InputStream stream, boolean closeStream) throws IOException {
+        this(PackageHelper.open(stream, closeStream));
     }
 
     static OPCPackage empty() {
index c9d84c426ee8c5a77d5cf9da1ee81dcb9f6c394a..544bd209cf85ca0c2971e66d9c3366be58015fb4 100644 (file)
@@ -150,14 +150,27 @@ public class XWPFDocument extends POIXMLDocument implements Document, IBody {
     }
 
     /**
-     * @param is The InputStream to read data from
+     * @param stream The InputStream to read data from - the stream is closed
      * @throws IOException If reading data from the stream fails
      * @throws POIXMLException a RuntimeException that can be caused by invalid OOXML data
      * @throws IllegalStateException a number of other runtime exceptions can be thrown, especially if there are problems with the
      * input format
      */
-    public XWPFDocument(InputStream is) throws IOException {
-        super(PackageHelper.open(is));
+    public XWPFDocument(InputStream stream) throws IOException {
+        this(stream, true);
+    }
+
+    /**
+     * @param stream The InputStream to read data from
+     * @param closeStream Whether to close the InputStream
+     * @throws IOException If reading data from the stream fails
+     * @throws POIXMLException a RuntimeException that can be caused by invalid OOXML data
+     * @throws IllegalStateException a number of other runtime exceptions can be thrown, especially if there are problems with the
+     * input format
+     * @since POI 5.2.5
+     */
+    public XWPFDocument(InputStream stream, boolean closeStream) throws IOException {
+        super(PackageHelper.open(stream, closeStream));
 
         //build a tree of POIXMLDocumentParts, this workbook being the root
         load(XWPFFactory.getInstance());