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 2017/12/05 21:23:44 UTC

svn commit: r1817238 - in /poi/trunk/src/ooxml/java/org/apache/poi: ss/extractor/EmbeddedExtractor.java xssf/extractor/XSSFExcelExtractor.java xssf/usermodel/XSSFWorkbook.java

Author: fanningpj
Date: Tue Dec  5 21:23:44 2017
New Revision: 1817238

URL: http://svn.apache.org/viewvc?rev=1817238&view=rev
Log:
use try-with-resources in more places

Modified:
    poi/trunk/src/ooxml/java/org/apache/poi/ss/extractor/EmbeddedExtractor.java
    poi/trunk/src/ooxml/java/org/apache/poi/xssf/extractor/XSSFExcelExtractor.java
    poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java

Modified: poi/trunk/src/ooxml/java/org/apache/poi/ss/extractor/EmbeddedExtractor.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/ss/extractor/EmbeddedExtractor.java?rev=1817238&r1=1817237&r2=1817238&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/ss/extractor/EmbeddedExtractor.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/ss/extractor/EmbeddedExtractor.java Tue Dec  5 21:23:44 2017
@@ -204,17 +204,16 @@ public class EmbeddedExtractor implement
         @Override
         public boolean canExtract(DirectoryNode dn) {
             ClassID clsId = dn.getStorageClsid();
-            return (PdfClassID.equals(clsId)
-            || dn.hasEntry("CONTENTS"));
+            return (PdfClassID.equals(clsId) || dn.hasEntry("CONTENTS"));
         }
 
         @Override
         public EmbeddedData extract(DirectoryNode dn) throws IOException {
-            ByteArrayOutputStream bos = new ByteArrayOutputStream();
-            InputStream is = dn.createDocumentInputStream("CONTENTS");
-            IOUtils.copy(is, bos);
-            is.close();
-            return new EmbeddedData(dn.getName() + ".pdf", bos.toByteArray(), CONTENT_TYPE_PDF);
+            try(ByteArrayOutputStream bos = new ByteArrayOutputStream();
+                InputStream is = dn.createDocumentInputStream("CONTENTS")) {
+                IOUtils.copy(is, bos);
+                return new EmbeddedData(dn.getName() + ".pdf", bos.toByteArray(), CONTENT_TYPE_PDF);
+            }
         }
         
         @Override

Modified: poi/trunk/src/ooxml/java/org/apache/poi/xssf/extractor/XSSFExcelExtractor.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/extractor/XSSFExcelExtractor.java?rev=1817238&r1=1817237&r2=1817238&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/extractor/XSSFExcelExtractor.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/extractor/XSSFExcelExtractor.java Tue Dec  5 21:23:44 2017
@@ -74,12 +74,10 @@ public class XSSFExcelExtractor extends
             System.err.println("  XSSFExcelExtractor <filename.xlsx>");
             System.exit(1);
         }
-        OPCPackage pkg = OPCPackage.create(args[0]);
-        POIXMLTextExtractor extractor = new XSSFExcelExtractor(pkg);
-        try {
+
+        try (OPCPackage pkg = OPCPackage.create(args[0]);
+             POIXMLTextExtractor extractor = new XSSFExcelExtractor(pkg)) {
             System.out.println(extractor.getText());
-        } finally {
-            extractor.close();
         }
     }
 

Modified: poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java?rev=1817238&r1=1817237&r2=1817238&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java Tue Dec  5 21:23:44 2017
@@ -517,10 +517,8 @@ public class XSSFWorkbook extends POIXML
     public int addPicture(byte[] pictureData, int format) {
         int imageNumber = getAllPictures().size() + 1;
         XSSFPictureData img = createRelationship(XSSFPictureData.RELATIONS[format], XSSFFactory.getInstance(), imageNumber, true).getDocumentPart();
-        try {
-            OutputStream out = img.getPackagePart().getOutputStream();
+        try (OutputStream out = img.getPackagePart().getOutputStream()) {
             out.write(pictureData);
-            out.close();
         } catch (IOException e){
             throw new POIXMLException(e);
         }
@@ -1745,9 +1743,9 @@ public class XSSFWorkbook extends POIXML
         xmlOptions.setSaveSyntheticDocumentElement(new QName(CTWorkbook.type.getName().getNamespaceURI(), "workbook"));
 
         PackagePart part = getPackagePart();
-        OutputStream out = part.getOutputStream();
-        workbook.save(out, xmlOptions);
-        out.close();
+        try (OutputStream out = part.getOutputStream()) {
+            workbook.save(out, xmlOptions);
+        }
     }
     
     /**



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