From 77a609758bb80bac9497d2e3988550f8be578407 Mon Sep 17 00:00:00 2001 From: Rory& Date: Mon, 23 Feb 2026 02:03:20 +0100 Subject: Initial commit --- ReferenceClientProxyImplementation/Tasks/Tasks.cs | 28 +++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 ReferenceClientProxyImplementation/Tasks/Tasks.cs (limited to 'ReferenceClientProxyImplementation/Tasks/Tasks.cs') diff --git a/ReferenceClientProxyImplementation/Tasks/Tasks.cs b/ReferenceClientProxyImplementation/Tasks/Tasks.cs new file mode 100644 index 0000000..5038002 --- /dev/null +++ b/ReferenceClientProxyImplementation/Tasks/Tasks.cs @@ -0,0 +1,28 @@ +namespace ReferenceClientProxyImplementation.Tasks; + +public class Tasks(IServiceProvider serviceProvider) : BackgroundService { + protected override async Task ExecuteAsync(CancellationToken stoppingToken) { + var defaultColor = Console.ForegroundColor; + var tasks = serviceProvider.GetServices().ToList(); + // List tasks = new() + // { + // new BuildClientTask(), + // new PatchClientAssetsTask() + // }; + var i = 0; + foreach (var task in tasks.OrderBy(x => x.GetOrder())) { + Console.ForegroundColor = ConsoleColor.DarkBlue; + Console.Write("==> "); + Console.ForegroundColor = ConsoleColor.DarkGray; + Console.WriteLine($"Running task {++i}/{tasks.Count}: {task.GetName()} (Type<{task.GetType().Name}>)"); + Console.ForegroundColor = defaultColor; + task.Execute(); + } + } +} + +public interface ITask { + public int GetOrder(); + public string GetName(); + public Task Execute(); +} \ No newline at end of file -- cgit 1.5.1