You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ju...@apache.org on 2011/01/19 13:53:03 UTC

svn commit: r1060797 - /tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/audio/AudioParser.java

Author: jukka
Date: Wed Jan 19 12:53:03 2011
New Revision: 1060797

URL: http://svn.apache.org/viewvc?rev=1060797&view=rev
Log:
TIKA-585: AudioParser Fails with NPE on fileFormat.properties

Fix based on suggestion by Cyriel Vringer

Modified:
    tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/audio/AudioParser.java

Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/audio/AudioParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/audio/AudioParser.java?rev=1060797&r1=1060796&r2=1060797&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/audio/AudioParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/audio/AudioParser.java Wed Jan 19 12:53:03 2011
@@ -22,6 +22,7 @@ import java.io.InputStream;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashSet;
+import java.util.Map;
 import java.util.Set;
 import java.util.Map.Entry;
 
@@ -108,12 +109,8 @@ public class AudioParser implements Pars
             // "date" Date date of the recording or release
             // "comment" String an arbitrary text
 
-            for (Entry<String, Object> entry : fileFormat.properties().entrySet()) {
-                metadata.set(entry.getKey(), entry.getValue().toString());
-            }
-            for (Entry<String, Object> entry : audioFormat.properties().entrySet()) {
-                metadata.set(entry.getKey(), entry.getValue().toString());
-            }
+            addMetadata(metadata, fileFormat.properties());
+            addMetadata(metadata, audioFormat.properties());
         } catch (UnsupportedAudioFileException e) {
             // There is no way to know whether this exception was
             // caused by the document being corrupted or by the format
@@ -125,6 +122,17 @@ public class AudioParser implements Pars
         xhtml.endDocument();
     }
 
+    private void addMetadata(Metadata metadata, Map<String, Object> properties) {
+        if (properties != null) {
+            for (Entry<String, Object> entry : properties.entrySet()) {
+                Object value = entry.getValue();
+                if (value != null) {
+                    metadata.set(entry.getKey(), value.toString());
+                }
+            }
+        }
+    }
+
     /**
      * @deprecated This method will be removed in Apache Tika 1.0.
      */