Class CompositeProcessor<C extends Context>

  • Type Parameters:
    C - the tye of the contextual object with information and controls over the current state of the parsing process
    All Implemented Interfaces:
    Processor<C>
    Direct Known Subclasses:
    CompositeRowProcessor

    public class CompositeProcessor<C extends Context>
    extends java.lang.Object
    implements Processor<C>
    A utility Processor implementation that facilitates using multiple implementations of Processor at the same time.
    • Constructor Summary

      Constructors 
      Constructor Description
      CompositeProcessor​(Processor... processors)
      Creates a new CompositeProcessor with the list of Processor implementations to be used.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void processEnded​(C context)
      This method will by invoked by the parser once for each Processor used by this class, after the parsing process stopped and all resources were closed.
      void processStarted​(C context)
      Initializes each Processor used by this class.
      void rowProcessed​(java.lang.String[] row, C context)
      Invoked by the parser after all values of a valid record have been processed.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • processors

        private final Processor[] processors
    • Constructor Detail

      • CompositeProcessor

        public CompositeProcessor​(Processor... processors)
        Creates a new CompositeProcessor with the list of Processor implementations to be used.
        Parameters:
        processors - the sequence of Processor implementations to be used.
    • Method Detail

      • processStarted

        public void processStarted​(C context)
        Initializes each Processor used by this class. This is invoked by the parser once, when it is ready to start processing the input.
        Specified by:
        processStarted in interface Processor<C extends Context>
        Parameters:
        context - A contextual object with information and controls over the current state of the parsing process
      • rowProcessed

        public void rowProcessed​(java.lang.String[] row,
                                 C context)
        Invoked by the parser after all values of a valid record have been processed. All Processor implementations will have their corresponding Processor.rowProcessed(String[], Context) method called with the given row.
        Specified by:
        rowProcessed in interface Processor<C extends Context>
        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

        public void processEnded​(C context)
        This method will by invoked by the parser once for each Processor used by this class, 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<C extends Context>
        Parameters:
        context - A contextual object with information and controls over the state of the parsing process