package gw.exportimport /** * This class is a fully implemented {@link RowProcessedListener} in addition to subclassing {@link AbstractAsynchronousExecutor}. * */ @ReadOnly abstract class AbstractAsynchronousRowExecutor extends AbstractAsynchronousExecutor implements RowProcessedListener { var _maxRows : int as readonly MaxRows var _rowsProcessed : int as readonly Row override protected function initialize() { super.initialize() _maxRows = 0 _rowsProcessed = 0 } override final function maxRowsCalculated(rows : int) { _maxRows = rows } override final function rowProcessed() { _rowsProcessed++ } override final property get MaxCount() : int { return _maxRows } override final property get Count() : int { return _rowsProcessed } }