using HanaToolbox.Cli; using HanaToolbox.Config; using HanaToolbox.Logging; using HanaToolbox.Services; using HanaToolbox.Tui; namespace HanaToolbox.Commands; public static class FirewallCommand { public static async Task RunAsync(CliArgs cli) { var log = new AppLogger(cli.Verbose); try { var config = ConfigService.Load(); var runner = ServiceFactory.CreateRunner(log); var fwService = new FirewallService(runner, log); var tui = new FirewallTui(fwService, log); var updated = await tui.RunAsync(config.Firewall); if (updated != null) { config.Firewall = updated; ConfigService.Save(config); } return 0; } catch (Exception ex) { log.Error(ex.Message); return 1; } } }