//private static readonly ILog ManagerLogger = LogManager.GetLogger("Stardust.ManagerLog"); public JobManager(IJobRepository jobRepository, IWorkerNodeRepository workerNodeRepository, ManagerConfiguration managerConfiguration, JobPurgeTimer jobPurgeTimer, NodePurgeTimer nodePurgeTimer, NodeManager nodeManager, ILog logger) { _jobRepository = jobRepository; _workerNodeRepository = workerNodeRepository; _managerConfiguration = managerConfiguration; _nodeManager = nodeManager; ManagerLogger = logger; _checkAndAssignJob.Elapsed += AssignJobToWorkerNodes_Elapsed; _checkAndAssignJob.Interval = _managerConfiguration.CheckNewJobIntervalSeconds * 1000; _checkAndAssignJob.Start(); _checkHeartbeatsTimer.Elapsed += CheckHeartbeats_Elapsed; _checkHeartbeatsTimer.Interval = _managerConfiguration.AllowedNodeDownTimeSeconds * 1000; _checkHeartbeatsTimer.Start(); jobPurgeTimer.Start(); nodePurgeTimer.Start(); }
public void ShouldDeleteOldJobDetailOnPurge() { InsertJobRecords(1, 2); //add a two hours old job JobPurgeTimer jobPurgeTimer = new JobPurgeTimer(new RetryPolicyProvider(), new ManagerConfiguration(_managerConnectionString, "Route", 10, 10, 1, 1, 1, 1)); jobPurgeTimer.Purge(); NumberOfDetailsInDatabase().Should().Be.EqualTo(1); jobPurgeTimer.Dispose(); }