Class PdfReader
Obtains records from the rows of one table extracted from a
PdfDocument, with one field per cell.-
Nested Class Summary
Nested classes/interfaces inherited from class com.northconcepts.datapipeline.core.DataEndpoint
DataEndpoint.State -
Field Summary
Fields inherited from class com.northconcepts.datapipeline.core.DataReader
fieldLineage, recordLineageFields inherited from class com.northconcepts.datapipeline.core.DataEndpoint
lastRecord, PRODUCT, PRODUCT_VERSION, VENDOR, XML_INPUT_FACTORY_KEYFields inherited from class com.northconcepts.datapipeline.core.Endpoint
BUFFER_SIZE, captureElapsedTime, DEFAULT_READ_BUFFER_SIZEFields inherited from class com.northconcepts.datapipeline.core.DataObject
id, log, name, TIMESTAMP_FORMAT -
Constructor Summary
ConstructorsConstructorDescriptionPdfReader(PdfDocument pdfDocument) Creates a reader for a document that must already be opened when this reader opens. -
Method Summary
Modifier and TypeMethodDescriptionaddExceptionProperties(DataException exception) Adds this endpoint's current state to aDataException.voidclose()Indicates that this endpoint has finished reading or writing.intReturns the 0-based index, counted across the whole document, of the table to read (default is 0).booleanIndicates if the PdfDocument should be closed when this endpoint is closed.booleanIndicates if the table's first row holds the field names instead of data (default is false).voidopen()Makes this endpoint ready for reading or writing.protected RecordreadImpl()Overridden by subclasses to read the next record from thisDataReader.setAutoCloseDocument(boolean autoCloseDocument) Indicates if the PdfDocument should be closed when this endpoint is closed.setFieldNamesInFirstRow(boolean fieldNamesInFirstRow) Indicates if the table's first row holds the field names instead of data (default is false).setTableIndex(int tableIndex) Sets the 0-based index, counted across the whole document, of the table to read (default is 0).Methods inherited from class com.northconcepts.datapipeline.core.DataReader
addLineage, available, getBufferSize, getNestedEndpoint, getNestedReader, getReader, getRootEndpoint, getRootReader, isExhausted, isLineageSupported, isSaveLineage, peek, pop, push, read, setSaveLineage, skipMethods inherited from class com.northconcepts.datapipeline.core.DataEndpoint
decrementRecordCount, enableJmx, getLastRecord, getRecordCount, getRecordCountAsBigInteger, getRecordCountAsString, incrementRecordCount, isRecordCountBigInteger, resetRecordCount, toStringMethods inherited from class com.northconcepts.datapipeline.core.Endpoint
addElapsedtime, assertClosed, assertNotOpened, assertOpened, finalize, getClosedOn, getDescription, getElapsedTime, getElapsedTimeAsString, getOpenedOn, getOpenElapsedTime, getOpenElapsedTimeAsString, getSelfTime, getSelfTimeAsString, getState, isCaptureElapsedTime, isClosed, isOpen, setCaptureElapsedTime, setDescription
-
Constructor Details
-
PdfReader
Creates a reader for a document that must already be opened when this reader opens.
-
-
Method Details
-
open
Description copied from class:DataEndpointMakes this endpoint ready for reading or writing.- Overrides:
openin classIntegrationReader- Throws:
DataException
-
close
Description copied from class:DataEndpointIndicates that this endpoint has finished reading or writing.- Overrides:
closein classDataEndpoint- Throws:
DataException
-
readImpl
Description copied from class:DataReaderOverridden by subclasses to read the next record from thisDataReader. The default implementation ofDataReader.read()now insures that this method will not be called again after it returns anull.If no record is available,
nullwill be returned.Contract for subclasses (see also
docs/authoring/DataReader.md):- Return
nullexactly once to signal end-of-stream. - Do not call this method directly —
DataReader.read()is the template method that wraps exceptions, increments the record count, and tracks lineage. - Do not call
DataEndpoint.incrementRecordCount()here;DataReader.read()already does. - Throw raw exceptions;
DataReader.read()wraps them viaexception(throwable).
- Specified by:
readImplin classDataReader- Throws:
Throwable
- Return
-
isFieldNamesInFirstRow
public boolean isFieldNamesInFirstRow()Indicates if the table's first row holds the field names instead of data (default is false). -
setFieldNamesInFirstRow
Indicates if the table's first row holds the field names instead of data (default is false). -
getTableIndex
public int getTableIndex()Returns the 0-based index, counted across the whole document, of the table to read (default is 0). -
setTableIndex
Sets the 0-based index, counted across the whole document, of the table to read (default is 0). -
getDocumentStatistics
-
setAutoCloseDocument
Indicates if the PdfDocument should be closed when this endpoint is closed. The default isfalse. -
isAutoCloseDocument
public boolean isAutoCloseDocument()Indicates if the PdfDocument should be closed when this endpoint is closed. The default isfalse. -
addExceptionProperties
Description copied from class:EndpointAdds this endpoint's current state to aDataException. Since this method is called whenever an exception is thrown, subclasses should override it to add their specific information.- Overrides:
addExceptionPropertiesin classDataReader
-