ConversionProcessor
, Processor<T>
ObjectRowListProcessor
public abstract class AbstractObjectListProcessor<T extends Context> extends AbstractObjectProcessor<T>
Processor
implementation for storing all rows parsed and converted to Object arrays into a list.
A typical use case of this class will be:
ObjectRowListProcessor processor = new ObjectRowListProcessor(); processor.convertIndexes(Conversions.toBigDecimal()).set(4, 6); parserSettings.setRowProcessor(new ObjectRowListProcessor()); parser.parse(reader); // will invoke the {@link AbstractObjectListProcessor#rowProcessed(Object[], T)} method for each parsed record. String[] headers = rowProcessor.getHeaders(); List<Object[]> rows = rowProcessor.getRows(); BigDecimal value1 = (BigDecimal) row.get(4); BigDecimal value2 = (BigDecimal) row.get(6);
AbstractParser
,
Processor
,
AbstractProcessor
,
AbstractObjectProcessor
Constructor | Description |
---|---|
AbstractObjectListProcessor() |
Modifier and Type | Method | Description |
---|---|---|
java.lang.String[] |
getHeaders() |
Returns the record headers.
|
java.util.List<java.lang.Object[]> |
getRows() |
Returns the list of parsed and converted records
|
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.
|
void |
rowProcessed(java.lang.Object[] row,
T context) |
Stores the row extracted by the parser and them converted to an Object array into a list.
|
rowProcessed
applyConversions, convertAll, convertFields, convertIndexes, convertType, handleConversionError, initializeConversions, reverseConversions, toDataProcessingException
public void processStarted(T context)
Processor
processStarted
in interface Processor<T extends Context>
processStarted
in class AbstractObjectProcessor<T extends Context>
context
- A contextual object with information and controls over the current state of the parsing processpublic void rowProcessed(java.lang.Object[] row, T context)
rowProcessed
in class AbstractObjectProcessor<T extends Context>
row
- the data extracted by the parser for an individual record and converted to an Object array.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>
processEnded
in class AbstractObjectProcessor<T extends Context>
context
- A contextual object with information and controls over the state of the parsing processpublic java.util.List<java.lang.Object[]> getRows()
public java.lang.String[] getHeaders()
CommonSettings.getHeaders()
or the headers parsed in the file when CommonSettings.getHeaders()
equals true