This is an automated email from the ASF dual-hosted git repository.

tallison pushed a commit to branch branch_1x
in repository https://gitbox.apache.org/repos/asf/tika.git

commit 5ecb3b925a6afa472b2ad44ab2b32ae253faa3fe
Author: tallison <[email protected]>
AuthorDate: Wed Jul 15 13:34:54 2020 -0400

    TIKA-3135 -- no need to spool the file for the metadata extractor's 
HeifParser
---
 .../src/main/java/org/apache/tika/parser/image/HeifParser.java    | 8 +-------
 .../java/org/apache/tika/parser/image/ImageMetadataExtractor.java | 8 +++-----
 2 files changed, 4 insertions(+), 12 deletions(-)

diff --git 
a/tika-parsers/src/main/java/org/apache/tika/parser/image/HeifParser.java 
b/tika-parsers/src/main/java/org/apache/tika/parser/image/HeifParser.java
index 9880d3c..8931c50 100644
--- a/tika-parsers/src/main/java/org/apache/tika/parser/image/HeifParser.java
+++ b/tika-parsers/src/main/java/org/apache/tika/parser/image/HeifParser.java
@@ -52,13 +52,7 @@ public class HeifParser extends AbstractParser {
 
     @Override
     public void parse(InputStream stream, ContentHandler handler, Metadata 
metadata, ParseContext context) throws IOException, SAXException, TikaException 
{
-        TemporaryResources tmp = new TemporaryResources();
-        try {
-            TikaInputStream tis = TikaInputStream.get(stream, tmp);
-            new ImageMetadataExtractor(metadata).parseHeif(tis.getFile());
-        } finally {
-            tmp.dispose();
-        }
+        new ImageMetadataExtractor(metadata).parseHeif(stream);
 
         XHTMLContentHandler xhtml = new XHTMLContentHandler(handler, metadata);
         xhtml.startDocument();
diff --git 
a/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
 
b/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
index 1a57ce2..9e1bec3 100644
--- 
a/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
+++ 
b/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
@@ -56,6 +56,7 @@ import com.drew.metadata.jpeg.JpegDirectory;
 import org.apache.jempbox.xmp.XMPMetadata;
 import org.apache.poi.util.IOUtils;
 import org.apache.tika.exception.TikaException;
+import org.apache.tika.io.TikaInputStream;
 import org.apache.tika.metadata.IPTC;
 import org.apache.tika.metadata.Metadata;
 import org.apache.tika.metadata.Property;
@@ -156,13 +157,10 @@ public class ImageMetadataExtractor {
         }
     }
 
-    public void parseHeif(File file) throws IOException, TikaException {
+    public void parseHeif(InputStream is) throws IOException, TikaException {
         try {
-            com.drew.metadata.Metadata heifMetadata = new 
com.drew.metadata.Metadata();
-            heifMetadata = HeifMetadataReader.readMetadata(new 
FileInputStream(file));
+            com.drew.metadata.Metadata heifMetadata = 
HeifMetadataReader.readMetadata(is);
             handle(heifMetadata);
-        } catch (IOException e) {
-            throw e;
         } catch (MetadataException e) {
             throw new TikaException("Can't process Heif data", e);
         }

Reply via email to