public BlockCrawlOrchestrator(IEthApiContractService ethApi, IEnumerable <BlockProcessingSteps> processingStepsCollection) { this.ProcessingStepsCollection = processingStepsCollection; EthApi = ethApi; BlockCrawlerStep = new BlockCrawlerStep(ethApi); TransactionWithBlockCrawlerStep = new TransactionCrawlerStep(ethApi); TransactionWithReceiptCrawlerStep = new TransactionReceiptCrawlerStep(ethApi); ContractCreatedCrawlerStep = new ContractCreatedCrawlerStep(ethApi); FilterLogCrawlerStep = new FilterLogCrawlerStep(ethApi); }
public virtual async Task CrawlBlock(BigInteger blockNumber) { var blockCrawlerStepCompleted = await BlockCrawlerStep.ExecuteStepAsync(blockNumber, ProcessingStepsCollection); await CrawlTransactions(blockCrawlerStepCompleted); }