public PowBlockValidator(IBlockFinalizer blockFinalizer, ITransactionValidator transactionValidator, ITimestamper timestamper, ISigner signer) { _blockFinalizer = blockFinalizer ?? throw new ArgumentNullException(nameof(blockFinalizer)); _transactionValidator = transactionValidator ?? throw new ArgumentNullException(nameof(transactionValidator)); _timestamper = timestamper ?? throw new ArgumentNullException(nameof(timestamper)); _signer = signer ?? throw new ArgumentNullException(nameof(signer)); }
public PowBlockCreator(ITimestamper timestamper, IBlockValidator validator, IBlockFinalizer blockFinalizer, ITransactionValidator transactionValidator) { _timestamper = timestamper ?? throw new ArgumentNullException(nameof(timestamper)); _validator = validator ?? throw new ArgumentNullException(nameof(validator)); _blockFinalizer = blockFinalizer ?? throw new ArgumentNullException(nameof(blockFinalizer)); _transactionValidator = transactionValidator ?? throw new ArgumentNullException(nameof(transactionValidator)); EventPublisher.GetInstance().OnValidatedBlockCreated += OnValidatedBlockCreated; }