private static void Main(string[] args) { try { var repositoryConfig = new RepositoryConfiguration { ConnectionString = AppSettingHelper.GetDbConnection() }; _persistenceFactory = new VakapayRepositoryMysqlPersistenceFactory(repositoryConfig); var btcBusiness = new BitcoinBusiness.BitcoinBusiness(_persistenceFactory); var rpc = new BitcoinRpc(AppSettingHelper.GetBitcoinNode(), AppSettingHelper.GetBitcoinRpcAuthentication()); var transaction = rpc.FindTransactionByHash(args[0]); Logger.Debug("BitcoinNotify =>> BTCTransactionModel: " + transaction.Data); var transactionModel = BtcTransactionModel.FromJson(transaction.Data); if (transactionModel.BtcTransactionDetailsModel != null && transactionModel.BtcTransactionDetailsModel.Length > 0) { foreach (var transactionModelDetail in transactionModel.BtcTransactionDetailsModel) { _walletBusiness = new WalletBusiness.WalletBusiness(_persistenceFactory); if (transactionModelDetail.Category.Equals("receive")) { HandleNotifyDataReceiver(transactionModel, transactionModelDetail, btcBusiness); } else if (transactionModelDetail.Category.Equals("send")) { // if isExist(by address and transactionId) then update, else insert HandleNotifyDataSend(transactionModel, transactionModelDetail, btcBusiness); } } } else { Logger.Debug("BitcoinNotify BtcTransactionDetailsModel is not exist"); } } catch (Exception e) { Logger.Error(e, "BitcoinNotify exception"); } }
public void FindTransactionByHashTest() { var output = _btcRpc.FindTransactionByHash("2Mv5zhXas6Erc5bVRoSPXYGvqqoybyrghSS"); Assert.IsNotNull(output); }