Newer
Older
using System;
using System.Collections.Generic;
using HaaSMiddleware.BusinessLogicTier.Factory;
using HaaSMiddleware.DataAccessTier.UnitOfWork;
using HaaSMiddleware.DomainObjects.JobManagement.JobInformation;
using HaaSMiddleware.ServiceTier.JobManagement;
namespace HaaSMiddleware.BackgroundThread.Tasks {
/// <summary>
/// Get all unfinished jobs from db and load their status from cluster
/// and updates their status in DB
/// </summary>
internal class GetAllJobsInfo : AbstractTask, IBackgroundTask {
public GetAllJobsInfo(TimeSpan interval) : base(interval) {}
protected override void RunTask() {
using (IUnitOfWork unitOfWork = new DatabaseUnitOfWork()) {
List<SubmittedJobInfo> updatedJobs =
(List<SubmittedJobInfo>) LogicFactory.GetLogicFactory().CreateJobManagementLogic(unitOfWork).UpdateCurrentStateOfUnfinishedJobs();
JobManagementService jobMgmtService = new JobManagementService();
jobMgmtService.SendSubmittedJobInfosToClient(updatedJobs);
}
}
}
}