private void ProcessBlock(Block block) { foreach (var inputRecord in block.InputRecords) { //apply transformations here block.OutputRecords.Add(inputRecord); } _outputQueue.Add(block); }
protected void SubmitToProcess(Block block) { var blockProcessor = _blockProcessorFactory.Create(_outputQueue); _blockProcessorTasks.Add(blockProcessor.Process(block)); }
public Task Process(Block block) { var blockToProcess = block; return Task.Factory.StartNew(() => ProcessBlock(blockToProcess)); }
protected Block CreateBlock(IEnumerable<IRowRecord> inputRecords, bool isLastBlock = false) { var block = new Block(_blockNumber, inputRecords, _blockNumber == 0, isLastBlock); _blockNumber++; return block; }