public MarketBase(MetaDaemonApi daemon, MarketRow market, BitsharesWallet bitshares, BitcoinWallet bitcoin, string bitsharesAccount) { m_daemon = daemon; m_market = market; m_bitshares = bitshares; m_bitcoin = bitcoin; m_bitsharesAccount = bitsharesAccount; }
public TestBase() { m_database = new Database(kDatabaseName, kDatabaseUser, kDatabasePassword, Thread.CurrentThread.ManagedThreadId); RedisWrapper.Initialise("test"); m_data = new MySqlData(kDatabaseName, kDatabaseUser, kDatabasePassword); m_currencies = m_data.GetAllCurrencies(); m_defaultSymbolPair = CurrencyHelpers.GetMarketSymbolPair(m_currencies["bitBTC"], m_currencies[kBtc]); m_alternateMarket = CurrencyHelpers.GetMarketSymbolPair(m_currencies["bitGOLD"], m_currencies[kBtc]); Thread thread = new Thread(() => { string bitsharesUrl = "http://localhost:65066/rpc"; string bitsharesUser = "******"; string bitsharesPassword = "******"; string bitsharesAccount = "gatewaytest"; string bitcoinUrl = "http://localhost:18332"; string bitcoinUser = "******"; string bitcoinPassword = "******"; bool bitcoinUseTestNet = true; string database = kDatabaseName; string databaseUser = kDatabaseUser; string databasePassword = kDatabasePassword; string apiListen = kApiRoot; // create a scheduler so we can be sure of thread affinity AsyncPump scheduler = new AsyncPump(Thread.CurrentThread, OnException); m_api = new MetaDaemonApi(new RpcConfig { m_url = bitsharesUrl, m_rpcUser = bitsharesUser, m_rpcPassword = bitsharesPassword }, new RpcConfig { m_url = bitcoinUrl, m_rpcUser = bitcoinUser, m_rpcPassword = bitcoinPassword, m_useTestnet = bitcoinUseTestNet }, bitsharesAccount, database, databaseUser, databasePassword, apiListen, null, null, "gatewayclient", "http://192.168.0.2:1235/", "192.168.0.2", scheduler); m_api.m_ApiServer.m_HttpServer.m_DdosProtector.m_Enabled = false; scheduler.RunWithUpdate(m_api.Start, m_api.Update, 1); Console.WriteLine("meta thread exiting..."); }); thread.Start(); }
/// <summary> Constructor. </summary> /// /// <remarks> Paul, 05/02/2015. </remarks> /// /// <param name="uid"> The UID. </param> /// <param name="base"> The base. </param> /// <param name="quote"> The quote. </param> /// <param name="bitshares"> The bitshares. </param> /// <param name="bitcoin"> The bitcoin. </param> /// <param name="bitsharesAccount"> The bitshares account. </param> public InternalMarket(MetaDaemonApi daemon, MarketRow market, BitsharesWallet bitshares, BitcoinWallet bitcoin, string bitsharesAccount, CurrenciesRow bitsharesAsset) : base(daemon, market, bitshares, bitcoin, bitsharesAccount) { m_currency = bitsharesAsset; m_flipped = m_market.GetBase(daemon.m_AllCurrencies) != bitsharesAsset; m_asset = m_bitshares.BlockchainGetAsset(CurrencyHelpers.ToBitsharesSymbol(bitsharesAsset)); Dictionary <int, ulong> allBitsharesBalances = m_bitshares.WalletAccountBalance(bitsharesAccount)[bitsharesAccount]; decimal bitcoinBalance = bitcoin.GetBalance(); ComputeMarketPricesAndLimits(ref m_market, allBitsharesBalances, bitcoinBalance); }