From c64c63925ece9380eec55064ceae42084388a6df Mon Sep 17 00:00:00 2001 From: TekH Date: Tue, 14 Apr 2026 13:25:07 +0200 Subject: [PATCH] Retrieve GdPicture license key via MediatR from database Refactored LicenseManager registration to fetch the GdPicture license key from the database using MediatR and ReadThirdPartyModuleLicenseQuery, instead of reading from configuration. Updated using statements accordingly. --- .../Extensions/DependencyInjection.cs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/EnvelopeGenerator.ServiceHost/Extensions/DependencyInjection.cs b/EnvelopeGenerator.ServiceHost/Extensions/DependencyInjection.cs index 79736044..c9950e35 100644 --- a/EnvelopeGenerator.ServiceHost/Extensions/DependencyInjection.cs +++ b/EnvelopeGenerator.ServiceHost/Extensions/DependencyInjection.cs @@ -1,6 +1,8 @@ +using EnvelopeGenerator.Application.ThirdPartyModules.Queries; using EnvelopeGenerator.ServiceHost.Jobs; using EnvelopeGenerator.ServiceHost.Jobs.FinalizeDocument; using GdPicture14; +using MediatR; using Microsoft.Extensions.Options; namespace EnvelopeGenerator.ServiceHost.Extensions; @@ -26,12 +28,14 @@ public static class DependencyInjection //TODO: Check lifetime of services. They might be singleton or scoped. services.AddTransient(); - // Add LicenseManager + // Add LicenseManager – license key is read from DB via MediatR services.AddTransient(provider => { - var options = provider.GetRequiredService>().Value; + using var scope = provider.CreateScope(); + var mediator = scope.ServiceProvider.GetRequiredService(); + var licenseKey = mediator.Send(new ReadThirdPartyModuleLicenseQuery { Name = "GdPicture" }).GetAwaiter().GetResult(); var licenseManager = new LicenseManager(); - licenseManager.RegisterKEY(options.GdPictureLicenseKey); + licenseManager.RegisterKEY(licenseKey); return licenseManager; }); services.AddTransient();