add gps matcher service

This commit is contained in:
Alex Bezdieniezhnykh
2025-04-14 10:20:01 +03:00
parent ca1682a86e
commit 80de2ad4d0
9 changed files with 76 additions and 74 deletions
+4 -4
View File
@@ -33,7 +33,7 @@ public partial class App
private IMediator _mediator = null!;
private FormState _formState = null!;
private InferenceExternalClient _inferenceClient = null!;
private IInferenceClient _inferenceClient = null!;
private IResourceLoader _resourceLoader = null!;
private IAuthProvider _authProvider = null!;
@@ -81,7 +81,7 @@ public partial class App
{
new ConfigUpdater().CheckConfig();
var secureAppConfig = ReadSecureAppConfig();
_inferenceClient = new InferenceExternalClient(new OptionsWrapper<InferenceClientConfig>(secureAppConfig.InferenceClientConfig));
_inferenceClient = new InferenceClient(new OptionsWrapper<InferenceClientConfig>(secureAppConfig.InferenceClientConfig));
_resourceLoader = new ResourceLoader(_inferenceClient);
_authProvider = new AuthProvider(_inferenceClient);
@@ -168,8 +168,8 @@ public partial class App
services.ConfigureSection<InferenceClientConfig>(context.Configuration);
services.ConfigureSection<GpsDeniedClientConfig>(context.Configuration);
services.AddKeyedSingleton<IExternalClient>(SecurityConstants.EXTERNAL_INFERENCE_PATH, _inferenceClient);
services.AddKeyedSingleton<IExternalClient, GpsDeniedExternalClient>(SecurityConstants.EXTERNAL_GPS_DENIED_PATH);
services.AddSingleton<IInferenceClient>(_inferenceClient);
services.AddSingleton<IGpsMatcherClient, GpsMatcherClient>();
services.AddSingleton<IResourceLoader>(_resourceLoader);
services.AddSingleton<IAuthProvider>(_authProvider);
services.AddSingleton<IInferenceService, InferenceService>();
+1
View File
@@ -27,6 +27,7 @@
<PackageReference Include="Serilog.Sinks.File" Version="6.0.0" />
<PackageReference Include="SharpVectors" Version="1.8.4.2" />
<PackageReference Include="SharpVectors.Wpf" Version="1.8.4.2" />
<PackageReference Include="System.Data.SQLite" Version="1.0.119" />
<PackageReference Include="VideoLAN.LibVLC.Windows" Version="3.0.21" />
</ItemGroup>
+10 -6
View File
@@ -26,7 +26,8 @@ public partial class MainSuite
private readonly IDbFactory _dbFactory;
private readonly Dictionary<WindowEnum, Window> _openedWindows = new();
private readonly IResourceLoader _resourceLoader;
private readonly IEnumerable<IExternalClient> _externalClients;
private readonly IInferenceClient _inferenceClient;
private readonly IGpsMatcherClient _gpsMatcherClient;
private static readonly Guid SaveConfigTaskId = Guid.NewGuid();
public MainSuite(IOptions<AppConfig> appConfig,
@@ -36,8 +37,8 @@ public partial class MainSuite
IGalleryService galleryService,
IDbFactory dbFactory,
IResourceLoader resourceLoader,
[FromKeyedServices(SecurityConstants.EXTERNAL_INFERENCE_PATH)] IExternalClient inferenceClient,
[FromKeyedServices(SecurityConstants.EXTERNAL_GPS_DENIED_PATH)] IExternalClient gpsClient)
IInferenceClient inferenceClient,
IGpsMatcherClient gpsMatcherClient)
{
_configUpdater = configUpdater;
_modules = modules;
@@ -45,7 +46,9 @@ public partial class MainSuite
_galleryService = galleryService;
_dbFactory = dbFactory;
_resourceLoader = resourceLoader;
_externalClients = [inferenceClient, gpsClient];
_inferenceClient = inferenceClient;
_gpsMatcherClient = gpsMatcherClient;
_appConfig = appConfig.Value;
InitializeComponent();
Loaded += OnLoaded;
@@ -120,8 +123,9 @@ public partial class MainSuite
if (_openedWindows.Any())
return;
foreach (var client in _externalClients)
client.Stop();
_inferenceClient.Stop();
_gpsMatcherClient.Stop();
Close();
};
window.Show();