using Hangfire;
using Microsoft.Extensions.Logging;
namespace Atomx.Core.Jos
{
///
/// 多语言本地化任务
///
public class LocalizationJob
{
readonly ILogger _logger;
public LocalizationJob(ILogger logger)
{
_logger = logger;
}
///
/// 如果任务失败,重试 3 次,超过后删除任务,60 秒内不允许并发执行
///
[AutomaticRetry(Attempts = 3, OnAttemptsExceeded = AttemptsExceededAction.Delete)]
[DisableConcurrentExecution(60)]
public void Execute(string path)
{
_logger.LogInformation("LocalizationJob executed at: {time}", DateTimeOffset.Now);
// 在这里添加多语言本地化的具体任务逻辑
}
public void ResetCache()
{
_logger.LogInformation("LocalizationJob ResetCache executed at: {time}", DateTimeOffset.Now);
// 在这里添加重置缓存的具体逻辑
}
}
}