org.apache.tika.parser.iwork
Class IWorkPackageParser

java.lang.Object
  extended by org.apache.tika.parser.AbstractParser
      extended by org.apache.tika.parser.iwork.IWorkPackageParser
All Implemented Interfaces:
java.io.Serializable, Parser

public class IWorkPackageParser
extends AbstractParser

A parser for the IWork container files. This includes *.key, *.pages and *.numbers files. This parser delegates the relevant entries to a ContentHandler that parsers the content. Currently supported formats:

  1. Keynote format version 2.x. Currently only tested with Keynote version 5.x
  2. Pages format version 1.x. Currently only tested with Pages version 4.0.x
  3. Numbers format version 1.x. Currently only tested with Numbers version 2.0.x

See Also:
Serialized Form

Nested Class Summary
static class IWorkPackageParser.IWORKDocumentType
           
 
Field Summary
static java.lang.String IWORK_COMMON_ENTRY
          All iWork files contain one of these, so we can detect based on it
static java.util.Set<java.lang.String> IWORK_CONTENT_ENTRIES
          Which files within an iWork file contain the actual content?
 
Constructor Summary
IWorkPackageParser()
           
 
Method Summary
 java.util.Set<MediaType> getSupportedTypes(ParseContext context)
          Returns the set of media types supported by this parser when used with the given parse context.
 void parse(java.io.InputStream stream, org.xml.sax.ContentHandler handler, Metadata metadata, ParseContext context)
          Parses a document stream into a sequence of XHTML SAX events.
 
Methods inherited from class org.apache.tika.parser.AbstractParser
parse
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

IWORK_CONTENT_ENTRIES

public static final java.util.Set<java.lang.String> IWORK_CONTENT_ENTRIES
Which files within an iWork file contain the actual content?


IWORK_COMMON_ENTRY

public static final java.lang.String IWORK_COMMON_ENTRY
All iWork files contain one of these, so we can detect based on it

See Also:
Constant Field Values
Constructor Detail

IWorkPackageParser

public IWorkPackageParser()
Method Detail

getSupportedTypes

public java.util.Set<MediaType> getSupportedTypes(ParseContext context)
Description copied from interface: Parser
Returns the set of media types supported by this parser when used with the given parse context.

Parameters:
context - parse context
Returns:
immutable set of media types

parse

public void parse(java.io.InputStream stream,
                  org.xml.sax.ContentHandler handler,
                  Metadata metadata,
                  ParseContext context)
           throws java.io.IOException,
                  org.xml.sax.SAXException,
                  TikaException
Description copied from interface: Parser
Parses a document stream into a sequence of XHTML SAX events. Fills in related document metadata in the given metadata object.

The given document stream is consumed but not closed by this method. The responsibility to close the stream remains on the caller.

Information about the parsing context can be passed in the context parameter. See the parser implementations for the kinds of context information they expect.

Parameters:
stream - the document stream (input)
handler - handler for the XHTML SAX events (output)
metadata - document metadata (input and output)
context - parse context
Throws:
java.io.IOException - if the document stream could not be read
org.xml.sax.SAXException - if the SAX events could not be processed
TikaException - if the document could not be parsed


Copyright © 2007-2011 The Apache Software Foundation. All Rights Reserved.