Ejemplo n.º 1
0
        public IrreversibleBlockHandler(
            IIrreversibleBlockListener listener
            )
        {
            _listener = listener;

            // TODO: Subscribe on irreversible block changed event, and call OnIrreversibleBlockChangedAsync() method
        }
        public IrreversibleBlockMonitor(
            ILogFactory logFactory,
            IIrreversibleBlockProvider irreversibleBlockProvider,
            IIrreversibleBlockListener irreversibleBlockListener,
            TimeSpan monitoringPeriod)
        {
            _irreversibleBlockProvider = irreversibleBlockProvider;
            _irreversibleBlockListener = irreversibleBlockListener;

            if (monitoringPeriod <= TimeSpan.Zero)
            {
                throw new ArgumentOutOfRangeException(nameof(monitoringPeriod), monitoringPeriod, "Should be positive time period");
            }

            _timer            = new TimerTrigger(nameof(IrreversibleBlockMonitor), monitoringPeriod, logFactory);
            _timer.Triggered += HandleMonitoringTimer;
        }