using GB5Shared.QueueReader; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; namespace MMSL.Services { // MM module queue processor. Handles message types emitted by the MM bounded context. // Extend by adding new IJobQueueHandler implementations and registering them in Program.cs. public class MMJobQueueProcessor : BaseJobQueueProcessor { private static readonly IReadOnlyList _messageTypes = [ "MRPRUN", "SCHEDULINGRUN" ]; public MMJobQueueProcessor(IServiceScopeFactory scopeFactory, ILogger logger) : base(scopeFactory, logger) { } protected override IReadOnlyList MessageTypes => _messageTypes; protected override TimeSpan PollInterval => TimeSpan.FromSeconds(5); // GetTenantLoginsAsync: inherited from BaseJobQueueProcessor — loads all active tenants from MSERVERCONFIG } }