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); }
