From c7afc8286e50cda8817909b81ded923b5667f18c Mon Sep 17 00:00:00 2001 From: Derek Hulley Date: Fri, 17 Feb 2006 12:24:09 +0000 Subject: [PATCH] Fixed closing of input stream git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@2428 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../metadata/OfficeMetadataExtracter.java | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracter.java b/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracter.java index d6bc5dc547..1c5b234ceb 100644 --- a/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracter.java +++ b/source/java/org/alfresco/repo/content/metadata/OfficeMetadataExtracter.java @@ -17,6 +17,7 @@ package org.alfresco.repo.content.metadata; import java.io.IOException; +import java.io.InputStream; import java.io.Serializable; import java.util.Arrays; import java.util.HashSet; @@ -27,8 +28,6 @@ import org.alfresco.repo.content.MimetypeMap; import org.alfresco.service.cmr.repository.ContentIOException; import org.alfresco.service.cmr.repository.ContentReader; import org.alfresco.service.namespace.QName; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.apache.poi.hpsf.DocumentSummaryInformation; import org.apache.poi.hpsf.PropertySet; import org.apache.poi.hpsf.PropertySetFactory; @@ -43,8 +42,6 @@ import org.apache.poi.poifs.eventfilesystem.POIFSReaderListener; */ public class OfficeMetadataExtracter extends AbstractMetadataExtracter { - - private static final Log logger = LogFactory.getLog(OfficeMetadataExtracter.class); private static String[] mimeTypes = new String[] { MimetypeMap.MIMETYPE_WORD, MimetypeMap.MIMETYPE_EXCEL, MimetypeMap.MIMETYPE_PPT }; @@ -76,7 +73,7 @@ public class OfficeMetadataExtracter extends AbstractMetadataExtracter } else if (ps instanceof DocumentSummaryInformation) { - DocumentSummaryInformation dsi = (DocumentSummaryInformation) ps; +// DocumentSummaryInformation dsi = (DocumentSummaryInformation) ps; // These are not really interesting to any aspect: // trimPut(ContentModel.PROP_xxx, dsi.getCompany(), @@ -91,11 +88,13 @@ public class OfficeMetadataExtracter extends AbstractMetadataExtracter } } }; + InputStream is = null; try { - POIFSReader r = new POIFSReader(); - r.registerListener(readerListener, SummaryInformation.DEFAULT_STREAM_NAME); - r.read(reader.getContentInputStream()); + is = reader.getContentInputStream(); + POIFSReader poiFSReader = new POIFSReader(); + poiFSReader.registerListener(readerListener, SummaryInformation.DEFAULT_STREAM_NAME); + poiFSReader.read(is); } catch (IOException e) { @@ -103,5 +102,12 @@ public class OfficeMetadataExtracter extends AbstractMetadataExtracter + " reader: " + reader, e); } + finally + { + if (is != null) + { + try { is.close(); } catch (IOException e) {} + } + } } }