public IWallet2 GetFastChain(string asset) { if (!IsChain(asset)) { throw new Exception($"Wallet '{asset}' not supported"); } string dbName = null; if (_walletSettings.DbNames.ContainsKey(asset)) { dbName = _walletSettings.DbNames[asset]; } var db = WalletContext.CreateMySqlWalletContext <WalletContext>(_walletSettings.MySql.Host, dbName, _walletSettings.MySql.User, _walletSettings.MySql.Password, false, false, false); return(new FastWallet(_logger, db, _walletSettings.Mainnet, asset)); }
public IWallet GetChain(string asset) { if (!IsChain(asset)) { throw new Exception($"Wallet '{asset}' not supported"); } string dbName = null; if (_walletSettings.DbNames.ContainsKey(asset)) { dbName = _walletSettings.DbNames[asset]; } ChainAssetSettings cas = null; if (_walletSettings.ChainAssetSettings.ContainsKey(asset)) { cas = _walletSettings.ChainAssetSettings[asset]; } IWallet wallet = null; var db = WalletContext.CreateMySqlWalletContext <WalletContext>(_walletSettings.MySql.Host, dbName, _walletSettings.MySql.User, _walletSettings.MySql.Password, false, false, true); switch (asset) { case "WAVES": wallet = new WavWallet(_logger, db, _walletSettings.Mainnet, new Uri(cas.NodeUrl)); break; case "ZAP": wallet = new ZapWallet(_logger, db, _walletSettings.Mainnet, new Uri(cas.NodeUrl)); break; case "BTC": wallet = new BtcWallet(_logger, db, _walletSettings.Mainnet, new Uri(cas.NodeUrl)); break; default: throw new Exception($"Wallet '{asset}' not supported"); } return(wallet); }
public IFiatWallet2 GetFastFiat(string asset) { if (!IsFiat(asset)) { throw new Exception($"Wallet '{asset}' not supported"); } string dbName = null; if (_walletSettings.DbNames.ContainsKey(asset)) { dbName = _walletSettings.DbNames[asset]; } BankAccount account = null; if (_walletSettings.BankAccounts.ContainsKey(asset)) { account = _walletSettings.BankAccounts[asset]; } return(new FastFiatWallet(_logger, WalletContext.CreateMySqlWalletContext <FiatWalletContext>(_walletSettings.MySql.Host, dbName, _walletSettings.MySql.User, _walletSettings.MySql.Password, false, false, false), asset, account)); }