Example #1
0
 public HotWalletService(IBaseSettings baseSettings,
                         IQueueFactory queueFactory,
                         IHotWalletOperationRepository hotWalletCashoutRepository,
                         IPrivateWalletService privateWalletService,
                         IErc20PrivateWalletService erc20PrivateWalletService,
                         ISignatureService signatureService,
                         ILog log,
                         Web3 web3,
                         IHotWalletTransactionRepository hotWalletCashoutTransactionRepository,
                         [KeyFilter(Constants.DefaultKey)] IErc20DepositContractService erc20DepositContractService,
                         AppSettings settingsWrapper,
                         IUserTransferWalletRepository userTransferWalletRepository,
                         IGasPriceRepository gasPriceRepository)
 {
     _hotWalletTransactionMonitoringQueue = queueFactory.Build(Constants.HotWalletTransactionMonitoringQueue);
     _hotWalletCashoutQueue      = queueFactory.Build(Constants.HotWalletCashoutQueue);
     _baseSettings               = baseSettings;//.HotWalletAddress
     _hotWalletCashoutRepository = hotWalletCashoutRepository;
     _privateWalletService       = privateWalletService;
     _erc20PrivateWalletService  = erc20PrivateWalletService;
     _log  = log;
     _web3 = web3;
     _hotWalletCashoutTransactionRepository = hotWalletCashoutTransactionRepository;
     _signatureService             = signatureService;
     _erc20DepositContractService  = erc20DepositContractService;
     _settingsWrapper              = settingsWrapper;
     _userTransferWalletRepository = userTransferWalletRepository;
     _semaphores         = new ConcurrentDictionary <string, SemaphoreSlim>();
     _gasPriceRepository = gasPriceRepository;
 }
Example #2
0
 public AirlinesHotWalletMonitoringTransactionJob(ILog log,
                                                  ICoinTransactionService coinTransactionService,
                                                  AppSettings settings,
                                                  ISlackNotifier slackNotifier,
                                                  IEthereumTransactionService ethereumTransactionService,
                                                  [KeyFilter(Constants.AirLinesKey)] IHotWalletTransactionRepository hotWalletCashoutTransactionRepository,
                                                  [KeyFilter(Constants.AirLinesKey)] IHotWalletOperationRepository hotWalletCashoutRepository,
                                                  IRabbitQueuePublisher rabbitQueuePublisher,
                                                  ILykkePayEventsService transactionEventsService,
                                                  IUserTransferWalletRepository userTransferWalletRepository,
                                                  [KeyFilter(Constants.AirLinesKey)] IAirlinesErc20DepositContractService erc20DepositContractService,
                                                  IQueueFactory queueFactory)
 {
     _transactionEventsService   = transactionEventsService;
     _ethereumTransactionService = ethereumTransactionService;
     _settings = settings;
     _log      = log;
     _coinTransactionService = coinTransactionService;
     _slackNotifier          = slackNotifier;
     _hotWalletCashoutTransactionRepository = hotWalletCashoutTransactionRepository;
     _hotWalletCashoutRepository            = hotWalletCashoutRepository;
     _rabbitQueuePublisher         = rabbitQueuePublisher;
     _userTransferWalletRepository = userTransferWalletRepository;
     _erc20DepositContractService  = erc20DepositContractService;
     _transferStartQueue           = queueFactory.Build(Constants.AirlinesErc223TransferQueue);
 }
Example #3
0
 public LykkePayTransferNotificationJob(AppSettings settings,
                                        ILog logger,
                                        [KeyFilter(Constants.LykkePayKey)] IHotWalletOperationRepository operationsRepository,
                                        IRabbitQueuePublisher rabbitQueuePublisher,
                                        IWeb3 web3
                                        )
 {
     _settings             = settings;
     _logger               = logger;
     _operationsRepository = operationsRepository;
     _rabbitQueuePublisher = rabbitQueuePublisher;
     _web3 = web3;
 }
Example #4
0
 public Erc20DepositTransferStarterJob(AppSettings settings,
                                       ILog logger,
                                       IWeb3 web3,
                                       IQueueFactory queueFactory,
                                       [KeyFilter(Constants.AirLinesKey)] IHotWalletOperationRepository operationsRepository,
                                       [KeyFilter(Constants.AirLinesKey)] IHotWalletTransactionRepository hotWalletTransactionRepository,
                                       IRabbitQueuePublisher rabbitQueuePublisher,
                                       IErcInterfaceService ercInterfaceService
                                       )
 {
     _settings                            = settings;
     _logger                              = logger.CreateComponentScope(nameof(Erc20DepositTransferStarterJob));
     _web3                                = web3;
     _operationsRepository                = operationsRepository;
     _transactionMonitoringQueue          = queueFactory.Build(Constants.AirlinesTransactionMonitoringQueue);
     _transactionStartedNotificationQueue = queueFactory.Build(Constants.AirlinesErc223TransferNotificationsQueue);
     _hotWalletTransactionRepository      = hotWalletTransactionRepository;
     _rabbitQueuePublisher                = rabbitQueuePublisher;
     _ercInterfaceService                 = ercInterfaceService;
 }
Example #5
0
 public HotWalletMonitoringTransactionJob(ILog log,
                                          ICoinTransactionService coinTransactionService,
                                          IBaseSettings settings,
                                          ISlackNotifier slackNotifier,
                                          IEthereumTransactionService ethereumTransactionService,
                                          IHotWalletTransactionRepository hotWalletCashoutTransactionRepository,
                                          IHotWalletOperationRepository hotWalletCashoutRepository,
                                          IHotWalletService hotWalletService,
                                          IRabbitQueuePublisher rabbitQueuePublisher,
                                          ICashinEventRepository cashinEventRepository)
 {
     _ethereumTransactionService = ethereumTransactionService;
     _settings = settings;
     _log      = log;
     _coinTransactionService = coinTransactionService;
     _slackNotifier          = slackNotifier;
     _hotWalletCashoutTransactionRepository = hotWalletCashoutTransactionRepository;
     _hotWalletCashoutRepository            = hotWalletCashoutRepository;
     _hotWalletService      = hotWalletService;
     _rabbitQueuePublisher  = rabbitQueuePublisher;
     _cashinEventRepository = cashinEventRepository;
 }
 public AirlinesErc20DepositContractService(
     [KeyFilter(Constants.AirLinesKey)] IErc223DepositContractRepository contractRepository,
     [KeyFilter(Constants.AirLinesKey)] IHotWalletOperationRepository operationsRepository,
     IContractService contractService,
     IErc20DepositContractQueueServiceFactory poolFactory,
     ILog log,
     IWeb3 web3,
     AppSettings appSettings,
     IQueueFactory factory,
     IErcInterfaceService ercInterfaceService,
     IUserTransferWalletRepository userTransferWalletRepository)
 {
     _contractRepository = contractRepository;
     _contractService    = contractService;
     _poolFactory        = poolFactory;
     _appSettings        = appSettings;
     _log                          = log;
     _web3                         = web3;
     _appSettings                  = appSettings;
     _transferQueue                = factory.Build(Constants.AirlinesErc223TransferQueue);
     _ercInterfaceService          = ercInterfaceService;
     _operationsRepository         = operationsRepository;
     _userTransferWalletRepository = userTransferWalletRepository;
 }