protected internal void OnStart() { string chainPath = Settings.Default.Paths.Chain; string relativePath = Settings.Default.Paths.RelativePath; string path = relativePath.Length > 0 ? relativePath + chainPath : Path.GetFullPath(chainPath); store = new LevelDBStore(path); system = new ZoroChainSystem(store, Settings.Default.Paths.RelativePath); system.StartNode(UInt160.Zero, Settings.Default.P2P.Port, Settings.Default.P2P.WsPort); if (Settings.Default.RPC.IsActive) { system.StartRpc(IPAddress.Any, Settings.Default.RPC.Port, wallet: Program.Wallet, sslCert: Settings.Default.RPC.SslCert, password: Settings.Default.RPC.SslCertPassword); } }
protected internal override void OnStart(string[] args) { bool useRPC = false; bool disableLog = false; for (int i = 0; i < args.Length; i++) { switch (args[i]) { case "/rpc": case "--rpc": case "-r": useRPC = true; break; case "/disableLog": case "--disableLog": case "-logoff": disableLog = true; break; } } if (disableLog) { PluginManager.EnableLog(false); } string chainPath = Settings.Default.Paths.Chain; string relativePath = Settings.Default.Paths.RelativePath; string path = relativePath.Length > 0 ? relativePath + chainPath : Path.GetFullPath(chainPath); store = new LevelDBStore(path); system = new ZoroChainSystem(store, Settings.Default.Paths.RelativePath); if (Settings.Default.UnlockWallet.IsActive) { try { //Task.Factory.StartNew(() => HttpServer.HttpServerStart(Settings.Default.UnlockWallet.HttpAddress)); //Settings.Default.UnlockWallet.Password = ReadPassword("Wallet password"); //Console.WriteLine($"http server start \"{Settings.Default.UnlockWallet.HttpAddress}\""); Program.Wallet = OpenWallet(Settings.Default.UnlockWallet.Path, Settings.Default.UnlockWallet.Password); } catch (CryptographicException) { //Console.WriteLine($"failed to start http server \"{Settings.Default.UnlockWallet.HttpAddress}\""); Console.WriteLine($"failed to open file \"{Settings.Default.UnlockWallet.Path}\""); } } system.StartNode(UInt160.Zero, Settings.Default.P2P.Port, Settings.Default.P2P.WsPort); if (Settings.Default.UnlockWallet.StartConsensus && Program.Wallet != null) { OnStartConsensusCommand(null); } if (useRPC) { system.StartRpc(IPAddress.Any, Settings.Default.RPC.Port, wallet: Program.Wallet, sslCert: Settings.Default.RPC.SslCert, password: Settings.Default.RPC.SslCertPassword); } }