public abstract class AbstractObjectProcessor<T extends Context> extends DefaultConversionProcessor implements Processor<T>
Processor
implementation for converting rows extracted from any implementation of AbstractParser
into arrays of objects.
This uses the value conversions provided by Conversion
instances.
For each row processed, a sequence of conversions will be executed and stored in an object array, at its original position.
The row with the result of these conversions will then be sent to the rowProcessed(Object[], Context)
method, where the user can access it.
AbstractParser
,
Processor
conversions
Constructor and Description |
---|
AbstractObjectProcessor() |
Modifier and Type | Method and Description |
---|---|
void |
processEnded(T context)
This method will by invoked by the parser once, after the parsing process stopped and all resources were closed.
|
void |
processStarted(T context)
This method will by invoked by the parser once, when it is ready to start processing the input.
|
abstract void |
rowProcessed(Object[] row,
T context)
Invoked by the processor after all values of a valid record have been processed and converted into an Object array.
|
void |
rowProcessed(String[] row,
T context)
Executes the sequences of conversions defined using
DefaultConversionProcessor.convertFields(Conversion...) ,
DefaultConversionProcessor.convertIndexes(Conversion...) and DefaultConversionProcessor.convertAll(Conversion...) ,
for every field in the given row. |
applyConversions, convertAll, convertFields, convertIndexes, convertType, handleConversionError, initializeConversions, reverseConversions, toDataProcessingException
public void rowProcessed(String[] row, T context)
DefaultConversionProcessor.convertFields(Conversion...)
,
DefaultConversionProcessor.convertIndexes(Conversion...)
and DefaultConversionProcessor.convertAll(Conversion...)
,
for every field in the given row.
Each field will be transformed using the Conversion.execute(Object)
method.
In general the conversions will process a String and convert it to some object value (such as booleans, dates, etc).
rowProcessed
in interface Processor<T extends Context>
row
- the parsed record with its individual records as extracted from the original input.context
- the current state of the parsing process.
Fields that do not have any conversion defined will just be copied to the object array into their original positions.
public abstract void rowProcessed(Object[] row, T context)
row
- object array created with the information extracted by the parser and then converted.context
- A contextual object with information and controls over the current state of the parsing processpublic void processStarted(T context)
Processor
processStarted
in interface Processor<T extends Context>
context
- A contextual object with information and controls over the current state of the parsing processpublic void processEnded(T context)
Processor
It will always be called by the parser: in case of errors, if the end of the input us reached, or if the user stopped the process manually using Context.stop()
.
processEnded
in interface Processor<T extends Context>
context
- A contextual object with information and controls over the state of the parsing processCopyright © 2020 Univocity Software Pty Ltd. All rights reserved.