Class AbstractBeanListProcessor<T,C extends Context>
java.lang.Object
com.univocity.parsers.common.DefaultConversionProcessor
com.univocity.parsers.common.processor.core.BeanConversionProcessor<T>
com.univocity.parsers.common.processor.core.AbstractBeanProcessor<T,C>
com.univocity.parsers.common.processor.core.AbstractBeanListProcessor<T,C>
- Type Parameters:
T- the annotated class type.
- All Implemented Interfaces:
ConversionProcessor,Processor<C>
- Direct Known Subclasses:
BeanListProcessor
public abstract class AbstractBeanListProcessor<T,C extends Context>
extends AbstractBeanProcessor<T,C>
A convenience
Processor implementation for storing all java objects generated form the parsed input into a list.
A typical use case of this class will be:
parserSettings.setRowProcessor(new BeanListProcessor(MyObject.class)); parser.parse(reader); // will invoke the {@link AbstractBeanListProcessor#beanProcessed(Object, C)} method for each generated object. List<T> beans = rowProcessor.getBeans();
- See Also:
-
Field Summary
FieldsFields inherited from class com.univocity.parsers.common.processor.core.BeanConversionProcessor
beanClass, constructor, initialized, methodFilter, parsedFields, strictHeaderValidationEnabled, transformerFields inherited from class com.univocity.parsers.common.DefaultConversionProcessor
conversions -
Constructor Summary
ConstructorsConstructorDescriptionAbstractBeanListProcessor(Class<T> beanType) Creates a processor that stores java beans of a given type into a listAbstractBeanListProcessor(Class<T> beanType, int expectedBeanCount) Creates a processor that stores java beans of a given type into a list -
Method Summary
Modifier and TypeMethodDescriptionvoidbeanProcessed(T bean, C context) Stores the generated java bean produced with a parsed record into a list.getBeans()Returns the list of generated java beans at the end of the parsing process.String[]Returns the record headers.voidprocessEnded(C context) This method will by invoked by the parser once, after the parsing process stopped and all resources were closed.voidprocessStarted(C context) This method will by invoked by the parser once, when it is ready to start processing the input.Methods inherited from class com.univocity.parsers.common.processor.core.AbstractBeanProcessor
rowProcessedMethods inherited from class com.univocity.parsers.common.processor.core.BeanConversionProcessor
addConversion, cloneConversions, createBean, createNestedProcessor, describeField, getBeanClass, getColumnMapper, getNestedAttributes, initialize, initialize, initialize, isStrictHeaderValidationEnabled, mapValuesToFields, processField, processField, processNestedAttributes, reverseConversions, setColumnMapper, setStrictHeaderValidationEnabled, validateMappingsMethods inherited from class com.univocity.parsers.common.DefaultConversionProcessor
applyConversions, convertAll, convertFields, convertIndexes, convertType, handleConversionError, initializeConversions, reverseConversions, toDataProcessingException
-
Field Details
-
beans
-
headers
-
expectedBeanCount
private final int expectedBeanCount
-
-
Constructor Details
-
AbstractBeanListProcessor
Creates a processor that stores java beans of a given type into a list- Parameters:
beanType- the class with its attributes mapped to fields of records parsed by anAbstractParseror written by anAbstractWriter.
-
AbstractBeanListProcessor
Creates a processor that stores java beans of a given type into a list- Parameters:
beanType- the class with its attributes mapped to fields of records parsed by anAbstractParseror written by anAbstractWriter.expectedBeanCount- expected number of rows to be parsed from the input which will be converted into java beans. Used to pre-allocate the size of the outputListreturned bygetBeans()
-
-
Method Details
-
beanProcessed
Stores the generated java bean produced with a parsed record into a list.- Specified by:
beanProcessedin classAbstractBeanProcessor<T,C extends Context> - Parameters:
bean- java bean generated with the information extracted by the parser for an individual recordcontext- A contextual object with information and controls over the current state of the parsing process- See Also:
-
getBeans
Returns the list of generated java beans at the end of the parsing process.- Returns:
- the list of generated java beans at the end of the parsing process.
-
processStarted
Description copied from interface:ProcessorThis method will by invoked by the parser once, when it is ready to start processing the input.- Specified by:
processStartedin interfaceProcessor<T>- Overrides:
processStartedin classAbstractBeanProcessor<T,C extends Context> - Parameters:
context- A contextual object with information and controls over the current state of the parsing process
-
processEnded
Description copied from interface:ProcessorThis method will by invoked by the parser once, after the parsing process stopped and all resources were closed.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().- Specified by:
processEndedin interfaceProcessor<T>- Overrides:
processEndedin classAbstractBeanProcessor<T,C extends Context> - Parameters:
context- A contextual object with information and controls over the state of the parsing process
-
getHeaders
Returns the record headers. This can be either the headers defined inCommonSettings.getHeaders()or the headers parsed in the file whenCommonSettings.getHeaders()equals true- Returns:
- the headers of all records parsed.
-