public ContinuousJobRunnerFacts() { FileSystemHelpers.Instance = new FileSystem(); _job = new ContinuousJob { Name = "testjob", JobBinariesRootPath = @"c:\test\data\continuous\testjob" }; _environment = new TestEnvironment { TempPath = @"c:\temp", JobsBinariesPath = @"c:\test\data\continuous\testjob", JobsDataPath = Path.GetTempPath(), DataPath = @"c:\test\data" }; string jobDirectory = Path.Combine(_environment.JobsDataPath, "continuous", _job.Name); _logFilePath = Path.Combine(jobDirectory, "job_log.txt"); MockDeploymentSettingsManager mockSettingsManager = new MockDeploymentSettingsManager(); Mock<ITraceFactory> mockTraceFactory = new Mock<ITraceFactory>(MockBehavior.Strict); Mock<IAnalytics> mockAnalytics = new Mock<IAnalytics>(MockBehavior.Strict); Mock<ITracer> mockTracer = new Mock<ITracer>(MockBehavior.Strict); mockTracer.Setup(p => p.Trace(It.IsAny<string>(), It.IsAny<IDictionary<string, string>>())); mockTraceFactory.Setup(p => p.GetTracer()).Returns(mockTracer.Object); _runner = new ContinuousJobRunner(_job, _environment, mockSettingsManager, mockTraceFactory.Object, mockAnalytics.Object); FileSystemHelpers.DeleteFileSafe(_logFilePath); }
private void RefreshJob(ContinuousJob continuousJob, bool logRefresh) { ContinuousJobRunner continuousJobRunner; if (!_continuousJobRunners.TryGetValue(continuousJob.Name, out continuousJobRunner)) { continuousJobRunner = new ContinuousJobRunner(continuousJob, JobsBinariesPath, Environment, Settings, TraceFactory, Analytics); _continuousJobRunners.Add(continuousJob.Name, continuousJobRunner); } JobSettings jobSettings = continuousJob.Settings; continuousJobRunner.RefreshJob(continuousJob, jobSettings, logRefresh); }
private void RefreshJob(ContinuousJob continuousJob) { ContinuousJobRunner continuousJobRunner; if (!_continuousJobRunners.TryGetValue(continuousJob.Name, out continuousJobRunner)) { continuousJobRunner = new ContinuousJobRunner(continuousJob, Environment, Settings, TraceFactory, Analytics); _continuousJobRunners.Add(continuousJob.Name, continuousJobRunner); } JobSettings jobSettings = GetJobSettings(continuousJob.Name); continuousJobRunner.RefreshJob(continuousJob, jobSettings); }
private void RefreshJob(ContinuousJob continuousJob, bool logRefresh) { ContinuousJobRunner continuousJobRunner; if (!_continuousJobRunners.TryGetValue(continuousJob.Name, out continuousJobRunner)) { continuousJobRunner = new ContinuousJobRunner(continuousJob, JobsBinariesPath, Environment, Settings, TraceFactory, Analytics); _continuousJobRunners.Add(continuousJob.Name, continuousJobRunner); } else { // job may change due to network transient. In such case, // we may lose and need to re-acquire the instance status file lock. continuousJobRunner.ResetLockedStatusFile(); } JobSettings jobSettings = continuousJob.Settings; continuousJobRunner.RefreshJob(continuousJob, jobSettings, logRefresh); }