Exemplo n.º 1
0
 public ConsumerServicesBackgroundProcessor(
     IAccountService accountService,
     IRefundClaimant refundClaimant,
     IDepositConfirmationService depositConfirmationService,
     IGasPriceService gasPriceService,
     IBlockProcessor blockProcessor,
     IDepositDetailsRepository depositRepository,
     IConsumerNotifier consumerNotifier,
     ILogManager logManager,
     IPriceService priceService,
     bool useDepositTimer = false,
     IEthJsonRpcClientProxy?ethJsonRpcClientProxy = null,
     uint depositTimer = 10000)
 {
     _accountService             = accountService;
     _refundClaimant             = refundClaimant;
     _depositConfirmationService = depositConfirmationService;
     _gasPriceService            = gasPriceService;
     _blockProcessor             = blockProcessor;
     _consumerNotifier           = consumerNotifier;
     _priceService          = priceService;
     _depositRepository     = depositRepository;
     _useDepositTimer       = useDepositTimer;
     _ethJsonRpcClientProxy = ethJsonRpcClientProxy;
     _depositTimerPeriod    = depositTimer;
     _logger = logManager.GetClassLogger();
     _gasPriceService.UpdateGasPriceAsync();
     _priceService.UpdateAsync(_currencies);
 }
 public void Setup()
 {
     _blockchainBridge           = Substitute.For <INdmBlockchainBridge>();
     _consumerNotifier           = Substitute.For <IConsumerNotifier>();
     _depositRepository          = Substitute.For <IDepositDetailsRepository>();
     _depositService             = Substitute.For <IDepositService>();
     _requiredBlockConfirmations = 2;
     _depositConfirmationService = new DepositConfirmationService(_blockchainBridge, _consumerNotifier,
                                                                  _depositRepository, _depositService, LimboLogs.Instance, _requiredBlockConfirmations);
 }
Exemplo n.º 3
0
 public ConsumerServicesBackgroundProcessor(IAccountService accountService, IRefundClaimant refundClaimant,
                                            IDepositConfirmationService depositConfirmationService, IBlockProcessor blockProcessor,
                                            IDepositDetailsRepository depositRepository, IConsumerNotifier consumerNotifier, ILogManager logManager,
                                            uint tryClaimRefundsIntervalMilliseconds = 60000)
 {
     _accountService             = accountService;
     _refundClaimant             = refundClaimant;
     _depositConfirmationService = depositConfirmationService;
     _blockProcessor             = blockProcessor;
     _depositRepository          = depositRepository;
     _consumerNotifier           = consumerNotifier;
     _logger = logManager.GetClassLogger();
     _timer  = new Timer(tryClaimRefundsIntervalMilliseconds);
 }
        public void Setup()
        {
            DataAssetProvider provider = new DataAssetProvider(_providerAddress, "provider");

            _asset   = new DataAsset(Keccak.Compute("1"), "name", "desc", 1, DataAssetUnitType.Unit, 1000, 10000, new DataAssetRules(new DataAssetRule(1)), provider, state: DataAssetState.Published);
            _deposit = new Deposit(Keccak.Zero, 1, 2, 3);
            _details = new DepositDetails(_deposit, _asset, Address.Zero, new byte[0], 1, new TransactionInfo[0]);

            IAccountService             accountService             = Substitute.For <IAccountService>();
            IRefundClaimant             refundClaimant             = Substitute.For <IRefundClaimant>();
            IDepositConfirmationService depositConfirmationService = Substitute.For <IDepositConfirmationService>();
            IEthPriceService            ethPriceService            = Substitute.For <IEthPriceService>();
            IGasPriceService            gasPriceService            = Substitute.For <IGasPriceService>();

            _blockProcessor = Substitute.For <IBlockProcessor>();
            IConsumerNotifier         notifier   = new ConsumerNotifier(Substitute.For <INdmNotifier>());
            IDepositDetailsRepository repository = new DepositDetailsInMemoryRepository(new DepositsInMemoryDb());

            repository.AddAsync(_details);
            _processor = new ConsumerServicesBackgroundProcessor(accountService, refundClaimant, depositConfirmationService, ethPriceService, gasPriceService, _blockProcessor, repository, notifier, LimboLogs.Instance);
        }
 public ConsumerServicesBackgroundProcessor(IAccountService accountService, IRefundClaimant refundClaimant,
                                            IDepositConfirmationService depositConfirmationService, IBlockProcessor blockProcessor,
                                            IDepositDetailsRepository depositRepository, IConsumerNotifier consumerNotifier, ILogManager logManager,
                                            uint tryClaimRefundsIntervalMilliseconds     = 60000, bool useDepositTimer = false,
                                            IEthJsonRpcClientProxy ethJsonRpcClientProxy = null, uint depositTimer     = 10000)
 {
     _accountService             = accountService;
     _refundClaimant             = refundClaimant;
     _depositConfirmationService = depositConfirmationService;
     _blockProcessor             = blockProcessor;
     _depositRepository          = depositRepository;
     _consumerNotifier           = consumerNotifier;
     _useDepositTimer            = useDepositTimer;
     _ethJsonRpcClientProxy      = ethJsonRpcClientProxy;
     _logger           = logManager.GetClassLogger();
     _refundClaimTimer = new Timer(tryClaimRefundsIntervalMilliseconds);
     if (_useDepositTimer)
     {
         _depositTimer = new Timer(depositTimer);
     }
 }