2025-04-04 08:31:27 +02:00

44 lines
1.1 KiB
C#

using AutoClient.Modes.FolderStore;
namespace AutoClient.Modes
{
public class FolderStoreMode
{
private readonly App app;
private Task checkTask = Task.CompletedTask;
private readonly LoadBalancer loadBalancer;
public FolderStoreMode(App app, LoadBalancer loadBalancer)
{
this.app = app;
this.loadBalancer = loadBalancer;
}
public void Start()
{
checkTask = Task.Run(() =>
{
try
{
var saver = new FolderSaver(app, loadBalancer);
while (!app.Cts.IsCancellationRequested)
{
saver.Run();
}
}
catch (Exception ex)
{
app.Log.Error("Exception in FolderStoreMode: " + ex);
Environment.Exit(1);
}
});
}
public void Stop()
{
app.Cts.Cancel();
checkTask.Wait();
}
}
}