Top Description Inners Fields Constructors Methods
org.apache.poi.ss.extractor

public Class EmbeddedExtractor

extends Object
implements Iterable<EmbeddedExtractor>
Class Inheritance
All Implemented Interfaces
java.lang.Iterable
Known Direct Subclasses
org.apache.poi.ss.extractor.EmbeddedExtractor.Ole10Extractor, org.apache.poi.ss.extractor.EmbeddedExtractor.PdfExtractor, org.apache.poi.ss.extractor.EmbeddedExtractor.OOXMLExtractor, org.apache.poi.ss.extractor.EmbeddedExtractor.BiffExtractor, org.apache.poi.ss.extractor.EmbeddedExtractor.FsExtractor
Annotations
@Beta
Static Imports
org.apache.poi.util.StringUtil.endsWithIgnoreCase

This extractor class tries to identify various embedded documents within Excel files and provide them via a common interface, i.e. the EmbeddedData instances

Nested and Inner Type Summary

Modifier and TypeClass and Description
pack-priv static class
pack-priv static class
public static class
pack-priv static class
pack-priv static class

Field Summary

Modifier and TypeField and Description
private static final String
private static final String
private static final String
private static final String
private static final int
private static final Logger
private static int

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public boolean
public boolean
private static int[]
computeFailure(byte[] pattern)

Computes the failure function using a boot-strapping process, where the pattern is matched against itself.

protected static void
protected EmbeddedData
protected EmbeddedData
extract(Picture source)

public List<EmbeddedData>
protected void
extractAll(ShapeContainer<?> parent, List<EmbeddedData> embeddings)

public EmbeddedData
public EmbeddedData
public static int

Returns:

the max record length allowed for EmbeddedExtractor
getMaxRecordLength
()

private static int
indexOf(byte[] data, int offset, byte[] pattern)

Knuth-Morris-Pratt Algorithm for Pattern Matching Finds the first occurrence of the pattern in the text.

public Iterator<EmbeddedExtractor>

Returns:

the list of known extractors, if you provide custom extractors, override this method
iterator
()

Implements java.lang.Iterable.iterator.

Returns an iterator over elements of type T.

public static void
setMaxRecordLength(int
the max record length allowed for EmbeddedExtractor
length
)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

CONTENT_TYPE_BYTESback to summary
private static final String CONTENT_TYPE_BYTES
CONTENT_TYPE_DOCback to summary
private static final String CONTENT_TYPE_DOC
CONTENT_TYPE_PDFback to summary
private static final String CONTENT_TYPE_PDF
CONTENT_TYPE_XLSback to summary
private static final String CONTENT_TYPE_XLS
DEFAULT_MAX_RECORD_LENGTHback to summary
private static final int DEFAULT_MAX_RECORD_LENGTH
LOGback to summary
private static final Logger LOG
MAX_RECORD_LENGTHback to summary
private static int MAX_RECORD_LENGTH

Constructor Detail

EmbeddedExtractorback to summary
public EmbeddedExtractor()

Method Detail

canExtractback to summary
public boolean canExtract(DirectoryNode source)
canExtractback to summary
public boolean canExtract(Picture source)
computeFailureback to summary
private static int[] computeFailure(byte[] pattern)

Computes the failure function using a boot-strapping process, where the pattern is matched against itself.

copyNodesback to summary
protected static void copyNodes(DirectoryNode src, DirectoryNode dest) throws IOException
extractback to summary
protected EmbeddedData extract(DirectoryNode dn) throws IOException
extractback to summary
protected EmbeddedData extract(Picture source) throws IOException
extractAllback to summary
public List<EmbeddedData> extractAll(Sheet sheet) throws IOException
extractAllback to summary
protected void extractAll(ShapeContainer<?> parent, List<EmbeddedData> embeddings) throws IOException
extractOneback to summary
public EmbeddedData extractOne(DirectoryNode src) throws IOException
extractOneback to summary
public EmbeddedData extractOne(Picture src) throws IOException
getMaxRecordLengthback to summary
public static int getMaxRecordLength()
Returns:int

the max record length allowed for EmbeddedExtractor

indexOfback to summary
private static int indexOf(byte[] data, int offset, byte[] pattern)

Knuth-Morris-Pratt Algorithm for Pattern Matching Finds the first occurrence of the pattern in the text.

iteratorback to summary
public Iterator<EmbeddedExtractor> iterator()

Implements java.lang.Iterable.iterator.

Doc from java.lang.Iterable.iterator.

Returns an iterator over elements of type T.

Returns:Iterator<EmbeddedExtractor>

the list of known extractors, if you provide custom extractors, override this method

Annotations
@Override
setMaxRecordLengthback to summary
public static void setMaxRecordLength(int length)
Parameters
length:int

the max record length allowed for EmbeddedExtractor

org.apache.poi.ss.extractor back to summary

pack-priv Class EmbeddedExtractor.BiffExtractor

extends EmbeddedExtractor
Class Inheritance

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public boolean
protected boolean
protected boolean
public EmbeddedData
Inherited from org.apache.poi.ss.extractor.EmbeddedExtractor:
canExtractcopyNodesextractextractAllextractAllextractOneextractOnegetMaxRecordLengthiteratorsetMaxRecordLength

Constructor Detail

BiffExtractorback to summary
pack-priv BiffExtractor()

Method Detail

canExtractback to summary
public boolean canExtract(DirectoryNode dn)

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.canExtract.

Annotations
@Override
canExtractExcelback to summary
protected boolean canExtractExcel(DirectoryNode dn)
canExtractWordback to summary
protected boolean canExtractWord(DirectoryNode dn)
extractback to summary
public EmbeddedData extract(DirectoryNode dn) throws IOException

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.extract.

Annotations
@Override
org.apache.poi.ss.extractor back to summary

pack-priv Class EmbeddedExtractor.FsExtractor

extends EmbeddedExtractor
Class Inheritance

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public boolean
public EmbeddedData
Inherited from org.apache.poi.ss.extractor.EmbeddedExtractor:
canExtractcopyNodesextractextractAllextractAllextractOneextractOnegetMaxRecordLengthiteratorsetMaxRecordLength

Constructor Detail

FsExtractorback to summary
pack-priv FsExtractor()

Method Detail

canExtractback to summary
public boolean canExtract(DirectoryNode dn)

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.canExtract.

Annotations
@Override
extractback to summary
public EmbeddedData extract(DirectoryNode dn) throws IOException

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.extract.

Annotations
@Override
org.apache.poi.ss.extractor back to summary

public Class EmbeddedExtractor.Ole10Extractor

extends EmbeddedExtractor
Class Inheritance

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public boolean
public EmbeddedData
Inherited from org.apache.poi.ss.extractor.EmbeddedExtractor:
canExtractcopyNodesextractextractAllextractAllextractOneextractOnegetMaxRecordLengthiteratorsetMaxRecordLength

Constructor Detail

Ole10Extractorback to summary
public Ole10Extractor()

Method Detail

canExtractback to summary
public boolean canExtract(DirectoryNode dn)

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.canExtract.

Annotations
@Override
extractback to summary
public EmbeddedData extract(DirectoryNode dn) throws IOException

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.extract.

Annotations
@Override
org.apache.poi.ss.extractor back to summary

pack-priv Class EmbeddedExtractor.OOXMLExtractor

extends EmbeddedExtractor
Class Inheritance

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public boolean
public EmbeddedData
Inherited from org.apache.poi.ss.extractor.EmbeddedExtractor:
canExtractcopyNodesextractextractAllextractAllextractOneextractOnegetMaxRecordLengthiteratorsetMaxRecordLength

Constructor Detail

OOXMLExtractorback to summary
pack-priv OOXMLExtractor()

Method Detail

canExtractback to summary
public boolean canExtract(DirectoryNode dn)

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.canExtract.

Annotations
@Override
extractback to summary
public EmbeddedData extract(DirectoryNode dn) throws IOException

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.extract.

Annotations
@Override
org.apache.poi.ss.extractor back to summary

pack-priv Class EmbeddedExtractor.PdfExtractor

extends EmbeddedExtractor
Class Inheritance

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public boolean
public boolean
public EmbeddedData
protected EmbeddedData

Returns:

the embedded data in an EMF picture or null if none is found
extract
(Picture source)

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.extract.

Mac Office encodes embedded objects inside the picture, e.g. PDF is part of an EMF.

Inherited from org.apache.poi.ss.extractor.EmbeddedExtractor:
copyNodesextractAllextractAllextractOneextractOnegetMaxRecordLengthiteratorsetMaxRecordLength

Constructor Detail

PdfExtractorback to summary
pack-priv PdfExtractor()

Method Detail

canExtractback to summary
public boolean canExtract(DirectoryNode dn)

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.canExtract.

Annotations
@Override
canExtractback to summary
public boolean canExtract(Picture source)

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.canExtract.

Annotations
@Override
extractback to summary
public EmbeddedData extract(DirectoryNode dn) throws IOException

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.extract.

Annotations
@Override
extractback to summary
protected EmbeddedData extract(Picture source) throws IOException

Overrides org.apache.poi.ss.extractor.EmbeddedExtractor.extract.

Mac Office encodes embedded objects inside the picture, e.g. PDF is part of an EMF. If an embedded stream is inside an EMF picture, this method extracts the payload.

Returns:EmbeddedData

the embedded data in an EMF picture or null if none is found

Annotations
@Override