Files
HanaToolbox/Commands/FirewallCommand.cs
2026-03-02 20:53:28 +01:00

31 lines
883 B
C#

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<int> 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; }
}
}