public void Init(ConsoleInfo consoleInfo) { if (consoleInfo == null) { throw new ArgumentNullException(nameof(ConsoleInfo)); } ConsoleInfo = consoleInfo; _nextProgressBarId = consoleInfo.ProgressBarId;//初始化 if (consoleInfo != null && consoleInfo.StartTime == DateTime.MinValue) { consoleInfo.StartTime = DateTime.UtcNow; } }
private IHangfireConsole GetHangfireConsole(HttpContext httpContext, Type jobType, IHangfireStorage storage) { IHangfireConsole console = null; try { //默认每次都是有一个新的实例 var consoleFactory = httpContext.RequestServices.GetService <IStorageFactory>(); console = consoleFactory.CreateHangforeConsole(storage); ConsoleInfo consoleInfo = null; var agentConsole = httpContext.Request.Headers["x-job-agent-console"].ToString(); if (!string.IsNullOrEmpty(agentConsole)) { consoleInfo = agentConsole.ToJson <ConsoleInfo>(); } if (console != null && consoleInfo != null) { var initConsole = console as IHangfireConsoleInit; if (initConsole == null) { console = null; } else { initConsole.Init(consoleInfo); } } else { console = null; } } catch (Exception) { //ignore } if (console == null) { var jobLogger = _loggerFactory.CreateLogger(jobType); console = new LoggerConsole(jobLogger); } return(console); }
public void Init(ConsoleInfo consoleInfo) { if (consoleInfo == null) { throw new ArgumentNullException(nameof(ConsoleInfo)); } if (string.IsNullOrEmpty(consoleInfo.HashKey) || string.IsNullOrEmpty(consoleInfo.SetKey)) { return; } ConsoleInfo = consoleInfo; _nextProgressBarId = consoleInfo.ProgressBarId;//初始化 if (consoleInfo.StartTime == DateTime.MinValue) { consoleInfo.StartTime = DateTime.UtcNow; } }