namespace EgwCoreLib.Lux.Data.Services.Job
{
public class PhaseService : BaseServ, IPhaseService
{
#region Public Constructors
public PhaseService(
IConfiguration config,
IConnectionMultiplexer redis,
IPhaseRepository repo) : base(config, redis)
{
_className = "Phase";
_repo = repo;
}
#endregion Public Constructors
#region Public Methods
///
public async Task> GetAllAsync()
{
return await TraceAsync($"{_className}.GetAllAsync", async (activity) =>
{
return await GetOrSetCacheAsync(
$"{_redisBaseKey}:{_className}:ALL",
async () => await _repo.GetAllAsync(),
UltraLongCache
);
});
}
#endregion Public Methods
#region Private Fields
private readonly string _className;
private readonly IPhaseRepository _repo;
#endregion Private Fields
}
}