Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.poi.extractor
Class ExtractorFactory

    java.lang.Object
      org.apache.poi.extractor.ExtractorFactory

    public class ExtractorFactory

extends java.lang.Object

Figures out the correct POITextExtractor for your supplied document, and returns it.

Field Summary
`static java.lang.String` | `CORE_DOCUMENT_REL`

Constructor Summary
`ExtractorFactory()`

Method Summary
`static org.apache.poi.POITextExtractor` | `createExtractor(org.apache.poi.poifs.filesystem.DirectoryNode poifsDir)`
`static org.apache.poi.POITextExtractor` | `createExtractor(org.apache.poi.poifs.filesystem.DirectoryNode poifsDir, org.apache.poi.poifs.filesystem.POIFSFileSystem fs)` Deprecated. Use `createExtractor(DirectoryNode)` instead
`static org.apache.poi.POITextExtractor` | `createExtractor(java.io.File f)`
`static org.apache.poi.POITextExtractor` | `createExtractor(java.io.InputStream inp)`
`static POIXMLTextExtractor` | `createExtractor(OPCPackage pkg)`
`static org.apache.poi.POIOLE2TextExtractor` | `createExtractor(org.apache.poi.poifs.filesystem.POIFSFileSystem fs)`
`static java.lang.Boolean` | `getAllThreadsPreferEventExtractors()` Should all threads prefer event based over usermodel based extractors? (usermodel extractors tend to be more accurate, but use more memory) Default is to use the thread level setting, which defaults to false.
`static org.apache.poi.POITextExtractor[]` | `getEmbededDocsTextExtractors(org.apache.poi.POIOLE2TextExtractor ext)` Returns an array of text extractors, one for each of the embeded documents in the file (if there are any).
`static org.apache.poi.POITextExtractor[]` | `getEmbededDocsTextExtractors(POIXMLTextExtractor ext)` Returns an array of text extractors, one for each of the embeded documents in the file (if there are any).
`static java.lang.Object` | `getThreadPrefersEventExtractors()` Should this thread prefer event based over usermodel based extractors? (usermodel extractors tend to be more accurate, but use more memory) Default is false.
`static void` | `setAllThreadsPreferEventExtractors(java.lang.Boolean preferEventExtractors)` Should all threads prefer event based over usermodel based extractors? If set, will take preference over the Thread level setting.
`static void` | `setThreadPrefersEventExtractors(boolean preferEventExtractors)` Should this thread prefer event based over usermodel based extractors? Will only be used if the All Threads setting is null.

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### CORE_DOCUMENT_REL

    public static final java.lang.String CORE_DOCUMENT_REL

See Also:
  Constant Field Values

Constructor Detail

### ExtractorFactory

    public ExtractorFactory()

Method Detail

### getThreadPrefersEventExtractors

    public static java.lang.Object getThreadPrefersEventExtractors()

  Should this thread prefer event based over usermodel based extractors? (usermodel extractors tend to be more accurate, but use more memory) Default is false.

### getAllThreadsPreferEventExtractors

    public static java.lang.Boolean getAllThreadsPreferEventExtractors()

  Should all threads prefer event based over usermodel based extractors? (usermodel extractors tend to be more accurate, but use more memory) Default is to use the thread level setting, which defaults to false.

### setThreadPrefersEventExtractors

    public static void setThreadPrefersEventExtractors(boolean preferEventExtractors)

  Should this thread prefer event based over usermodel based extractors? Will only be used if the All Threads setting is null.

### setAllThreadsPreferEventExtractors

    public static void setAllThreadsPreferEventExtractors(java.lang.Boolean preferEventExtractors)

  Should all threads prefer event based over usermodel based extractors? If set, will take preference over the Thread level setting.

### createExtractor

    public static org.apache.poi.POITextExtractor createExtractor(java.io.File f)
                                                           throws java.io.IOException,
                                                                  InvalidFormatException,
                                                                  OpenXML4JException,
                                                                  org.apache.xmlbeans.XmlException

  Throws:
    `java.io.IOException`
    `InvalidFormatException`
    `OpenXML4JException`
    `org.apache.xmlbeans.XmlException`

### createExtractor

    public static org.apache.poi.POITextExtractor createExtractor(java.io.InputStream inp)
                                                           throws java.io.IOException,
                                                                  InvalidFormatException,
                                                                  OpenXML4JException,
                                                                  org.apache.xmlbeans.XmlException

  Throws:
    `java.io.IOException`
    `InvalidFormatException`
    `OpenXML4JException`
    `org.apache.xmlbeans.XmlException`

### createExtractor

    public static POIXMLTextExtractor createExtractor(OPCPackage pkg)
                                               throws java.io.IOException,
                                                      OpenXML4JException,
                                                      org.apache.xmlbeans.XmlException

  Throws:
    `java.io.IOException`
    `OpenXML4JException`
    `org.apache.xmlbeans.XmlException`

### createExtractor

    public static org.apache.poi.POIOLE2TextExtractor createExtractor(org.apache.poi.poifs.filesystem.POIFSFileSystem fs)
                                                               throws java.io.IOException,
                                                                      InvalidFormatException,
                                                                      OpenXML4JException,
                                                                      org.apache.xmlbeans.XmlException

  Throws:
    `java.io.IOException`
    `InvalidFormatException`
    `OpenXML4JException`
    `org.apache.xmlbeans.XmlException`

### createExtractor

    public static org.apache.poi.POITextExtractor createExtractor(org.apache.poi.poifs.filesystem.DirectoryNode poifsDir,
                                                                  org.apache.poi.poifs.filesystem.POIFSFileSystem fs)
                                                           throws java.io.IOException,
                                                                  InvalidFormatException,
                                                                  OpenXML4JException,
                                                                  org.apache.xmlbeans.XmlException

  Deprecated. Use `createExtractor(DirectoryNode)` instead

  Throws:
    `java.io.IOException`
    `InvalidFormatException`
    `OpenXML4JException`
    `org.apache.xmlbeans.XmlException`

### createExtractor

    public static org.apache.poi.POITextExtractor createExtractor(org.apache.poi.poifs.filesystem.DirectoryNode poifsDir)
                                                           throws java.io.IOException,
                                                                  InvalidFormatException,
                                                                  OpenXML4JException,
                                                                  org.apache.xmlbeans.XmlException

  Throws:
    `java.io.IOException`
    `InvalidFormatException`
    `OpenXML4JException`
    `org.apache.xmlbeans.XmlException`

### getEmbededDocsTextExtractors

    public static org.apache.poi.POITextExtractor[] getEmbededDocsTextExtractors(org.apache.poi.POIOLE2TextExtractor ext)
                                                                          throws java.io.IOException,
                                                                                 InvalidFormatException,
                                                                                 OpenXML4JException,
                                                                                 org.apache.xmlbeans.XmlException

  Returns an array of text extractors, one for each of the embeded documents in the file (if there are any). If there are no embeded documents, you'll get back an empty array. Otherwise, you'll get one open `POITextExtractor` for each embeded file.

  Throws:
    `java.io.IOException`
    `InvalidFormatException`
    `OpenXML4JException`
    `org.apache.xmlbeans.XmlException`

### getEmbededDocsTextExtractors

    public static org.apache.poi.POITextExtractor[] getEmbededDocsTextExtractors(POIXMLTextExtractor ext)

  Returns an array of text extractors, one for each of the embeded documents in the file (if there are any). If there are no embeded documents, you'll get back an empty array. Otherwise, you'll get one open `POITextExtractor` for each embeded file.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD