Class IWorkPackageParser

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

public class IWorkPackageParser extends Object implements org.apache.tika.parser.Parser
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:
  • Field Details

    • IWORK_CONTENT_ENTRIES

      public static final Set<String> IWORK_CONTENT_ENTRIES
      Which files within an iWork file contain the actual content?
    • IWORK_COMMON_ENTRY

      public static final String IWORK_COMMON_ENTRY
      All iWork files contain one of these, so we can detect based on it
      See Also:
  • Constructor Details

    • IWorkPackageParser

      public IWorkPackageParser()
  • Method Details

    • getSupportedTypes

      public Set<org.apache.tika.mime.MediaType> getSupportedTypes(org.apache.tika.parser.ParseContext context)
      Specified by:
      getSupportedTypes in interface org.apache.tika.parser.Parser
    • parse

      public void parse(InputStream stream, ContentHandler handler, org.apache.tika.metadata.Metadata metadata, org.apache.tika.parser.ParseContext context) throws IOException, SAXException, org.apache.tika.exception.TikaException
      Specified by:
      parse in interface org.apache.tika.parser.Parser
      Throws:
      IOException
      SAXException
      org.apache.tika.exception.TikaException