Class AbstractBatchedObjectColumnProcessor<T extends Context>

    • Constructor Detail

      • AbstractBatchedObjectColumnProcessor

        public AbstractBatchedObjectColumnProcessor​(int rowsPerBatch)
        Constructs a abstract batched column processor configured to invoke the batchesProcessed method after a given number of rows has been processed.
        Parameters:
        rowsPerBatch - the number of rows to process in each batch.
    • Method Detail

      • processStarted

        public void processStarted​(T context)
        Description copied from interface: Processor
        This method will by invoked by the parser once, when it is ready to start processing the input.
        Specified by:
        processStarted in interface Processor<T extends Context>
        Overrides:
        processStarted in class AbstractObjectProcessor<T 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.Object[] row,
                                 T context)
        Description copied from class: AbstractObjectProcessor
        Invoked by the processor after all values of a valid record have been processed and converted into an Object array.
        Specified by:
        rowProcessed in class AbstractObjectProcessor<T extends Context>
        Parameters:
        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 process
      • processEnded

        public void processEnded​(T context)
        Description copied from interface: Processor
        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<T extends Context>
        Overrides:
        processEnded in class AbstractObjectProcessor<T extends Context>
        Parameters:
        context - A contextual object with information and controls over the state of the parsing process
      • getHeaders

        public final java.lang.String[] getHeaders()
      • getColumnValuesAsList

        public final java.util.List<java.util.List<java.lang.Object>> getColumnValuesAsList()
      • putColumnValuesInMapOfNames

        public final void putColumnValuesInMapOfNames​(java.util.Map<java.lang.String,​java.util.List<java.lang.Object>> map)
      • putColumnValuesInMapOfIndexes

        public final void putColumnValuesInMapOfIndexes​(java.util.Map<java.lang.Integer,​java.util.List<java.lang.Object>> map)
      • getColumnValuesAsMapOfNames

        public final java.util.Map<java.lang.String,​java.util.List<java.lang.Object>> getColumnValuesAsMapOfNames()
      • getColumnValuesAsMapOfIndexes

        public final java.util.Map<java.lang.Integer,​java.util.List<java.lang.Object>> getColumnValuesAsMapOfIndexes()
      • getColumn

        public java.util.List<java.lang.Object> getColumn​(java.lang.String columnName)
      • getColumn

        public java.util.List<java.lang.Object> getColumn​(int columnIndex)
      • getColumn

        public <V> java.util.List<V> getColumn​(java.lang.String columnName,
                                               java.lang.Class<V> columnType)
        Returns the values of a given column.
        Type Parameters:
        V - the type of data in that column
        Parameters:
        columnName - the name of the column in the input.
        columnType - the type of data in that column
        Returns:
        a list with all data stored in the given column
      • getColumn

        public <V> java.util.List<V> getColumn​(int columnIndex,
                                               java.lang.Class<V> columnType)
        Returns the values of a given column.
        Type Parameters:
        V - the type of data in that column
        Parameters:
        columnIndex - the position of the column in the input (0-based).
        columnType - the type of data in that column
        Returns:
        a list with all data stored in the given column
      • getRowsPerBatch

        public int getRowsPerBatch()
      • getBatchesProcessed

        public int getBatchesProcessed()
      • batchProcessed

        public abstract void batchProcessed​(int rowsInThisBatch)