Interface RowProcessor

All Superinterfaces:
Processor<ParsingContext>
All Known Implementing Classes:
AbstractRowProcessor, BatchedColumnProcessor, BatchedObjectColumnProcessor, BeanListProcessor, BeanProcessor, ColumnProcessor, CompositeRowProcessor, ConcurrentRowProcessor, InputValueSwitch, MasterDetailListProcessor, MultiBeanListProcessor, MultiBeanProcessor, MultiBeanRowProcessor, NoopRowProcessor, ObjectColumnProcessor, ObjectRowListProcessor, ObjectRowProcessor, RowListProcessor, RowProcessorSwitch

public interface RowProcessor extends Processor<ParsingContext>
The essential callback interface to handle records parsed by any parser that extends AbstractParser.

When parsing an input, univocity-parsers will obtain the RowProcessor from CommonParserSettings.getRowProcessor(), and delegate each parsed row to rowProcessed(String[], ParsingContext).

Before parsing the first row, the parser will invoke the processStarted(ParsingContext) method. By this time the input buffer will be already loaded and ready to be consumed.

After parsing the last row, all resources are closed and the processing stops. Only after the processEnded(ParsingContext) is called so you can perform any additional housekeeping you might need.

More control and information over the parsing process are provided by the ParsingContext object.

univocity-parsers provides many useful default implementations of this interface in the package com.univocity.parsers.common.processor, namely:

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    This method will by invoked by the parser once, after the parsing process stopped and all resources were closed.
    void
    This method will by invoked by the parser once, when it is ready to start processing the input.
    void
    Invoked by the parser after all values of a valid record have been processed.
  • Method Details

    • processStarted

      void processStarted(ParsingContext context)
      This method will by invoked by the parser once, when it is ready to start processing the input.
      Specified by:
      processStarted in interface Processor<ParsingContext>
      Parameters:
      context - A contextual object with information and controls over the current state of the parsing process
    • rowProcessed

      void rowProcessed(String[] row, ParsingContext context)
      Invoked by the parser after all values of a valid record have been processed.
      Specified by:
      rowProcessed in interface Processor<ParsingContext>
      Parameters:
      row - the data extracted by the parser for an individual record. Note that:
      context - A contextual object with information and controls over the current state of the parsing process
    • processEnded

      void processEnded(ParsingContext context)
      This 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:
      processEnded in interface Processor<ParsingContext>
      Parameters:
      context - A contextual object with information and controls over the state of the parsing process