Пример #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;
 }
Пример #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);
 }
Пример #3
0
 public LykkePayEventsService(
     IBlockSyncedByHashRepository blockSyncedRepository,
     IEthereumSamuraiAPI indexerApi,
     IEthereumIndexerService ethereumIndexerService,
     IRabbitQueuePublisher rabbitQueuePublisher,
     [KeyFilter(Constants.DefaultKey)] IAggregatedErc20DepositContractLocatorService erc20DepositContractLocatorService,
     [KeyFilter(Constants.AirLinesKey)] IHotWalletTransactionRepository airHotWalletCashoutTransactionRepository,
     [KeyFilter(Constants.LykkePayKey)] IHotWalletTransactionRepository lpHotWalletCashoutTransactionRepository) :
     base(blockSyncedRepository,
          indexerApi,
          ethereumIndexerService,
          rabbitQueuePublisher,
          erc20DepositContractLocatorService,
          airHotWalletCashoutTransactionRepository,
          lpHotWalletCashoutTransactionRepository)
 {
 }
 public EventsServiceCommon(
     IBlockSyncedByHashRepository blockSyncedRepository,
     IEthereumSamuraiAPI indexerApi,
     IEthereumIndexerService ethereumIndexerService,
     IRabbitQueuePublisher rabbitQueuePublisher,
     IAggregatedErc20DepositContractLocatorService depositContractService,
     [KeyFilter(Constants.AirLinesKey)] IHotWalletTransactionRepository airHotWalletCashoutTransactionRepository,
     [KeyFilter(Constants.LykkePayKey)] IHotWalletTransactionRepository lpHotWalletCashoutTransactionRepository)
 {
     _blockSyncedRepository  = blockSyncedRepository;
     _indexerApi             = indexerApi;
     _depositContractService = depositContractService;
     _ethereumIndexerService = ethereumIndexerService;
     _rabbitQueuePublisher   = rabbitQueuePublisher;
     _airHotWalletCashoutTransactionRepository = airHotWalletCashoutTransactionRepository;
     _lpHotWalletCashoutTransactionRepository  = lpHotWalletCashoutTransactionRepository;
 }
Пример #5
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;
 }
Пример #6
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;
 }