public ExchangeController(IExchangeContractService exchangeContractService, ILog logger, IPendingOperationService pendingOperationService) { _addressUtil = new AddressUtil(); _exchangeContractService = exchangeContractService; _logger = logger; _pendingOperationService = pendingOperationService; }
public MonitoringCoinTransactionJob(ILog log, ICoinTransactionService coinTransactionService, IBaseSettings settings, ISlackNotifier slackNotifier, ICoinEventService coinEventService, IPendingTransactionsRepository pendingTransactionsRepository, IPendingOperationService pendingOperationService, ITransactionEventsService transactionEventsService, IEventTraceRepository eventTraceRepository, IUserTransferWalletRepository userTransferWalletRepository, IEthereumTransactionService ethereumTransactionService, IBlackListAddressesRepository blackListAddressesRepository, IWhiteListAddressesRepository whiteListAddressesRepository) { _ethereumTransactionService = ethereumTransactionService; _transactionEventsService = transactionEventsService; _settings = settings; _log = log; _coinTransactionService = coinTransactionService; _slackNotifier = slackNotifier; _coinEventService = coinEventService; _pendingTransactionsRepository = pendingTransactionsRepository; _pendingOperationService = pendingOperationService; _eventTraceRepository = eventTraceRepository; _userTransferWalletRepository = userTransferWalletRepository; _broadcastMonitoringPeriodSeconds = TimeSpan.FromSeconds(_settings.BroadcastMonitoringPeriodSeconds); _blackListAddressesRepository = blackListAddressesRepository; _whiteListAddressesRepository = whiteListAddressesRepository; }
public CoinEventResubmittJob( ILog log, IBaseSettings settings, IPendingOperationService pendingOperationService, IExchangeContractService exchangeContractService, ICoinEventService coinEventService, ITransferContractService transferContractService, IEventTraceRepository eventTraceRepository, IEthereumTransactionService ethereumTransactionService, IQueueFactory queueFactory, ISlackNotifier slackNotifier, IOperationResubmittRepository operationResubmittRepository) { _eventTraceRepository = eventTraceRepository; _exchangeContractService = exchangeContractService; _pendingOperationService = pendingOperationService; _settings = settings; _log = log; _coinEventService = coinEventService; _transferContractService = transferContractService; _ethereumTransactionService = ethereumTransactionService; _transactionMonitoringQueue = queueFactory.Build(Constants.TransactionMonitoringQueue); _slackNotifier = slackNotifier; _operationResubmittRepository = operationResubmittRepository; }
public TransferCommandHandler( IAssetsService assetsService, ILog logger, IPendingOperationService pendingOperationService) { _assetsService = assetsService; _logger = logger; _pendingOperationService = pendingOperationService; _addressUtil = new AddressUtil(); }
public CashoutCommandHandler( IAssetsService assetsService, IHotWalletService hotWalletService, ILog logger, IPendingOperationService pendingOperationService) { _assetsService = assetsService; _hotWalletService = hotWalletService; _logger = logger; _pendingOperationService = pendingOperationService; _addressUtil = new AddressUtil(); }
public MonitoringOperationJob( ILog log, IBaseSettings settings, IPendingOperationService pendingOperationService, IExchangeContractService exchangeContractService, ICoinEventService coinEventService, ITransferContractService transferContractService, IEventTraceRepository eventTraceRepository, IQueueFactory queueFactory, SettingsWrapper settingsWrapper) { _eventTraceRepository = eventTraceRepository; _exchangeContractService = exchangeContractService; _pendingOperationService = pendingOperationService; _settings = settings; _log = log; _coinEventService = coinEventService; _transferContractService = transferContractService; _coinEventResubmittQueue = queueFactory.Build(Constants.CoinEventResubmittQueue); _settingsWrapper = settingsWrapper; _hotWalletAddress = _settingsWrapper.Ethereum.HotwalletAddress.ToLower(); }
static async Task SendTransactionFromMainExchange() { string operationId = ""; IPendingOperationService pendingOperationService = ServiceProvider.GetService <IPendingOperationService>(); try { MonitoringOperationJob job = ServiceProvider.GetService <MonitoringOperationJob>(); IExchangeContractService exchangeContractService = ServiceProvider.GetService <IExchangeContractService>(); string filePath = Path.Combine(AppContext.BaseDirectory, "transferTransaction.txt"); var content = File.ReadAllText(filePath); TransferModel model = Newtonsoft.Json.JsonConvert.DeserializeObject <TransferModel>(content); var addressUtil = new AddressUtil(); BigInteger amount = BigInteger.Parse(model.Amount); operationId = await pendingOperationService.TransferWithNoChecks(model.Id, model.CoinAdapterAddress, addressUtil.ConvertToChecksumAddress(model.FromAddress), addressUtil.ConvertToChecksumAddress(model.ToAddress), amount, model.Sign); Console.WriteLine($"OperationId - {operationId}"); await job.ProcessOperation(new Services.New.Models.OperationHashMatchMessage() { OperationId = operationId, }, null, exchangeContractService.TransferWithoutSignCheck); Console.WriteLine("Start removing from processing queue"); await pendingOperationService.RemoveFromPendingOperationQueue(operationId); Console.WriteLine("Stop removing from processing queue"); } catch (Exception e) { Console.WriteLine($"{e.Message} - {e.StackTrace}"); Console.WriteLine("Start removing from processing queue"); await pendingOperationService.RemoveFromPendingOperationQueue(operationId); Console.WriteLine("Stop removing from processing queue"); } }