public MonitoringTransferContracts(IBaseSettings settings,
                                    IErcInterfaceService ercInterfaceService,
                                    ITransferContractRepository transferContractsRepository,
                                    ILog logger,
                                    IPaymentService paymentService,
                                    IUserPaymentRepository userPaymentRepository,
                                    TransferContractService transferContractService,
                                    IUserTransferWalletRepository userTransferWalletRepository,
                                    ITransferContractTransactionService transferContractTransactionService,
                                    IEthereumTransactionService ethereumTransactionService,
                                    ITransferContractUserAssignmentQueueService transferContractUserAssignmentQueueService,
                                    IUserAssignmentFailRepository userAssignmentFailRepository,
                                    IQueueFactory queueFactory,
                                    ISlackNotifier slackNotifier
                                    )
 {
     _util = new AddressUtil();
     _ethereumTransactionService = ethereumTransactionService;
     _ercInterfaceService        = ercInterfaceService;
     _settings = settings;
     _transferContractsRepository = transferContractsRepository;
     _logger                                     = logger;
     _paymentService                             = paymentService;
     _userPaymentRepository                      = userPaymentRepository;
     _transferContractService                    = transferContractService;
     _userTransferWalletRepository               = userTransferWalletRepository;
     _transferContractTransactionService         = transferContractTransactionService;
     _transferContractUserAssignmentQueueService = transferContractUserAssignmentQueueService;
     _userAssignmentFailRepository               = userAssignmentFailRepository;
     _queueUserAssignment                        = queueFactory.Build(Constants.TransferContractUserAssignmentQueueName);
     _slackNotifier                              = slackNotifier;
 }
示例#2
0
 public LykkePayErc20DepositContractService(
     [KeyFilter(Constants.LykkePayKey)] IErc223DepositContractRepository contractRepository,
     [KeyFilter(Constants.LykkePayKey)] IHotWalletOperationRepository operationsRepository,
     IContractService contractService,
     IErc20DepositContractQueueServiceFactory poolFactory,
     IBaseSettings settings,
     ILog log,
     IWeb3 web3,
     AppSettings appSettings,
     IQueueFactory factory,
     IErcInterfaceService ercInterfaceService,
     IUserTransferWalletRepository userTransferWalletRepository)
 {
     _contractRepository = contractRepository;
     _contractService    = contractService;
     _poolFactory        = poolFactory;
     _settings           = settings;
     _log                          = log;
     _web3                         = web3;
     _appSettings                  = appSettings;
     _transferQueue                = factory.Build(Constants.LykkePayErc223TransferQueue);
     _ercInterfaceService          = ercInterfaceService;
     _operationsRepository         = operationsRepository;
     _userTransferWalletRepository = userTransferWalletRepository;
 }
 public Erc20DepositTransactionService(IQueueFactory queueFactory,
                                       ILog logger,
                                       IExchangeContractService coinContractService,
                                       IBaseSettings baseSettings,
                                       IErc20DepositContractService erc20DepositContractService,
                                       TransferContractService transferContractService,
                                       IUserTransferWalletRepository userTransferWalletRepository,
                                       IUserPaymentHistoryRepository userPaymentHistoryRepository,
                                       ICoinTransactionService cointTransactionService,
                                       ICoinTransactionRepository coinTransactionRepository,
                                       ICoinEventService coinEventService,
                                       IEventTraceRepository eventTraceRepository,
                                       IErcInterfaceService ercInterfaceService,
                                       SettingsWrapper settingsWrapper,
                                       IHotWalletService hotWalletService)
 {
     _eventTraceRepository = eventTraceRepository;
     _logger       = logger;
     _baseSettings = baseSettings;
     _queue        = queueFactory.Build(Constants.Erc20DepositCashinTransferQueue);
     _erc20DepositContractService  = erc20DepositContractService;
     _transferContractService      = transferContractService;
     _userTransferWalletRepository = userTransferWalletRepository;
     _userPaymentHistoryRepository = userPaymentHistoryRepository;
     _cointTransactionService      = cointTransactionService;
     _coinTransactionRepository    = coinTransactionRepository;
     _coinEventService             = coinEventService;
     _ercInterfaceService          = ercInterfaceService;
     _hotWalletAddress             = settingsWrapper.Ethereum.HotwalletAddress;
     _hotWalletService             = hotWalletService;
 }
 public void Init()
 {
     _settings                = Config.Services.GetService <IBaseSettings>();
     _coinRepository          = Config.Services.GetService <ICoinRepository>();
     _exchangeService         = Config.Services.GetService <IExchangeContractService>();
     _transactionService      = Config.Services.GetService <IEthereumTransactionService>();
     _ercService              = Config.Services.GetService <IErcInterfaceService>();
     _transferContractService = Config.Services.GetService <ITransferContractService>();
     _paymentService          = Config.Services.GetService <IPaymentService>();
 }
示例#5
0
 public ExternalTokenService(IExternalTokenRepository tokenRepository,
                             IContractService contractService,
                             ILog logger,
                             IBaseSettings settings,
                             IErcInterfaceService ercInterfaceService)
 {
     _contractService     = contractService;
     _tokenRepository     = tokenRepository;
     _logger              = logger;
     _settings            = settings;
     _ercInterfaceService = ercInterfaceService;
 }
 public Erc20PrivateWalletService(IWeb3 web3,
                                  INonceCalculator nonceCalculator,
                                  IBaseSettings settings,
                                  IRawTransactionSubmitter rawTransactionSubmitter,
                                  IErcInterfaceService ercInterfaceService,
                                  ITransactionValidationService transactionValidationService)
 {
     _rawTransactionSubmitter = rawTransactionSubmitter;
     _nonceCalculator         = nonceCalculator;
     _web3                         = web3;
     _settings                     = settings;
     _ercInterfaceService          = ercInterfaceService;
     _transactionValidationService = transactionValidationService;
 }
 public AssetContractService(IBaseSettings settings,
                             IContractService contractService,
                             ICoinRepository coinRepository,
                             IErcInterfaceService ercInterfaceService,
                             Web3 web3,
                             ITransferContractService transferContractService)
 {
     _transferContractService = transferContractService;
     _settings            = settings;
     _contractService     = contractService;
     _coinRepository      = coinRepository;
     _ercInterfaceService = ercInterfaceService;
     _web3 = web3;
 }
 public Erc20PrivateWalletService(IWeb3 web3,
                                  INonceCalculator nonceCalculator,
                                  IBaseSettings settings,
                                  IRawTransactionSubmitter rawTransactionSubmitter,
                                  IErcInterfaceService ercInterfaceService,
                                  ITransactionValidationService transactionValidationService,
                                  ISignatureChecker signatureChecker)
 {
     _rawTransactionSubmitter = rawTransactionSubmitter;
     _nonceCalculator         = nonceCalculator;
     _web3                         = web3;
     _settings                     = settings;
     _ercInterfaceService          = ercInterfaceService;
     _transactionValidationService = transactionValidationService;
     _signatureChecker             = signatureChecker;
     _addressUtil                  = new AddressUtil();
 }
 public Erc20DepositTransactionService(IQueueFactory queueFactory,
                                       ILog logger,
                                       IUserTransferWalletRepository userTransferWalletRepository,
                                       IUserPaymentHistoryRepository userPaymentHistoryRepository,
                                       IErcInterfaceService ercInterfaceService,
                                       AppSettings settingsWrapper,
                                       IHotWalletService hotWalletService,
                                       ISlackNotifier slackNotifier)
 {
     _logger = logger;
     _queue  = queueFactory.Build(Constants.Erc20DepositCashinTransferQueue);
     _userTransferWalletRepository = userTransferWalletRepository;
     _userPaymentHistoryRepository = userPaymentHistoryRepository;
     _ercInterfaceService          = ercInterfaceService;
     _hotWalletAddress             = settingsWrapper.Ethereum.HotwalletAddress;
     _hotWalletService             = hotWalletService;
     _cointTransactionQueue        = queueFactory.Build(Constants.HotWalletTransactionMonitoringQueue);
     _slackNotifier = slackNotifier;
 }
示例#10
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;
 }
示例#11
0
 public TransferContractService(IContractService contractService,
                                ITransferContractRepository transferContractRepository,
                                ICoinRepository coinRepository,
                                IBaseSettings settings,
                                ITransferContractQueueServiceFactory transferContractQueueServiceFactory,
                                ITransferContractUserAssignmentQueueService transferContractUserAssignmentQueueService,
                                IPaymentService paymentService,
                                Web3 web3,
                                IErcInterfaceService ercInterfaceService
                                )
 {
     _paymentService                             = paymentService;
     _web3                                       = web3;
     _coinRepository                             = coinRepository;
     _contractService                            = contractService;
     _transferContractRepository                 = transferContractRepository;
     _settings                                   = settings;
     _transferContractQueueServiceFactory        = transferContractQueueServiceFactory;
     _transferContractUserAssignmentQueueService = transferContractUserAssignmentQueueService;
     _ercInterfaceService                        = ercInterfaceService;
 }