/// <inheritdoc /> public void StartPrompt(string[] args) { _logger.LogInformation("Starting Prompt"); _consoleWriter.WriteLine("Neo-Sharp", ConsoleOutputStyle.Prompt); if (args != null) { // Append arguments as inputs _consoleReader.AppendInputs(args.Where(u => !u.StartsWith("#")).ToArray()); } _blockchain.InitializeBlockchain().Wait(); while (!_exit) { // Read log buffer while (_logs.TryTake(out var log)) { _consoleWriter.WriteLine ( "[" + log.Level + (string.IsNullOrEmpty(log.Category) ? "" : "-" + log.Category) + "] " + log.MessageWithError, _logStyle[log.Level] ); } // Read input var fullCmd = _consoleReader.ReadFromConsole(_commandAutocompleteCache); if (string.IsNullOrWhiteSpace(fullCmd)) { continue; } fullCmd = _variables.Replace(fullCmd); _logger.LogInformation("Execute: " + fullCmd); Execute(fullCmd); } _consoleWriter.WriteLine("Exiting", ConsoleOutputStyle.Information); }
public void LoadCommand(FileInfo commandsFile) { if (!commandsFile.Exists) { _consoleWriter.WriteLine("File not found", ConsoleOutputStyle.Error); return; } if (commandsFile.Length > 1024 * 1024) { _consoleWriter.WriteLine("The specified file is too large", ConsoleOutputStyle.Error); return; } var lines = File.ReadAllLines(commandsFile.FullName, Encoding.UTF8); _consoleReader.AppendInputs(lines.Where(u => !u.StartsWith("#")).ToArray()); // Print result _consoleWriter.WriteLine($"Loaded inputs: {lines.Length}"); }
// ReSharper disable once UnusedMember.Local private void LoadCommand(FileInfo file) { if (!file.Exists) { _consoleWriter.WriteLine("File not found", ConsoleOutputStyle.Error); return; } if (file.Length > 1024 * 1024) { _consoleWriter.WriteLine("The specified file is too large", ConsoleOutputStyle.Error); return; } var lines = File.ReadAllLines(file.FullName, Encoding.UTF8); _consoleReader.AppendInputs(lines); // Print result _consoleWriter.WriteLine($"Loaded inputs: {lines.Length}"); }