예제 #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;
 }
 public PrivateWalletController(IPrivateWalletService privateWalletService, ILog log,
                                ITransactionValidationService transactionValidationService,
                                IErc20PrivateWalletService erc20Service)
 {
     _transactionValidationService = transactionValidationService;
     _privateWalletService         = privateWalletService;
     _log          = log;
     _erc20Service = erc20Service;
 }
 public void Init()
 {
     _transactionValidationService = Config.Services.GetService <ITransactionValidationService>();
     _privateWallet = Config.Services.GetService <IPrivateWalletService>();
     _web3          = Config.Services.GetService <Web3>();
 }