feat(core): WorkloadCacheService - логика

This commit is contained in:
Mikhail Trubnikov
2026-04-30 15:10:35 +10:00
parent eb78dfd6a8
commit 238244790b
17 changed files with 59 additions and 35 deletions

View File

@@ -0,0 +1,18 @@
using PARR.Domain.Enums;
using PARR.Domain.Settings;
namespace PARR.Core.Services.TaskServices.Providers
{
/// <summary>
/// Провайдер настроек очереди для задач Tasks
/// </summary>
public interface ITaskMqSettingsProvider
{
/// <summary>
/// Получить настройки очереди для типа задач
/// </summary>
/// <param name="typeCode"></param>
/// <returns></returns>
IMqSettings GetSettings(TaskTypeEnum typeCode);
}
}

View File

@@ -0,0 +1,22 @@
using PARR.Domain.Enums;
using PARR.Domain.Settings;
namespace PARR.Core.Services.TaskServices.Providers
{
internal class TaskMqSettingsProvider : ITaskMqSettingsProvider
{
private readonly Func<TaskTypeEnum, IMqSettings> settingsFactory;
public TaskMqSettingsProvider(
Func<TaskTypeEnum, IMqSettings> settingsFactory
)
{
this.settingsFactory = settingsFactory;
}
public IMqSettings GetSettings(TaskTypeEnum typeCode)
{
return settingsFactory(typeCode);
}
}
}