Files
bgr/src/BGR.Console/Common/HostBuilderExtensions.cs
T

24 lines
777 B
C#
Raw Normal View History

2025-02-09 23:22:21 -06:00
namespace BGR.Console.Common;
internal static class HostBuilderExtensions
{
2025-02-13 17:24:38 -06:00
public static CommandApp<RemovalCommand> BuildApp(this IHostBuilder builder)
2025-02-09 23:22:21 -06:00
{
var registrar = new TypeRegistrar(builder);
2025-02-13 17:24:38 -06:00
var app = new CommandApp<RemovalCommand>(registrar);
app.Configure(static c =>
c.SetExceptionHandler(static (ex, resolver) =>
{
var logger = resolver?.Resolve(typeof(ILogger<RemovalCommand>)) as ILogger<RemovalCommand>;
logger?.RemovalCommandFailed(ex);
var console = resolver?.Resolve(typeof(IAnsiConsole)) as IAnsiConsole;
console?.WriteLine($"[red]An error occurred while executing the command:[/]");
console?.WriteException(ex, ExceptionFormats.ShortenEverything);
})
);
2025-02-09 23:22:21 -06:00
return app;
}
}