feat(transport): in-memory BundleSessionStore with TTL + lockout

This commit is contained in:
Joseph Doherty
2026-05-24 04:20:55 -04:00
parent 06c2b20178
commit 901d9affdf
3 changed files with 215 additions and 0 deletions
@@ -1,6 +1,9 @@
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection.Extensions;
using Microsoft.Extensions.Options;
using ScadaLink.Commons.Interfaces.Transport;
using ScadaLink.Transport.Export;
using ScadaLink.Transport.Import;
namespace ScadaLink.Transport;
@@ -12,7 +15,9 @@ public static class ServiceCollectionExtensions
{
ArgumentNullException.ThrowIfNull(services);
services.AddOptions<TransportOptions>().BindConfiguration(OptionsSection);
services.TryAddSingleton(TimeProvider.System);
services.AddScoped<DependencyResolver>();
services.AddSingleton<IBundleSessionStore, BundleSessionStore>();
// Remaining concrete services added in later tasks.
return services;
}