java.lang.Object
org.sejda.sambox.input.XrefFullScanner
Component scanning for xref tables/streams. It scans top to bottom parsing any xref table/stream found with the
assumption that xrefs found later in the file are more recent.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumpossible outcome of the xref full scan -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final org.slf4j.Loggerprivate Patternprivate XrefFullScanner.XrefScanOutcomeprivate COSParserprivate FileTrailerprivate AbstractXrefStreamParserprivate AbstractXrefTableParser -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddEntryIfValid(XrefEntry entry) private voiddoScan()private booleanisValidEntry(XrefEntry entry) private voidparseFoundObject(long offset) private voidparseFoundXrefStream(COSDictionary trailer) private voidparseFoundXrefTable(long offset) (package private) XrefFullScanner.XrefScanOutcomescan()(package private) FileTrailertrailer()
-
Field Details
-
LOG
private static final org.slf4j.Logger LOG -
trailer
-
xrefStreamParser
-
xrefTableParser
-
parser
-
objectDefPatter
-
outcome
-
-
Constructor Details
-
XrefFullScanner
XrefFullScanner(COSParser parser)
-
-
Method Details
-
addEntryIfValid
-
scan
- Returns:
- the state of the scan
-
doScan
- Throws:
IOException
-
parseFoundXrefTable
- Throws:
IOException
-
trailer
FileTrailer trailer() -
parseFoundObject
- Throws:
IOException
-
parseFoundXrefStream
- Throws:
IOException
-
isValidEntry
- Parameters:
entry-- Returns:
- true if the given xref entry actually points to a valid object definition
-