This commit is contained in:
Jose Conde
2025-09-29 16:02:00 +02:00
parent dc57da8136
commit 5e16f781b4
74 changed files with 1621 additions and 1856 deletions

View File

@@ -1,9 +1,11 @@
using Microsoft.Extensions.DependencyInjection;
using ModVersionChecker.forms;
using Microsoft.Extensions.Hosting;
using ModVersionChecker.managers.interfaces;
using ModVersionChecker.managers.filesystem;
using ModVersionChecker.managers.interfaces;
using ModVersionChecker.managers.litedb;
using ModVersionChecker.service;
using ModVersionChecker.service.interfaces;
using ModVersionChecker.ui.forms;
namespace ModVersionChecker
{
@@ -18,13 +20,15 @@ namespace ModVersionChecker
builder.ConfigureServices(services =>
{
services.AddSingleton<IConfigManager, ConfigLiteDb>();
services.AddSingleton<IAppsManager, AppConfigLiteDb>();
services.AddSingleton<IAppsManager, AppLiteDb>();
services.AddSingleton<ISourcesDefManager, SourcesLiteDb>();
services.AddSingleton<ICheckerTypesDefManager, CheckerTypesDefManager>();
services.AddSingleton<IFlightSimsManager, FlightSimsLiteDb>();
services.AddSingleton<IFlightSimsManager, TypeLiteDb>();
services.AddSingleton<ITypeManager, TypeConfigLiteDb>();
services.AddSingleton<IFormFactory, FormFactory>();
services.AddSingleton<IAppStatusManager, AppStatusManager>();
services.AddSingleton<INotifyIconService, NotifyIconService>();
services.AddSingleton<IApiService, ApiService>();
services.AddSingleton<IVersionService, VersionService>();
services.AddTransient<MainForm>();
services.AddTransient<AppDetailsForm>();
@@ -55,9 +59,9 @@ namespace ModVersionChecker
var serviceProvider = host.Services;
var configForm = serviceProvider.GetService<MainForm>();
var versionChecker = serviceProvider.GetService<VersionChecker>();
var notifyIconService = serviceProvider.GetRequiredService<INotifyIconService>();
var configManager = serviceProvider.GetRequiredService<IConfigManager>();
var versionService = serviceProvider.GetRequiredService<IVersionService>();
var config = configManager.GetConfig();
EventHandler openFormHandler = (s, e) =>
@@ -94,39 +98,19 @@ namespace ModVersionChecker
notifyIcon.DoubleClick += openFormHandler;
bool checkOnInitialStart = config.CheckOnStartup;
if (checkOnInitialStart && versionChecker != null)
if (checkOnInitialStart)
{
versionChecker.StartVersionChecking(notifyIcon);
versionChecker.OnFinished += (s, e) => {
Task.Run(async () =>
{
await versionService.CheckAllApps();
if (configForm != null)
{
if (configForm.InvokeRequired)
{
configForm.Invoke(() => configForm.UpdateListView());
}
else
{
configForm.UpdateListView();
}
configForm.UpdateListView();
}
};
}
if (versionChecker != null)
{
if (configForm != null)
{
configForm.OnRecheck += (s, e) =>
{
if (versionChecker != null)
{
versionChecker.CheckAsync();
}
};
}
}
});
}
host.Start();