public IComparer <Transaction> GetDefaultProducerComparer(BlockPreparationContext blockPreparationContext) { IComparer <Transaction> gasPriceComparer = new GasPriceTxComparerForProducer(blockPreparationContext, _specProvider); return(gasPriceComparer .ThenBy(CompareTxByTimestamp.Instance) .ThenBy(CompareTxByPoolIndex.Instance) .ThenBy(CompareTxByGasLimit.Instance)); }
protected override IComparer <Transaction> GetComparer(BlockHeader parent, BlockPreparationContext blockPreparationContext) { _comparer = new CompareTxByPriorityOnSpecifiedBlock(_sendersWhitelist, _priorities, parent); return(_comparer.ThenBy(base.GetComparer(parent, blockPreparationContext))); }
public GasPriceTxComparerForProducer(BlockPreparationContext blockPreparationContext, ISpecProvider specProvider) { _blockPreparationContext = blockPreparationContext; _specProvider = specProvider; }
public IComparer <Transaction> GetProducerComparer(BlockPreparationContext blockPreparationContext) { return(_transactionComparerProvider.GetDefaultProducerComparer(blockPreparationContext)); }
protected virtual IComparer <Transaction> GetComparer(BlockHeader parent, BlockPreparationContext blockPreparationContext) => _transactionComparerProvider.GetDefaultProducerComparer(blockPreparationContext);