/// <summary> /// If user is not null, set user values in the CryptoEntry object /// </summary> /// <param name="user"></param> public CryptoEntry(BaseUser user) { if (user != null) { CryptoAlias = user.CryptoAlias ?? ""; CryptoCodeOption = CryptoCode.ETH; CryptoAddress = user.CryptoAddress; } }
public override string ToString() { return(CryptoCode.ToString()); }
private void StartNBXplorer() { var port = CustomServer.FreeTcpPort(); List <(string key, string value)> keyValues = new List <(string key, string value)>(); keyValues.Add(("conf", Path.Combine(datadir, "settings.config"))); keyValues.Add(("datadir", datadir)); keyValues.Add(("port", port.ToString())); keyValues.Add(("network", "regtest")); keyValues.Add(("instancename", Caller)); keyValues.Add(("chains", CryptoCode.ToLowerInvariant())); keyValues.Add(("verbose", "1")); keyValues.Add(($"{CryptoCode.ToLowerInvariant()}rpcauth", Explorer.GetRPCAuth())); keyValues.Add(($"{CryptoCode.ToLowerInvariant()}rpcurl", Explorer.CreateRPCClient().Address.AbsoluteUri)); keyValues.Add(("cachechain", "0")); keyValues.Add(("exposerpc", "1")); keyValues.Add(("rpcnotest", "1")); keyValues.Add(("trimevents", TrimEvents.ToString())); keyValues.Add(("mingapsize", "3")); keyValues.Add(("maxgapsize", "8")); keyValues.Add(($"{CryptoCode.ToLowerInvariant()}startheight", Explorer.CreateRPCClient().GetBlockCount().ToString())); keyValues.Add(($"{CryptoCode.ToLowerInvariant()}nodeendpoint", $"{Explorer.Endpoint.Address}:{Explorer.Endpoint.Port}")); keyValues.Add(("asbcnstr", AzureServiceBusTestConfig.ConnectionString)); keyValues.Add(("asbblockq", AzureServiceBusTestConfig.NewBlockQueue)); keyValues.Add(("asbtranq", AzureServiceBusTestConfig.NewTransactionQueue)); keyValues.Add(("asbblockt", AzureServiceBusTestConfig.NewBlockTopic)); keyValues.Add(("asbtrant", AzureServiceBusTestConfig.NewTransactionTopic)); if (UseRabbitMQ) { keyValues.Add(("rmqhost", RabbitMqTestConfig.RabbitMqHostName)); keyValues.Add(("rmqvirtual", RabbitMqTestConfig.RabbitMqVirtualHost)); keyValues.Add(("rmquser", RabbitMqTestConfig.RabbitMqUsername)); keyValues.Add(("rmqpass", RabbitMqTestConfig.RabbitMqPassword)); keyValues.Add(("rmqtranex", RabbitMqTestConfig.RabbitMqTransactionExchange)); keyValues.Add(("rmqblockex", RabbitMqTestConfig.RabbitMqBlockExchange)); } var args = keyValues.SelectMany(kv => new[] { $"--{kv.key}", kv.value } .Concat(new[] { $"--{CryptoCode.ToLowerInvariant()}hastxindex" })).ToArray(); Host = new WebHostBuilder() .UseConfiguration(new DefaultConfiguration().CreateConfiguration(args)) .UseKestrel() .ConfigureLogging(l => { l.SetMinimumLevel(LogLevel.Information) .AddFilter("System.Net.Http.HttpClient", LogLevel.Error) .AddFilter("Microsoft", LogLevel.Error) .AddFilter("Hangfire", LogLevel.Error) .AddFilter("NBXplorer.Authentication.BasicAuthenticationHandler", LogLevel.Critical) .AddProvider(Logs.LogProvider); }) .UseStartup <Startup>() .Build(); RPC = ((RPCClientProvider)Host.Services.GetService(typeof(RPCClientProvider))).GetRPCClient(CryptoCode); NBXplorerNetwork = ((NBXplorerNetworkProvider)Host.Services.GetService(typeof(NBXplorerNetworkProvider))).GetFromCryptoCode(CryptoCode); var conf = (ExplorerConfiguration)Host.Services.GetService(typeof(ExplorerConfiguration)); Host.Start(); Configuration = conf; _Client = NBXplorerNetwork.CreateExplorerClient(Address); HttpClient = ((IHttpClientFactory)Host.Services.GetService(typeof(IHttpClientFactory))).CreateClient(); HttpClient.BaseAddress = Address; _Client.SetCookieAuth(Path.Combine(conf.DataDir, ".cookie")); Notifications = _Client.CreateLongPollingNotificationSession(); }