Class MasterDetailProcessor
java.lang.Object
com.univocity.parsers.common.DefaultConversionProcessor
com.univocity.parsers.common.processor.core.AbstractObjectProcessor<T>
com.univocity.parsers.common.processor.core.AbstractMasterDetailProcessor<ParsingContext>
com.univocity.parsers.common.processor.MasterDetailProcessor
- All Implemented Interfaces:
ConversionProcessor
,Processor<ParsingContext>
A
RowProcessor
implementation for associating rows extracted from any implementation of AbstractParser
into MasterDetailRecord
instances.
For each row processed, a call to AbstractMasterDetailProcessor.isMasterRecord(String[], Context)
will be made to identify whether or not it is a master row.
The detail rows are automatically associated with the master record in an instance of MasterDetailRecord
.
When the master record is fully processed (i.e. MasterDetailRecord
contains a master row and all associated detail rows),
it is sent to the user for processing in AbstractMasterDetailProcessor.masterDetailRecordProcessed(MasterDetailRecord, Context)
.
Note this class extends ObjectRowProcessor
and value conversions provided by Conversion
instances are fully supported.
-
Field Summary
Fields inherited from class com.univocity.parsers.common.DefaultConversionProcessor
conversions
-
Constructor Summary
ConstructorsConstructorDescriptionMasterDetailProcessor
(ObjectRowListProcessor detailProcessor) MasterDetailProcessor
(RowPlacement rowPlacement, ObjectRowListProcessor detailProcessor) Creates a MasterDetailProcessor -
Method Summary
Methods inherited from class com.univocity.parsers.common.processor.core.AbstractMasterDetailProcessor
isMasterRecord, masterDetailRecordProcessed, processEnded, processStarted, rowProcessed, rowProcessed
Methods inherited from class com.univocity.parsers.common.DefaultConversionProcessor
applyConversions, convertAll, convertFields, convertIndexes, convertType, handleConversionError, initializeConversions, reverseConversions, toDataProcessingException
-
Constructor Details
-
MasterDetailProcessor
Creates a MasterDetailProcessor- Parameters:
rowPlacement
- indication whether the master records are placed in relation its detail records in the input.Master record (Totals) Master record (Totals) above detail records under detail records Totals | 100 Item | 60 Item | 60 Item | 40 Item | 40 Totals | 100
detailProcessor
- theObjectRowListProcessor
that processes detail rows.
-
MasterDetailProcessor
-