# Class RowCollector<A>

java.lang.Object
uk.ac.starlink.table.RowCollector<A>

All Implemented Interfaces:
  `uk.ac.starlink.util.SplitCollector<RowSplittable, A>`

public abstract class RowCollector<A> extends Object implements uk.ac.starlink.util.SplitCollector<RowSplittable, A>
Convenience implementation of `SplitCollector` for use with table row processing.

Since:
  5 Aug 2020
Author:
  Mark Taylor

## Constructor Summary

Constructors
Constructor
Description
`RowCollector()`

## Method Summary

Modifier and Type
Method
Description
`final void`
`accumulate(RowSplittable rseq, A acc)`
`abstract void`
`accumulateRows(RowSplittable rseq, A acc)`
Processes rows as required.

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface uk.ac.starlink.util.SplitCollector

`combine, createAccumulator`

## Constructor Details

### RowCollector

public RowCollector()

## Method Details

### accumulateRows

public abstract void accumulateRows(RowSplittable rseq, A acc) throws IOException
Processes rows as required. This method is invoked by `accumulate(RowSplittable, A)`, with the necessary IOException handling. Implementations do not need to close the supplied row sequence, which will be taken care of elsewhere.

Parameters:
  `rseq` - row sequence
  `acc` - accumulator
Throws:
  `IOException`

### accumulate

public final void accumulate(RowSplittable rseq, A acc)

Specified by:
  `accumulate` in interface `uk.ac.starlink.util.SplitCollector<RowSplittable, A>`