31 lines
1019 B
C#
31 lines
1019 B
C#
using HanaToolbox.Cli;
|
|
using HanaToolbox.Config;
|
|
using HanaToolbox.Logging;
|
|
using HanaToolbox.Services;
|
|
using HanaToolbox.Tui;
|
|
|
|
namespace HanaToolbox.Commands;
|
|
|
|
public static class OnboardCommand
|
|
{
|
|
public static async Task<int> RunAsync(CliArgs cli)
|
|
{
|
|
var log = new AppLogger(cli.Verbose);
|
|
try
|
|
{
|
|
var runner = ServiceFactory.CreateRunner(log);
|
|
var switcher = new SuUserSwitcher(runner);
|
|
var locator = new HdbClientLocator(runner);
|
|
var keySvc = new KeyManagerService(switcher, locator, log);
|
|
var keyTui = new KeyManagerTui(keySvc, locator, log);
|
|
var fwSvc = new FirewallService(runner, log);
|
|
var fwTui = new FirewallTui(fwSvc, log);
|
|
var cronTui = new CronSetupTui();
|
|
var tui = new OnboardTui(keyTui, cronTui, fwTui, log);
|
|
await tui.RunAsync();
|
|
return 0;
|
|
}
|
|
catch (Exception ex) { log.Error(ex.Message); return 1; }
|
|
}
|
|
}
|