You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by ni...@apache.org on 2012/05/17 22:05:23 UTC
svn commit: r1339833 [1/2] - in /tika/trunk/tika-parsers/src:
main/java/org/apache/tika/parser/asm/ main/java/org/apache/tika/parser/feed/
main/java/org/apache/tika/parser/font/ main/java/org/apache/tika/parser/html/
main/java/org/apache/tika/parser/im...
Author: nick
Date: Thu May 17 20:05:20 2012
New Revision: 1339833
URL: http://svn.apache.org/viewvc?rev=1339833&view=rev
Log:
TIKA-928 Epic patch from Ray Gauss - Update parsers and unit tests to use the new style TikaCoreProperties for setting (which supports aliasing for backwards compatibility), rather than old string based ones
Modified:
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/asm/XHTMLClassVisitor.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/feed/FeedParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/font/AdobeFontMetricParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/font/TrueTypeParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlHandler.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/MetadataFields.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/PSDParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/xmp/JempboxExtractor.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iptc/IptcAnpaParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/NumbersContentHandler.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/PagesContentHandler.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mail/MailContentHandler.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mbox/MboxParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/OutlookExtractor.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/SummaryExtractor.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/TNEFParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ooxml/MetadataExtractor.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mp3/Mp3Parser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mp4/MP4Parser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/pdf/PDFParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/prt/PRTParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/rtf/TextExtractor.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/xml/DcXMLParser.java
tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/xml/ElementMetadataHandler.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/TestParsers.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/ParsingReaderTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/asm/ClassParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/epub/EpubParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/feed/FeedParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/font/AdobeFontMetricParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/html/HtmlParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/ibooks/iBooksParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/ImageMetadataExtractorTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/MetadataFieldsTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/TiffParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/xmp/JempboxExtractorTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/iwork/IWorkParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/jpeg/JpegParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/mail/RFC822ParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/mbox/MboxParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/microsoft/ExcelParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/microsoft/OutlookParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/microsoft/PowerPointParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/microsoft/ProjectParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/microsoft/PublisherParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/microsoft/TNEFParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/microsoft/VisioParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/microsoft/WordParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/microsoft/ooxml/OOXMLParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/mp3/Mp3ParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/mp4/MP4ParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/netcdf/NetCDFParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/odf/ODFParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/prt/PRTParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/rtf/RTFParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/txt/TXTParserTest.java
tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/xml/DcXMLParserTest.java
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/asm/XHTMLClassVisitor.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/asm/XHTMLClassVisitor.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/asm/XHTMLClassVisitor.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/asm/XHTMLClassVisitor.java Thu May 17 20:05:20 2012
@@ -21,6 +21,7 @@ import java.io.InputStream;
import org.apache.tika.exception.TikaException;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.sax.XHTMLContentHandler;
import org.objectweb.asm.AnnotationVisitor;
import org.objectweb.asm.Attribute;
@@ -78,7 +79,7 @@ class XHTMLClassVisitor implements Class
className = className.substring(dot + 1);
}
- metadata.set(Metadata.TITLE, className);
+ metadata.set(TikaCoreProperties.TITLE, className);
metadata.set(Metadata.RESOURCE_NAME_KEY, className + ".class");
try {
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/feed/FeedParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/feed/FeedParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/feed/FeedParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/feed/FeedParser.java Thu May 17 20:05:20 2012
@@ -26,6 +26,7 @@ import java.util.Set;
import org.apache.tika.exception.TikaException;
import org.apache.tika.io.CloseShieldInputStream;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.AbstractParser;
import org.apache.tika.parser.ParseContext;
@@ -72,8 +73,8 @@ public class FeedParser extends Abstract
String title = stripTags(feed.getTitleEx());
String description = stripTags(feed.getDescriptionEx());
- metadata.set(Metadata.TITLE, title);
- metadata.set(Metadata.DESCRIPTION, description);
+ metadata.set(TikaCoreProperties.TITLE, title);
+ metadata.set(TikaCoreProperties.DESCRIPTION, description);
// store the other fields in the metadata
XHTMLContentHandler xhtml =
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/font/AdobeFontMetricParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/font/AdobeFontMetricParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/font/AdobeFontMetricParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/font/AdobeFontMetricParser.java Thu May 17 20:05:20 2012
@@ -27,6 +27,7 @@ import org.apache.fontbox.afm.FontMetric
import org.apache.tika.exception.TikaException;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.AbstractParser;
import org.apache.tika.parser.ParseContext;
@@ -67,7 +68,7 @@ public class AdobeFontMetricParser exten
extractCreationDate( metadata, comments );
metadata.set( Metadata.CONTENT_TYPE, AFM_TYPE.toString() );
- metadata.set( Metadata.TITLE, fontMetrics.getFullName() );
+ metadata.set( TikaCoreProperties.TITLE, fontMetrics.getFullName() );
// Add metadata associated with the font type
addMetadataByString( metadata, "AvgCharacterWidth", Float.toString( fontMetrics.getAverageCharacterWidth() ) );
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/font/TrueTypeParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/font/TrueTypeParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/font/TrueTypeParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/font/TrueTypeParser.java Thu May 17 20:05:20 2012
@@ -25,9 +25,8 @@ import org.apache.fontbox.ttf.TTFParser;
import org.apache.fontbox.ttf.TrueTypeFont;
import org.apache.tika.exception.TikaException;
import org.apache.tika.io.TikaInputStream;
-import org.apache.tika.metadata.DublinCore;
import org.apache.tika.metadata.Metadata;
-import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.AbstractParser;
import org.apache.tika.parser.ParseContext;
@@ -67,9 +66,9 @@ public class TrueTypeParser extends Abst
}
metadata.set(Metadata.CONTENT_TYPE, TYPE.toString());
- metadata.set(Metadata.DATE, font.getHeader().getCreated().getTime());
+ metadata.set(TikaCoreProperties.DATE, font.getHeader().getCreated().getTime());
metadata.set(
- Property.internalDate(Metadata.MODIFIED),
+ TikaCoreProperties.MODIFIED,
font.getHeader().getModified().getTime());
XHTMLContentHandler xhtml = new XHTMLContentHandler(handler, metadata);
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlHandler.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlHandler.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlHandler.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlHandler.java Thu May 17 20:05:20 2012
@@ -26,6 +26,7 @@ import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.mime.MediaType;
import org.apache.tika.sax.TextContentHandler;
import org.apache.tika.sax.XHTMLContentHandler;
@@ -233,7 +234,7 @@ class HtmlHandler extends TextContentHan
if (titleLevel > 0) {
titleLevel--;
if (titleLevel == 0) {
- metadata.set(Metadata.TITLE, title.toString().trim());
+ metadata.set(TikaCoreProperties.TITLE, title.toString().trim());
}
}
if (bodyLevel > 0) {
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/html/HtmlParser.java Thu May 17 20:05:20 2012
@@ -148,7 +148,7 @@ public class HtmlParser extends Abstract
String language = match.getLanguage();
if (language != null) {
metadata.set(Metadata.CONTENT_LANGUAGE, match.getLanguage());
- metadata.set(Metadata.LANGUAGE, match.getLanguage());
+ metadata.set(TikaCoreProperties.LANGUAGE, match.getLanguage());
}
*/
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/ImageMetadataExtractor.java Thu May 17 20:05:20 2012
@@ -33,6 +33,7 @@ import org.apache.tika.exception.TikaExc
import org.apache.tika.metadata.Geographic;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.xml.sax.SAXException;
import com.drew.imaging.jpeg.JpegProcessingException;
@@ -300,9 +301,9 @@ public class ImageMetadataExtractor {
* Use IPTC for other annotation fields, and XMP for unicode support.
*/
public void handleCommentTags(Directory directory, Metadata metadata) {
- if (metadata.get(Metadata.DESCRIPTION) == null &&
+ if (metadata.get(TikaCoreProperties.DESCRIPTION) == null &&
directory.containsTag(ExifDirectory.TAG_IMAGE_DESCRIPTION)) {
- metadata.set(Metadata.DESCRIPTION, directory.getString(ExifDirectory.TAG_IMAGE_DESCRIPTION));
+ metadata.set(TikaCoreProperties.DESCRIPTION, directory.getString(ExifDirectory.TAG_IMAGE_DESCRIPTION));
}
}
/**
@@ -415,7 +416,7 @@ public class ImageMetadataExtractor {
// Unless we have GPS time we don't know the time zone so date must be set
// as ISO 8601 datetime without timezone suffix (no Z or +/-)
String datetimeNoTimeZone = DATE_UNSPECIFIED_TZ.format(original); // Same time zone as Metadata Extractor uses
- metadata.set(Metadata.DATE, datetimeNoTimeZone);
+ metadata.set(TikaCoreProperties.DATE, datetimeNoTimeZone);
metadata.set(Metadata.ORIGINAL_DATE, datetimeNoTimeZone);
}
if (directory.containsTag(ExifDirectory.TAG_DATETIME)) {
@@ -424,7 +425,7 @@ public class ImageMetadataExtractor {
metadata.set(Metadata.LAST_MODIFIED, datetimeNoTimeZone);
// If Date/Time Original does not exist this might be creation date
if (original == null) {
- metadata.set(Metadata.DATE, datetimeNoTimeZone);
+ metadata.set(TikaCoreProperties.DATE, datetimeNoTimeZone);
}
}
}
@@ -447,15 +448,15 @@ public class ImageMetadataExtractor {
}
}
if (directory.containsTag(IptcDirectory.TAG_HEADLINE)) {
- metadata.set(Metadata.TITLE, directory.getString(IptcDirectory.TAG_HEADLINE));
+ metadata.set(TikaCoreProperties.TITLE, directory.getString(IptcDirectory.TAG_HEADLINE));
} else if (directory.containsTag(IptcDirectory.TAG_OBJECT_NAME)) {
- metadata.set(Metadata.TITLE, directory.getString(IptcDirectory.TAG_OBJECT_NAME));
+ metadata.set(TikaCoreProperties.TITLE, directory.getString(IptcDirectory.TAG_OBJECT_NAME));
}
if (directory.containsTag(IptcDirectory.TAG_BY_LINE)) {
metadata.set(Metadata.AUTHOR, directory.getString(IptcDirectory.TAG_BY_LINE));
}
if (directory.containsTag(IptcDirectory.TAG_CAPTION)) {
- metadata.set(Metadata.DESCRIPTION,
+ metadata.set(TikaCoreProperties.DESCRIPTION,
// Looks like metadata extractor returns IPTC newlines as a single carriage return,
// but the exiv2 command does not so we change to line feed here because that is less surprising to users
directory.getString(IptcDirectory.TAG_CAPTION).replaceAll("\r\n?", "\n"));
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/MetadataFields.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/MetadataFields.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/MetadataFields.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/MetadataFields.java Thu May 17 20:05:20 2012
@@ -22,6 +22,7 @@ import java.util.HashSet;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
/**
* Knowns about all declared {@link Metadata} fields.
@@ -32,9 +33,8 @@ public abstract class MetadataFields {
private static HashSet<String> known;
- static {
- known = new HashSet<String>();
- Field[] fields = Metadata.class.getFields();
+ private static void setKnownForClass(Class<?> clazz) {
+ Field[] fields = clazz.getFields();
for (Field f : fields) {
int mod = f.getModifiers();
if (Modifier.isPublic(mod) && Modifier.isStatic(mod) && Modifier.isFinal(mod)) {
@@ -67,8 +67,18 @@ public abstract class MetadataFields {
}
}
+ static {
+ known = new HashSet<String>();
+ setKnownForClass(TikaCoreProperties.class);
+ setKnownForClass(Metadata.class);
+ }
+
public static boolean isMetadataField(String name) {
return known.contains(name);
}
+ public static boolean isMetadataField(Property property) {
+ return known.contains(property.getName());
+ }
+
}
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/PSDParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/PSDParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/PSDParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/PSDParser.java Thu May 17 20:05:20 2012
@@ -29,6 +29,7 @@ import org.apache.tika.exception.TikaExc
import org.apache.tika.io.EndianUtils;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.metadata.TIFF;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.AbstractParser;
import org.apache.tika.parser.ParseContext;
@@ -114,7 +115,7 @@ public class PSDParser extends AbstractP
// Is it one we can do something useful with?
if(rb.id == ResourceBlock.ID_CAPTION) {
- metadata.add(Metadata.DESCRIPTION, rb.getDataAsString());
+ metadata.add(TikaCoreProperties.DESCRIPTION, rb.getDataAsString());
} else if(rb.id == ResourceBlock.ID_EXIF_1) {
// TODO Parse the EXIF info
} else if(rb.id == ResourceBlock.ID_EXIF_3) {
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/xmp/JempboxExtractor.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/xmp/JempboxExtractor.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/xmp/JempboxExtractor.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/image/xmp/JempboxExtractor.java Thu May 17 20:05:20 2012
@@ -28,8 +28,8 @@ import java.util.List;
import org.apache.jempbox.xmp.XMPMetadata;
import org.apache.jempbox.xmp.XMPSchemaDublinCore;
import org.apache.tika.exception.TikaException;
-import org.apache.tika.metadata.DublinCore;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.xml.sax.InputSource;
public class JempboxExtractor {
@@ -59,18 +59,18 @@ public class JempboxExtractor {
XMPSchemaDublinCore dc = xmp.getDublinCoreSchema();
if (dc != null) {
if (dc.getTitle() != null) {
- metadata.set(Metadata.TITLE, dc.getTitle());
+ metadata.set(TikaCoreProperties.TITLE, dc.getTitle());
}
if (dc.getDescription() != null) {
- metadata.set(Metadata.DESCRIPTION, dc.getDescription());
+ metadata.set(TikaCoreProperties.DESCRIPTION, dc.getDescription());
}
if (dc.getCreators() != null && dc.getCreators().size() > 0) {
- metadata.set(Metadata.CREATOR, joinCreators(dc.getCreators()));
+ metadata.set(TikaCoreProperties.CREATOR, joinCreators(dc.getCreators()));
}
if (dc.getSubjects() != null && dc.getSubjects().size() > 0) {
Iterator<String> keywords = dc.getSubjects().iterator();
while (keywords.hasNext()) {
- metadata.add(Metadata.SUBJECT, keywords.next());
+ metadata.add(TikaCoreProperties.SUBJECT, keywords.next());
}
// TODO should we set KEYWORDS too?
// All tested photo managers set the same in Iptc.Application2.Keywords and Xmp.dc.subject
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iptc/IptcAnpaParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iptc/IptcAnpaParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iptc/IptcAnpaParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iptc/IptcAnpaParser.java Thu May 17 20:05:20 2012
@@ -18,8 +18,6 @@ package org.apache.tika.parser.iptc;
import java.io.IOException;
import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
-import java.nio.charset.Charset;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Collections;
@@ -29,8 +27,8 @@ import java.util.Set;
import java.util.TimeZone;
import org.apache.tika.exception.TikaException;
-import org.apache.tika.metadata.DublinCore;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.parser.Parser;
@@ -772,19 +770,19 @@ public class IptcAnpaParser implements P
// every property that gets set must be non-null, or it will cause NPE
// in other consuming applications, like Lucene
metadata.set(Metadata.CONTENT_TYPE, clean("text/anpa-1312"));
- metadata.set(Metadata.TITLE, clean(properties.get("title")));
- metadata.set(Metadata.SUBJECT, clean(properties.get("subject")));
+ metadata.set(TikaCoreProperties.TITLE, clean(properties.get("title")));
+ metadata.set(TikaCoreProperties.SUBJECT, clean(properties.get("subject")));
metadata.set(Metadata.AUTHOR, clean(properties.get("author")));
metadata.set(Metadata.CREATION_DATE, clean(properties.get("created")));
- metadata.set(Metadata.MODIFIED, clean(properties.get("modified")));
- metadata.set(Metadata.SOURCE, clean(properties.get("source")));
-// metadata.set(Metadata.PUBLISHER, clean(properties.get("publisher")));
- metadata.set(Metadata.PUBLISHER, clean(this.getFormatName()));
+ metadata.set(TikaCoreProperties.MODIFIED, clean(properties.get("modified")));
+ metadata.set(TikaCoreProperties.SOURCE, clean(properties.get("source")));
+// metadata.set(TikaCoreProperties.PUBLISHER, clean(properties.get("publisher")));
+ metadata.set(TikaCoreProperties.PUBLISHER, clean(this.getFormatName()));
/*
- metadata.set(Metadata.DATE, font.getHeader().getCreated().getTime());
+ metadata.set(TikaCoreProperties.DATE, font.getHeader().getCreated().getTime());
metadata.set(
- Property.internalDate(Metadata.MODIFIED),
+ Property.internalDate(TikaCoreProperties.MODIFIED),
font.getHeader().getModified().getTime());
*/
}
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/KeynoteContentHandler.java Thu May 17 20:05:20 2012
@@ -17,6 +17,7 @@
package org.apache.tika.parser.iwork;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.sax.XHTMLContentHandler;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
@@ -90,7 +91,7 @@ class KeynoteContentHandler extends Defa
} else if (inMetadata && "key:authors".equals(qName)) {
inMetaDataAuthors = true;
} else if (inMetaDataTitle && "key:string".equals(qName)) {
- metadata.set(Metadata.TITLE, attributes.getValue("sfa:string"));
+ metadata.set(TikaCoreProperties.TITLE, attributes.getValue("sfa:string"));
} else if (inMetaDataAuthors && "key:string".equals(qName)) {
metadata.add(Metadata.AUTHOR, attributes.getValue("sfa:string"));
} else if (inSlide && "sf:tabular-model".equals(qName)) {
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/NumbersContentHandler.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/NumbersContentHandler.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/NumbersContentHandler.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/NumbersContentHandler.java Thu May 17 20:05:20 2012
@@ -17,6 +17,8 @@
package org.apache.tika.parser.iwork;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.sax.XHTMLContentHandler;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
@@ -36,7 +38,7 @@ class NumbersContentHandler extends Defa
private boolean parseText = false;
private boolean inMetadata = false;
- private String metadataKey;
+ private Property metadataKey;
private String metadataPropertyQName;
private boolean inTable = false;
@@ -202,11 +204,13 @@ class NumbersContentHandler extends Defa
}
}
- private String resolveMetadataKey(String localName) {
+ private Property resolveMetadataKey(String localName) {
if ("authors".equals(localName)) {
- return Metadata.AUTHOR;
+ return Property.internalText(Metadata.AUTHOR);
}
-
- return localName;
+ if ("title".equals(localName)) {
+ return TikaCoreProperties.TITLE;
+ }
+ return Property.internalText(localName);
}
}
\ No newline at end of file
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/PagesContentHandler.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/PagesContentHandler.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/PagesContentHandler.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/iwork/PagesContentHandler.java Thu May 17 20:05:20 2012
@@ -18,6 +18,7 @@ package org.apache.tika.parser.iwork;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.sax.XHTMLContentHandler;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
@@ -252,13 +253,13 @@ class PagesContentHandler extends Defaul
if ("sf:authors".equals(metaDataQName)) {
metaDataKey = Metadata.AUTHOR;
} else if ("sf:title".equals(metaDataQName)) {
- metaDataKey = Metadata.TITLE;
+ metaDataKey = TikaCoreProperties.TITLE;
} else if ("sl:SLCreationDateProperty".equals(metaDataQName)) {
metaDataKey = Metadata.CREATION_DATE;
} else if ("sl:SLLastModifiedDateProperty".equals(metaDataQName)) {
metaDataKey = Metadata.LAST_MODIFIED;
} else if ("sl:language".equals(metaDataQName)) {
- metaDataKey = Metadata.LANGUAGE;
+ metaDataKey = TikaCoreProperties.LANGUAGE;
}
return metaDataKey;
}
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mail/MailContentHandler.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mail/MailContentHandler.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mail/MailContentHandler.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mail/MailContentHandler.java Thu May 17 20:05:20 2012
@@ -24,7 +24,6 @@ import org.apache.james.mime4j.codec.Dec
import org.apache.james.mime4j.codec.DecoderUtil;
import org.apache.james.mime4j.dom.address.Address;
import org.apache.james.mime4j.dom.address.AddressList;
-import org.apache.james.mime4j.dom.address.Group;
import org.apache.james.mime4j.dom.address.Mailbox;
import org.apache.james.mime4j.dom.address.MailboxList;
import org.apache.james.mime4j.dom.field.AddressListField;
@@ -38,6 +37,7 @@ import org.apache.james.mime4j.stream.Bo
import org.apache.james.mime4j.stream.Field;
import org.apache.tika.exception.TikaException;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.parser.AutoDetectParser;
import org.apache.tika.sax.BodyContentHandler;
import org.apache.tika.sax.EmbeddedContentHandler;
@@ -161,7 +161,7 @@ class MailContentHandler implements Cont
metadata.add(Metadata.AUTHOR, from);
}
} else if (fieldname.equalsIgnoreCase("Subject")) {
- metadata.add(Metadata.SUBJECT,
+ metadata.add(TikaCoreProperties.SUBJECT,
((UnstructuredField) parsedField).getValue());
} else if (fieldname.equalsIgnoreCase("To")) {
processAddressList(parsedField, "To:", Metadata.MESSAGE_TO);
@@ -171,7 +171,7 @@ class MailContentHandler implements Cont
processAddressList(parsedField, "Bcc:", Metadata.MESSAGE_BCC);
} else if (fieldname.equalsIgnoreCase("Date")) {
DateTimeField dateField = (DateTimeField) parsedField;
- metadata.set(Metadata.DATE, dateField.getDate());
+ metadata.set(TikaCoreProperties.DATE, dateField.getDate());
metadata.set(Metadata.CREATION_DATE, dateField.getDate());
}
} catch (RuntimeException me) {
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mbox/MboxParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mbox/MboxParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mbox/MboxParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mbox/MboxParser.java Thu May 17 20:05:20 2012
@@ -32,6 +32,7 @@ import java.util.regex.Pattern;
import org.apache.tika.exception.TikaException;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.AbstractParser;
import org.apache.tika.parser.ParseContext;
@@ -198,7 +199,7 @@ public class MboxParser extends Abstract
if (headerTag.equalsIgnoreCase("From")) {
metadata.add(Metadata.AUTHOR, headerContent);
- metadata.add(Metadata.CREATOR, headerContent);
+ metadata.set(TikaCoreProperties.CREATOR, headerContent);
} else if (headerTag.equalsIgnoreCase("To") ||
headerTag.equalsIgnoreCase("Cc") ||
headerTag.equalsIgnoreCase("Bcc")) {
@@ -217,26 +218,26 @@ public class MboxParser extends Abstract
}
metadata.add(property, headerContent);
} else if (headerTag.equalsIgnoreCase("Subject")) {
- metadata.add(Metadata.SUBJECT, headerContent);
- metadata.add(Metadata.TITLE, headerContent);
+ metadata.add(TikaCoreProperties.SUBJECT, headerContent);
+ metadata.set(TikaCoreProperties.TITLE, headerContent);
} else if (headerTag.equalsIgnoreCase("Date")) {
try {
Date date = parseDate(headerContent);
- metadata.set(Metadata.DATE, date);
+ metadata.set(TikaCoreProperties.DATE, date);
metadata.set(Metadata.CREATION_DATE, date);
} catch (ParseException e) {
// ignoring date because format was not understood
}
} else if (headerTag.equalsIgnoreCase("Message-Id")) {
- metadata.add(Metadata.IDENTIFIER, headerContent);
+ metadata.set(TikaCoreProperties.IDENTIFIER, headerContent);
} else if (headerTag.equalsIgnoreCase("In-Reply-To")) {
- metadata.add(Metadata.RELATION, headerContent);
+ metadata.set(TikaCoreProperties.RELATION, headerContent);
} else if (headerTag.equalsIgnoreCase("Content-Type")) {
// TODO - key off content-type in headers to
// set mapping to use for content and convert if necessary.
metadata.add(Metadata.CONTENT_TYPE, headerContent);
- metadata.add(Metadata.FORMAT, headerContent);
+ metadata.set(TikaCoreProperties.FORMAT, headerContent);
} else {
metadata.add(EMAIL_HEADER_METADATA_PREFIX + headerTag, headerContent);
}
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/OutlookExtractor.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/OutlookExtractor.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/OutlookExtractor.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/OutlookExtractor.java Thu May 17 20:05:20 2012
@@ -35,6 +35,7 @@ import org.apache.poi.poifs.filesystem.N
import org.apache.tika.exception.TikaException;
import org.apache.tika.io.TikaInputStream;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.parser.html.HtmlParser;
import org.apache.tika.parser.mbox.MboxParser;
@@ -102,8 +103,8 @@ public class OutlookExtractor extends Ab
metadata.set(Metadata.MESSAGE_CC, msg.getDisplayCC());
metadata.set(Metadata.MESSAGE_BCC, msg.getDisplayBCC());
- metadata.set(Metadata.TITLE, subject);
- metadata.set(Metadata.SUBJECT, msg.getConversationTopic());
+ metadata.set(TikaCoreProperties.TITLE, subject);
+ metadata.set(TikaCoreProperties.SUBJECT, msg.getConversationTopic());
try {
for(String recipientAddress : msg.getRecipientEmailAddressList()) {
@@ -115,7 +116,7 @@ public class OutlookExtractor extends Ab
// Date - try two ways to find it
// First try via the proper chunk
if(msg.getMessageDate() != null) {
- metadata.set(Metadata.DATE, msg.getMessageDate().getTime());
+ metadata.set(TikaCoreProperties.DATE, msg.getMessageDate().getTime());
metadata.set(Metadata.CREATION_DATE, msg.getMessageDate().getTime());
metadata.set(Metadata.LAST_SAVED, msg.getMessageDate().getTime());
} else {
@@ -130,12 +131,12 @@ public class OutlookExtractor extends Ab
// See if we can parse it as a normal mail date
try {
Date d = MboxParser.parseDate(date);
- metadata.set(Metadata.DATE, d);
+ metadata.set(TikaCoreProperties.DATE, d);
metadata.set(Metadata.CREATION_DATE, d);
metadata.set(Metadata.LAST_SAVED, d);
} catch(ParseException e) {
// Store it as-is, and hope for the best...
- metadata.set(Metadata.DATE, date);
+ metadata.set(TikaCoreProperties.DATE, date);
metadata.set(Metadata.CREATION_DATE, date);
metadata.set(Metadata.LAST_SAVED, date);
}
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/SummaryExtractor.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/SummaryExtractor.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/SummaryExtractor.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/SummaryExtractor.java Thu May 17 20:05:20 2012
@@ -35,6 +35,7 @@ import org.apache.tika.exception.TikaExc
import org.apache.tika.metadata.Metadata;
import org.apache.tika.metadata.PagedText;
import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
/**
* Outlook Message Parser.
@@ -90,10 +91,10 @@ class SummaryExtractor {
}
private void parse(SummaryInformation summary) {
- set(Metadata.TITLE, summary.getTitle());
+ set(TikaCoreProperties.TITLE, summary.getTitle());
set(Metadata.AUTHOR, summary.getAuthor());
set(Metadata.KEYWORDS, summary.getKeywords());
- set(Metadata.SUBJECT, summary.getSubject());
+ set(TikaCoreProperties.SUBJECT, summary.getSubject());
set(Metadata.LAST_AUTHOR, summary.getLastAuthor());
set(Metadata.COMMENTS, summary.getComments());
set(Metadata.TEMPLATE, summary.getTemplate());
@@ -115,7 +116,7 @@ class SummaryExtractor {
private void parse(DocumentSummaryInformation summary) {
set(Metadata.COMPANY, summary.getCompany());
set(Metadata.MANAGER, summary.getManager());
- set(Metadata.LANGUAGE, getLanguage(summary));
+ set(TikaCoreProperties.LANGUAGE, getLanguage(summary));
set(Metadata.CATEGORY, summary.getCategory());
set(Metadata.SLIDE_COUNT, summary.getSlideCount());
if (summary.getSlideCount() > 0) {
@@ -175,6 +176,12 @@ class SummaryExtractor {
metadata.set(name, value);
}
}
+
+ private void set(Property property, String value) {
+ if (value != null) {
+ metadata.set(property, value);
+ }
+ }
private void set(Property property, Date value) {
if (value != null) {
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/TNEFParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/TNEFParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/TNEFParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/TNEFParser.java Thu May 17 20:05:20 2012
@@ -33,6 +33,7 @@ import org.apache.tika.extractor.Embedde
import org.apache.tika.extractor.ParsingEmbeddedDocumentExtractor;
import org.apache.tika.io.TikaInputStream;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.AbstractParser;
import org.apache.tika.parser.ParseContext;
@@ -81,7 +82,7 @@ public class TNEFParser extends Abstract
// Set the message subject if known
String subject = msg.getSubject();
if(subject != null && subject.length() > 0) {
- metadata.set(Metadata.SUBJECT, subject);
+ metadata.set(TikaCoreProperties.SUBJECT, subject);
}
// Recurse into the message body RTF
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ooxml/MetadataExtractor.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ooxml/MetadataExtractor.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ooxml/MetadataExtractor.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/microsoft/ooxml/MetadataExtractor.java Thu May 17 20:05:20 2012
@@ -30,6 +30,7 @@ import org.apache.tika.exception.TikaExc
import org.apache.tika.metadata.Metadata;
import org.apache.tika.metadata.PagedText;
import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.openxmlformats.schemas.officeDocument.x2006.customProperties.CTProperty;
import org.openxmlformats.schemas.officeDocument.x2006.extendedProperties.CTProperties;
@@ -65,21 +66,21 @@ public class MetadataExtractor {
addProperty(metadata, Metadata.CATEGORY, propsHolder.getCategoryProperty());
addProperty(metadata, Metadata.CONTENT_STATUS, propsHolder
.getContentStatusProperty());
- addProperty(metadata, Metadata.DATE, propsHolder
+ addProperty(metadata, TikaCoreProperties.DATE, propsHolder
.getCreatedProperty());
addProperty(metadata, Metadata.CREATION_DATE, propsHolder
.getCreatedProperty());
- addProperty(metadata, Metadata.CREATOR, propsHolder
+ addProperty(metadata, TikaCoreProperties.CREATOR, propsHolder
.getCreatorProperty());
addProperty(metadata, Metadata.AUTHOR, propsHolder
.getCreatorProperty());
- addProperty(metadata, Metadata.DESCRIPTION, propsHolder
+ addProperty(metadata, TikaCoreProperties.DESCRIPTION, propsHolder
.getDescriptionProperty());
- addProperty(metadata, Metadata.IDENTIFIER, propsHolder
+ addProperty(metadata, TikaCoreProperties.IDENTIFIER, propsHolder
.getIdentifierProperty());
addProperty(metadata, Metadata.KEYWORDS, propsHolder
.getKeywordsProperty());
- addProperty(metadata, Metadata.LANGUAGE, propsHolder
+ addProperty(metadata, TikaCoreProperties.LANGUAGE, propsHolder
.getLanguageProperty());
addProperty(metadata, Metadata.LAST_AUTHOR, propsHolder
.getLastModifiedByProperty());
@@ -89,9 +90,9 @@ public class MetadataExtractor {
.getModifiedProperty());
addProperty(metadata, Metadata.REVISION_NUMBER, propsHolder
.getRevisionProperty());
- addProperty(metadata, Metadata.SUBJECT, propsHolder
+ addProperty(metadata, TikaCoreProperties.SUBJECT, propsHolder
.getSubjectProperty());
- addProperty(metadata, Metadata.TITLE, propsHolder.getTitleProperty());
+ addProperty(metadata, TikaCoreProperties.TITLE, propsHolder.getTitleProperty());
addProperty(metadata, Metadata.VERSION, propsHolder.getVersionProperty());
}
@@ -107,7 +108,7 @@ public class MetadataExtractor {
.getCharacters());
addProperty(metadata, Metadata.CHARACTER_COUNT_WITH_SPACES, propsHolder
.getCharactersWithSpaces());
- addProperty(metadata, Metadata.PUBLISHER, propsHolder.getCompany());
+ addProperty(metadata, TikaCoreProperties.PUBLISHER, propsHolder.getCompany());
addProperty(metadata, Metadata.LINE_COUNT, propsHolder.getLines());
addProperty(metadata, Metadata.MANAGER, propsHolder.getManager());
addProperty(metadata, Metadata.NOTES, propsHolder.getNotes());
@@ -234,9 +235,18 @@ public class MetadataExtractor {
}
}
- private void addProperty(Metadata metadata, Property property, Nullable<Date> value) {
- if (value.getValue() != null) {
- metadata.set(property, value.getValue());
+ private <T> void addProperty(Metadata metadata, Property property, Nullable<T> nullableValue) {
+ T value = nullableValue.getValue();
+ if (value != null) {
+ if (value instanceof Date) {
+ metadata.set(property, (Date) value);
+ } else if (value instanceof String) {
+ metadata.set(property, (String) value);
+ } else if (value instanceof Integer) {
+ metadata.set(property, (Integer) value);
+ } else if (value instanceof Double) {
+ metadata.set(property, (Double) value);
+ }
}
}
@@ -245,6 +255,12 @@ public class MetadataExtractor {
addProperty(metadata, name, value.getValue().toString());
}
}
+
+ private void addProperty(Metadata metadata, Property property, String value) {
+ if (value != null) {
+ metadata.set(property, value);
+ }
+ }
private void addProperty(Metadata metadata, String name, String value) {
if (value != null) {
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mp3/Mp3Parser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mp3/Mp3Parser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mp3/Mp3Parser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mp3/Mp3Parser.java Thu May 17 20:05:20 2012
@@ -25,6 +25,7 @@ import java.util.Set;
import org.apache.tika.exception.TikaException;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.metadata.XMPDM;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.AbstractParser;
@@ -71,7 +72,7 @@ public class Mp3Parser extends AbstractP
if (audioAndTags.tags.length > 0) {
CompositeTagHandler tag = new CompositeTagHandler(audioAndTags.tags);
- metadata.set(Metadata.TITLE, tag.getTitle());
+ metadata.set(TikaCoreProperties.TITLE, tag.getTitle());
metadata.set(Metadata.AUTHOR, tag.getArtist());
metadata.set(XMPDM.ARTIST, tag.getArtist());
metadata.set(XMPDM.COMPOSER, tag.getComposer());
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mp4/MP4Parser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mp4/MP4Parser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mp4/MP4Parser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/mp4/MP4Parser.java Thu May 17 20:05:20 2012
@@ -30,6 +30,7 @@ import org.apache.tika.exception.TikaExc
import org.apache.tika.io.TikaInputStream;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.metadata.XMPDM;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.AbstractParser;
@@ -162,7 +163,7 @@ public class MP4Parser extends AbstractP
MP4TimeToDate(mHeader.getCreationTime())
);
metadata.set(
- Property.externalDate(Metadata.MODIFIED), // TODO Should be a real property
+ TikaCoreProperties.MODIFIED,
MP4TimeToDate(mHeader.getModificationTime())
);
@@ -188,7 +189,7 @@ public class MP4Parser extends AbstractP
MP4TimeToDate(header.getCreationTime())
);
metadata.set(
- Property.externalDate(Metadata.MODIFIED), // TODO Should be a real property
+ TikaCoreProperties.MODIFIED,
MP4TimeToDate(header.getModificationTime())
);
@@ -224,7 +225,7 @@ public class MP4Parser extends AbstractP
if (apple != null) {
// Title
AppleTrackTitleBox title = getOrNull(apple, AppleTrackTitleBox.class);
- addMetadata(Metadata.TITLE, metadata, title);
+ addMetadata(TikaCoreProperties.TITLE, metadata, title);
// Artist
AppleArtistBox artist = getOrNull(apple, AppleArtistBox.class);
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/netcdf/NetCDFParser.java Thu May 17 20:05:20 2012
@@ -26,6 +26,8 @@ import java.util.Set;
import org.apache.tika.exception.TikaException;
import org.apache.tika.io.IOUtils;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.AbstractParser;
import org.apache.tika.parser.ParseContext;
@@ -86,12 +88,12 @@ public class NetCDFParser extends Abstra
// first parse out the set of global attributes
for (Attribute attr : ncFile.getGlobalAttributes()) {
- String attrName = attr.getName();
+ Property property = resolveMetadataKey(attr.getName());
if (attr.getDataType().isString()) {
- metadata.add(attrName, attr.getStringValue());
+ metadata.add(property, attr.getStringValue());
} else if (attr.getDataType().isNumeric()) {
int value = attr.getNumericValue().intValue();
- metadata.add(attrName, String.valueOf(value));
+ metadata.add(property, String.valueOf(value));
}
}
} catch (IOException e) {
@@ -102,5 +104,12 @@ public class NetCDFParser extends Abstra
xhtml.startDocument();
xhtml.endDocument();
}
+
+ private Property resolveMetadataKey(String localName) {
+ if ("title".equals(localName)) {
+ return TikaCoreProperties.TITLE;
+ }
+ return Property.internalText(localName);
+ }
}
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/pdf/PDFParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/pdf/PDFParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/pdf/PDFParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/pdf/PDFParser.java Thu May 17 20:05:20 2012
@@ -39,6 +39,7 @@ import org.apache.tika.io.TikaInputStrea
import org.apache.tika.metadata.Metadata;
import org.apache.tika.metadata.PagedText;
import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.AbstractParser;
import org.apache.tika.parser.ParseContext;
@@ -152,12 +153,12 @@ public class PDFParser extends AbstractP
throws TikaException {
PDDocumentInformation info = document.getDocumentInformation();
metadata.set(PagedText.N_PAGES, document.getNumberOfPages());
- addMetadata(metadata, Metadata.TITLE, info.getTitle());
+ addMetadata(metadata, TikaCoreProperties.TITLE, info.getTitle());
addMetadata(metadata, Metadata.AUTHOR, info.getAuthor());
- addMetadata(metadata, Metadata.CREATOR, info.getCreator());
+ addMetadata(metadata, TikaCoreProperties.CREATOR, info.getCreator());
addMetadata(metadata, Metadata.KEYWORDS, info.getKeywords());
addMetadata(metadata, "producer", info.getProducer());
- addMetadata(metadata, Metadata.SUBJECT, info.getSubject());
+ addMetadata(metadata, TikaCoreProperties.SUBJECT, info.getSubject());
addMetadata(metadata, "trapped", info.getTrapped());
try {
addMetadata(metadata, "created", info.getCreationDate());
@@ -186,6 +187,12 @@ public class PDFParser extends AbstractP
}
}
+ private void addMetadata(Metadata metadata, Property property, String value) {
+ if (value != null) {
+ metadata.add(property, value);
+ }
+ }
+
private void addMetadata(Metadata metadata, String name, String value) {
if (value != null) {
metadata.add(name, value);
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/prt/PRTParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/prt/PRTParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/prt/PRTParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/prt/PRTParser.java Thu May 17 20:05:20 2012
@@ -26,6 +26,7 @@ import org.apache.poi.util.IOUtils;
import org.apache.tika.exception.TikaException;
import org.apache.tika.io.EndianUtils;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.mime.MediaType;
import org.apache.tika.parser.AbstractParser;
import org.apache.tika.parser.ParseContext;
@@ -85,7 +86,7 @@ public class PRTParser extends AbstractP
"-" + dateStr.substring(6,8) + "T" + dateStr.substring(8,10) + ":" +
dateStr.substring(10, 12) + ":00";
metadata.set(Metadata.CREATION_DATE, formattedDate);
- metadata.set(Metadata.DATE, formattedDate);
+ metadata.set(TikaCoreProperties.DATE, formattedDate);
}
metadata.set(Metadata.CONTENT_TYPE, PRT_MIME_TYPE);
@@ -94,7 +95,7 @@ public class PRTParser extends AbstractP
IOUtils.readFully(stream, desc);
String description = extractText(desc, true);
if(description.length() > 0) {
- metadata.set(Metadata.DESCRIPTION, description);
+ metadata.set(TikaCoreProperties.DESCRIPTION, description);
}
// Now look for text
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/rtf/TextExtractor.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/rtf/TextExtractor.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/rtf/TextExtractor.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/rtf/TextExtractor.java Thu May 17 20:05:20 2012
@@ -32,6 +32,7 @@ import java.util.Map;
import org.apache.tika.exception.TikaException;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.sax.XHTMLContentHandler;
import org.apache.tika.utils.CharsetUtils;
import org.xml.sax.SAXException;
@@ -827,9 +828,9 @@ final class TextExtractor {
if (equals("author")) {
nextMetaData = Metadata.AUTHOR;
} else if (equals("title")) {
- nextMetaData = Metadata.TITLE;
+ nextMetaData = TikaCoreProperties.TITLE.getName();
} else if (equals("subject")) {
- nextMetaData = Metadata.SUBJECT;
+ nextMetaData = TikaCoreProperties.SUBJECT.getName();
} else if (equals("keywords")) {
nextMetaData = Metadata.KEYWORDS;
} else if (equals("category")) {
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/xml/DcXMLParser.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/xml/DcXMLParser.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/xml/DcXMLParser.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/xml/DcXMLParser.java Thu May 17 20:05:20 2012
@@ -16,8 +16,9 @@
*/
package org.apache.tika.parser.xml;
-import org.apache.tika.metadata.DublinCore;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.Property;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.sax.TeeContentHandler;
import org.xml.sax.ContentHandler;
@@ -31,28 +32,28 @@ public class DcXMLParser extends XMLPars
private static final long serialVersionUID = 4905318835463880819L;
private static ContentHandler getDublinCoreHandler(
- Metadata metadata, String name, String element) {
+ Metadata metadata, Property property, String element) {
return new ElementMetadataHandler(
"http://purl.org/dc/elements/1.1/", element,
- metadata, name);
+ metadata, property);
}
protected ContentHandler getContentHandler(
ContentHandler handler, Metadata metadata, ParseContext context) {
return new TeeContentHandler(
super.getContentHandler(handler, metadata, context),
- getDublinCoreHandler(metadata, Metadata.TITLE, "title"),
- getDublinCoreHandler(metadata, Metadata.SUBJECT, "subject"),
- getDublinCoreHandler(metadata, Metadata.CREATOR, "creator"),
- getDublinCoreHandler(metadata, Metadata.DESCRIPTION, "description"),
- getDublinCoreHandler(metadata, Metadata.PUBLISHER, "publisher"),
- getDublinCoreHandler(metadata, Metadata.CONTRIBUTOR, "contributor"),
- getDublinCoreHandler(metadata, Metadata.DATE.getName(), "date"),
- getDublinCoreHandler(metadata, Metadata.TYPE, "type"),
- getDublinCoreHandler(metadata, Metadata.FORMAT, "format"),
- getDublinCoreHandler(metadata, Metadata.IDENTIFIER, "identifier"),
- getDublinCoreHandler(metadata, Metadata.LANGUAGE, "language"),
- getDublinCoreHandler(metadata, Metadata.RIGHTS, "rights"));
+ getDublinCoreHandler(metadata, TikaCoreProperties.TITLE, "title"),
+ getDublinCoreHandler(metadata, TikaCoreProperties.SUBJECT, "subject"),
+ getDublinCoreHandler(metadata, TikaCoreProperties.CREATOR, "creator"),
+ getDublinCoreHandler(metadata, TikaCoreProperties.DESCRIPTION, "description"),
+ getDublinCoreHandler(metadata, TikaCoreProperties.PUBLISHER, "publisher"),
+ getDublinCoreHandler(metadata, TikaCoreProperties.CONTRIBUTOR, "contributor"),
+ getDublinCoreHandler(metadata, TikaCoreProperties.DATE, "date"),
+ getDublinCoreHandler(metadata, TikaCoreProperties.TYPE, "type"),
+ getDublinCoreHandler(metadata, TikaCoreProperties.FORMAT, "format"),
+ getDublinCoreHandler(metadata, TikaCoreProperties.IDENTIFIER, "identifier"),
+ getDublinCoreHandler(metadata, TikaCoreProperties.LANGUAGE, "language"),
+ getDublinCoreHandler(metadata, TikaCoreProperties.RIGHTS, "rights"));
}
}
Modified: tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/xml/ElementMetadataHandler.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/xml/ElementMetadataHandler.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/xml/ElementMetadataHandler.java (original)
+++ tika/trunk/tika-parsers/src/main/java/org/apache/tika/parser/xml/ElementMetadataHandler.java Thu May 17 20:05:20 2012
@@ -82,7 +82,7 @@ public class ElementMetadataHandler exte
public ElementMetadataHandler(
String uri, String localName, Metadata metadata, Property targetProperty) {
- super(metadata, targetProperty.getName());
+ super(metadata, targetProperty);
this.uri = uri;
this.localName = localName;
this.metadata = metadata;
@@ -164,12 +164,11 @@ public class ElementMetadataHandler exte
if (logger.isTraceEnabled()) {
logger.trace("adding " + name + "=" + value);
}
- if (targetProperty != null && targetProperty.getPropertyType() != null &&
- targetProperty.getPropertyType() == Property.PropertyType.BAG) {
+ if (targetProperty != null && targetProperty.isMultiValuePermitted()) {
if (value != null && value.length() > 0) {
String[] previous = metadata.getValues(name);
if (previous == null || !Arrays.asList(previous).contains(value)) {
- metadata.add(name, value);
+ metadata.add(targetProperty, value);
}
}
} else {
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/TestParsers.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/TestParsers.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/TestParsers.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/TestParsers.java Thu May 17 20:05:20 2012
@@ -22,6 +22,7 @@ import java.io.InputStream;
import org.apache.tika.config.TikaConfig;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.parser.Parser;
import org.xml.sax.helpers.DefaultHandler;
@@ -51,7 +52,7 @@ public class TestParsers extends TikaTes
} finally {
stream.close();
}
- assertEquals("Sample Word Document", metadata.get(Metadata.TITLE));
+ assertEquals("Sample Word Document", metadata.get(TikaCoreProperties.TITLE));
}
public void testEXCELExtraction() throws Exception {
@@ -69,7 +70,7 @@ public class TestParsers extends TikaTes
} finally {
stream.close();
}
- assertEquals("Simple Excel document", metadata.get(Metadata.TITLE));
+ assertEquals("Simple Excel document", metadata.get(TikaCoreProperties.TITLE));
}
public void testOptionalHyphen() throws Exception {
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/ParsingReaderTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/ParsingReaderTest.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/ParsingReaderTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/ParsingReaderTest.java Thu May 17 20:05:20 2012
@@ -21,6 +21,7 @@ import java.io.InputStream;
import java.io.Reader;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import junit.framework.TestCase;
@@ -83,7 +84,7 @@ public class ParsingReaderTest extends T
new AutoDetectParser(), stream, metadata, new ParseContext());
try {
// Metadata should already be available
- assertEquals("Simple Excel document", metadata.get(Metadata.TITLE));
+ assertEquals("Simple Excel document", metadata.get(TikaCoreProperties.TITLE));
// Check that the internal buffering isn't broken
assertEquals('F', (char) reader.read());
assertEquals('e', (char) reader.read());
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/asm/ClassParserTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/asm/ClassParserTest.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/asm/ClassParserTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/asm/ClassParserTest.java Thu May 17 20:05:20 2012
@@ -20,6 +20,7 @@ import junit.framework.TestCase;
import org.apache.tika.Tika;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
/**
* Test case for parsing Java class files.
@@ -32,7 +33,7 @@ public class ClassParserTest extends Tes
String content = new Tika().parseToString(
ClassParserTest.class.getResourceAsStream(path), metadata);
- assertEquals("AutoDetectParser", metadata.get(Metadata.TITLE));
+ assertEquals("AutoDetectParser", metadata.get(TikaCoreProperties.TITLE));
assertEquals(
"AutoDetectParser.class",
metadata.get(Metadata.RESOURCE_NAME_KEY));
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/epub/EpubParserTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/epub/EpubParserTest.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/epub/EpubParserTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/epub/EpubParserTest.java Thu May 17 20:05:20 2012
@@ -21,6 +21,7 @@ import java.io.InputStream;
import junit.framework.TestCase;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.sax.BodyContentHandler;
import org.xml.sax.ContentHandler;
@@ -38,11 +39,11 @@ public class EpubParserTest extends Test
assertEquals("application/epub+zip",
metadata.get(Metadata.CONTENT_TYPE));
assertEquals("en",
- metadata.get(Metadata.LANGUAGE));
+ metadata.get(TikaCoreProperties.LANGUAGE));
assertEquals("This is an ePub test publication for Tika.",
- metadata.get(Metadata.DESCRIPTION));
+ metadata.get(TikaCoreProperties.DESCRIPTION));
assertEquals("Apache",
- metadata.get(Metadata.PUBLISHER));
+ metadata.get(TikaCoreProperties.PUBLISHER));
String content = handler.toString();
assertTrue(content.contains("Plus a simple div"));
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/feed/FeedParserTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/feed/FeedParserTest.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/feed/FeedParserTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/feed/FeedParserTest.java Thu May 17 20:05:20 2012
@@ -21,6 +21,7 @@ import java.io.InputStream;
import junit.framework.TestCase;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.sax.BodyContentHandler;
import org.xml.sax.ContentHandler;
@@ -41,8 +42,8 @@ public class FeedParserTest extends Test
assertFalse(content == null);
assertEquals("Sample RSS File for Junit test",
- metadata.get(Metadata.DESCRIPTION));
- assertEquals("TestChannel", metadata.get(Metadata.TITLE));
+ metadata.get(TikaCoreProperties.DESCRIPTION));
+ assertEquals("TestChannel", metadata.get(TikaCoreProperties.TITLE));
// TODO find a way of testing the paragraphs and anchors
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/font/AdobeFontMetricParserTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/font/AdobeFontMetricParserTest.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/font/AdobeFontMetricParserTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/font/AdobeFontMetricParserTest.java Thu May 17 20:05:20 2012
@@ -19,6 +19,7 @@ package org.apache.tika.parser.font;
import junit.framework.TestCase;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.parser.AutoDetectParser;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.parser.Parser;
@@ -46,7 +47,7 @@ public class AdobeFontMetricParserTest e
}
assertEquals("application/x-font-adobe-metric", metadata.get(Metadata.CONTENT_TYPE));
- assertEquals("TestFullName", metadata.get(Metadata.TITLE));
+ assertEquals("TestFullName", metadata.get(TikaCoreProperties.TITLE));
assertEquals("Fri Jul 15 17:50:51 2011", metadata.get(Metadata.CREATION_DATE));
assertEquals("TestFontName", metadata.get("FontName"));
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/html/HtmlParserTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/html/HtmlParserTest.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/html/HtmlParserTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/html/HtmlParserTest.java Thu May 17 20:05:20 2012
@@ -36,6 +36,7 @@ import org.apache.tika.Tika;
import org.apache.tika.exception.TikaException;
import org.apache.tika.metadata.Geographic;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.sax.BodyContentHandler;
import org.apache.tika.sax.TeeContentHandler;
@@ -76,7 +77,7 @@ public class HtmlParserTest extends Test
}
assertEquals(
- "Title : Test Indexation Html", metadata.get(Metadata.TITLE));
+ "Title : Test Indexation Html", metadata.get(TikaCoreProperties.TITLE));
assertEquals("Tika Developers", metadata.get("Author"));
assertEquals("5", metadata.get("refresh"));
@@ -120,7 +121,7 @@ public class HtmlParserTest extends Test
HtmlParserTest.class.getResourceAsStream(path), metadata);
assertEquals("application/xhtml+xml", metadata.get(Metadata.CONTENT_TYPE));
- assertEquals("XHTML test document", metadata.get(Metadata.TITLE));
+ assertEquals("XHTML test document", metadata.get(TikaCoreProperties.TITLE));
assertEquals("Tika Developers", metadata.get("Author"));
assertEquals("5", metadata.get("refresh"));
@@ -258,7 +259,7 @@ public class HtmlParserTest extends Test
new HtmlParser().parse (
new ByteArrayInputStream(test.getBytes("UTF-8")),
new BodyContentHandler(), metadata, new ParseContext());
- assertEquals("\u017d", metadata.get(Metadata.TITLE));
+ assertEquals("\u017d", metadata.get(TikaCoreProperties.TITLE));
}
/**
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/ibooks/iBooksParserTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/ibooks/iBooksParserTest.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/ibooks/iBooksParserTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/ibooks/iBooksParserTest.java Thu May 17 20:05:20 2012
@@ -21,6 +21,7 @@ import java.io.InputStream;
import junit.framework.TestCase;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.parser.epub.EpubParser;
import org.apache.tika.sax.BodyContentHandler;
@@ -39,11 +40,11 @@ public class iBooksParserTest extends Te
assertEquals("application/x-ibooks+zip",
metadata.get(Metadata.CONTENT_TYPE));
assertEquals("en-GB",
- metadata.get(Metadata.LANGUAGE));
+ metadata.get(TikaCoreProperties.LANGUAGE));
assertEquals("iBooks Author v1.0",
- metadata.get(Metadata.CONTRIBUTOR));
+ metadata.get(TikaCoreProperties.CONTRIBUTOR));
assertEquals("Apache",
- metadata.get(Metadata.CREATOR));
+ metadata.get(TikaCoreProperties.CREATOR));
/* TODO For some reason, the xhtml files in iBooks-style ePub are not parsed properly, and the content comes back empty.git che
String content = handler.toString();
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/ImageMetadataExtractorTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/ImageMetadataExtractorTest.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/ImageMetadataExtractorTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/ImageMetadataExtractorTest.java Thu May 17 20:05:20 2012
@@ -20,8 +20,8 @@ import java.util.Arrays;
import java.util.GregorianCalendar;
import java.util.Iterator;
-import org.apache.tika.metadata.DublinCore;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import com.drew.metadata.Directory;
import com.drew.metadata.MetadataException;
@@ -66,7 +66,7 @@ public class ImageMetadataExtractorTest
Metadata metadata = new Metadata();
new ImageMetadataExtractor.ExifHandler().handle(exif, metadata);
- assertEquals("Should be ISO date without time zone", "2000-01-01T00:00:00", metadata.get(Metadata.DATE));
+ assertEquals("Should be ISO date without time zone", "2000-01-01T00:00:00", metadata.get(TikaCoreProperties.DATE));
}
public void testExifHandlerParseDateFallback() throws MetadataException {
@@ -77,7 +77,7 @@ public class ImageMetadataExtractorTest
Metadata metadata = new Metadata();
new ImageMetadataExtractor.ExifHandler().handle(exif, metadata);
- assertEquals("Should try EXIF Date/Time if Original is not set", "1999-01-01T00:00:00", metadata.get(Metadata.DATE));
+ assertEquals("Should try EXIF Date/Time if Original is not set", "1999-01-01T00:00:00", metadata.get(TikaCoreProperties.DATE));
}
public void testExifHandlerParseDateError() throws MetadataException {
@@ -88,7 +88,7 @@ public class ImageMetadataExtractorTest
Metadata metadata = new Metadata();
new ImageMetadataExtractor.ExifHandler().handle(exif, metadata);
- assertEquals("Parsing should proceed without date", null, metadata.get(Metadata.DATE));
+ assertEquals("Parsing should proceed without date", null, metadata.get(TikaCoreProperties.DATE));
}
public void testCopyUnknownFieldsHandler() throws MetadataException {
@@ -100,7 +100,7 @@ public class ImageMetadataExtractorTest
when(t2.getTagName()).thenReturn(Metadata.KEYWORDS);
when(t2.getDescription()).thenReturn("known");
Tag t3 = mock(Tag.class);
- when(t3.getTagName()).thenReturn(Metadata.DESCRIPTION);
+ when(t3.getTagName()).thenReturn(TikaCoreProperties.DESCRIPTION.getName());
when(t3.getDescription()).thenReturn("known");
Iterator<Tag> tags = Arrays.asList(t1, t2, t3).iterator();
when(d.getTagIterator()).thenReturn(tags);
@@ -109,7 +109,7 @@ public class ImageMetadataExtractorTest
assertEquals("t1", metadata.get("Image Description"));
assertNull("keywords should be excluded from bulk copy because it is a defined field",
metadata.get(Metadata.KEYWORDS));
- assertNull(metadata.get(Metadata.DESCRIPTION));
+ assertNull(metadata.get(TikaCoreProperties.DESCRIPTION));
}
}
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/MetadataFieldsTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/MetadataFieldsTest.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/MetadataFieldsTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/MetadataFieldsTest.java Thu May 17 20:05:20 2012
@@ -16,8 +16,8 @@
*/
package org.apache.tika.parser.image;
-import org.apache.tika.metadata.Metadata;
import org.apache.tika.metadata.TIFF;
+import org.apache.tika.metadata.TikaCoreProperties;
import junit.framework.TestCase;
@@ -26,7 +26,7 @@ public class MetadataFieldsTest extends
public void testIsMetadataField() {
assertFalse(MetadataFields.isMetadataField("random string that is not a field"));
assertFalse(MetadataFields.isMetadataField("xyz"));
- assertTrue(MetadataFields.isMetadataField(Metadata.SUBJECT));
+ assertTrue(MetadataFields.isMetadataField(TikaCoreProperties.SUBJECT));
assertTrue(MetadataFields.isMetadataField(TIFF.F_NUMBER.getName()));
}
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/TiffParserTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/TiffParserTest.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/TiffParserTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/TiffParserTest.java Thu May 17 20:05:20 2012
@@ -22,6 +22,7 @@ import org.apache.tika.parser.ParseConte
import org.apache.tika.parser.Parser;
import org.apache.tika.parser.image.TiffParser;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.xml.sax.helpers.DefaultHandler;
import java.io.InputStream;
@@ -41,7 +42,7 @@ public class TiffParserTest extends Test
assertEquals("Licensed to the Apache Software Foundation (ASF) under one or " +
"more contributor license agreements. See the NOTICE file " +
"distributed with this work for additional information regarding " +
- "copyright ownership.", metadata.get(Metadata.DESCRIPTION));
+ "copyright ownership.", metadata.get(TikaCoreProperties.DESCRIPTION));
// All EXIF/TIFF tags
assertEquals("Inch", metadata.get(Metadata.RESOLUTION_UNIT));
@@ -53,7 +54,7 @@ public class TiffParserTest extends Test
assertEquals("3", metadata.get(Metadata.SAMPLES_PER_PIXEL));
// Embedded XMP
- List<String> subject = Arrays.asList(metadata.getValues(Metadata.SUBJECT));
+ List<String> subject = Arrays.asList(metadata.getValues(TikaCoreProperties.SUBJECT));
assertTrue("got " + subject, subject.contains("cat"));
assertTrue("got " + subject, subject.contains("garden"));
}
Modified: tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/xmp/JempboxExtractorTest.java
URL: http://svn.apache.org/viewvc/tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/xmp/JempboxExtractorTest.java?rev=1339833&r1=1339832&r2=1339833&view=diff
==============================================================================
--- tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/xmp/JempboxExtractorTest.java (original)
+++ tika/trunk/tika-parsers/src/test/java/org/apache/tika/parser/image/xmp/JempboxExtractorTest.java Thu May 17 20:05:20 2012
@@ -23,6 +23,7 @@ import java.util.Collection;
import org.apache.tika.exception.TikaException;
import org.apache.tika.metadata.Metadata;
+import org.apache.tika.metadata.TikaCoreProperties;
import org.apache.tika.parser.image.xmp.JempboxExtractor;
import junit.framework.TestCase;
@@ -33,20 +34,20 @@ public class JempboxExtractorTest extend
Metadata metadata = new Metadata();
InputStream stream = getClass().getResourceAsStream("/test-documents/testJPEG_commented.jpg");
// set some values before extraction to see that they are overridden
- metadata.set(Metadata.TITLE, "old title");
- metadata.set(Metadata.DESCRIPTION, "old description");
- metadata.set(Metadata.CREATOR, "previous author");
+ metadata.set(TikaCoreProperties.TITLE, "old title");
+ metadata.set(TikaCoreProperties.DESCRIPTION, "old description");
+ metadata.set(TikaCoreProperties.CREATOR, "previous author");
// ... or kept in case the field is multi-value
- metadata.add(Metadata.SUBJECT, "oldkeyword");
+ metadata.add(TikaCoreProperties.SUBJECT, "oldkeyword");
JempboxExtractor extractor = new JempboxExtractor(metadata);
extractor.parse(stream);
// DublinCore fields
- assertEquals("Tosteberga \u00C4ngar", metadata.get(Metadata.TITLE));
- assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DESCRIPTION));
- assertEquals("Some Tourist", metadata.get(Metadata.CREATOR));
- Collection<String> keywords = Arrays.asList(metadata.getValues(Metadata.SUBJECT));
+ assertEquals("Tosteberga \u00C4ngar", metadata.get(TikaCoreProperties.TITLE));
+ assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(TikaCoreProperties.DESCRIPTION));
+ assertEquals("Some Tourist", metadata.get(TikaCoreProperties.CREATOR));
+ Collection<String> keywords = Arrays.asList(metadata.getValues(TikaCoreProperties.SUBJECT));
assertTrue(keywords.contains("oldkeyword"));
assertTrue(keywords.contains("grazelands"));
assertTrue(keywords.contains("nature reserve"));
@@ -62,10 +63,10 @@ public class JempboxExtractorTest extend
extractor.parse(stream);
// DublinCore fields
- assertEquals("Tosteberga \u00C4ngar", metadata.get(Metadata.TITLE));
- assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DESCRIPTION));
- assertEquals("Some Tourist", metadata.get(Metadata.CREATOR));
- Collection<String> keywords = Arrays.asList(metadata.getValues(Metadata.SUBJECT));
+ assertEquals("Tosteberga \u00C4ngar", metadata.get(TikaCoreProperties.TITLE));
+ assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(TikaCoreProperties.DESCRIPTION));
+ assertEquals("Some Tourist", metadata.get(TikaCoreProperties.CREATOR));
+ Collection<String> keywords = Arrays.asList(metadata.getValues(TikaCoreProperties.SUBJECT));
assertTrue(keywords.contains("bird watching"));
assertTrue(keywords.contains("coast"));
}
@@ -78,8 +79,8 @@ public class JempboxExtractorTest extend
extractor.parse(stream);
// XnViewMp fields not understood by Jempbox
- assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(Metadata.DESCRIPTION));
- Collection<String> keywords = Arrays.asList(metadata.getValues(Metadata.SUBJECT));
+ assertEquals("Bird site in north eastern Sk\u00E5ne, Sweden.\n(new line)", metadata.get(TikaCoreProperties.DESCRIPTION));
+ Collection<String> keywords = Arrays.asList(metadata.getValues(TikaCoreProperties.SUBJECT));
assertTrue(keywords.contains("coast"));
assertTrue(keywords.contains("nature reserve"));
}