/// <summary> /// Adds a job to the manager. /// </summary> /// <param name="pJob">The job object.</param> public void Start(iJob pJob) { pJob.JobFinish += onJobFinish; pJob.JobStart += onJobStart; pJob.JobError += onJobError; lock (_jobs) { _jobs.Add(pJob.ID, pJob); } lock (_jobReportFactories) { iJobReportFactory reportFactory = ObjectFactory.Container.With(pJob).GetInstance<iJobReportFactory>(); _jobReportFactories.Add(pJob.ID, reportFactory); } _logger.Fine("Job Added: {0}", pJob); FireEvents.Action(JobCreated, pJob.ID); lock (_jobs) { if (pJob.ParentID == Guid.Empty) { _jobs[pJob.ID].Start(); } } }
/// <summary> /// Starts a job. /// </summary> public void Start(iJob pJob) { pJob.Start(); }
/// <summary> /// Constructor /// </summary> /// <param name="pJob">The job to report on.</param> public JobReportFactory(iJob pJob) { _job = pJob; }
/// <summary> /// Constructor /// </summary> public MockJobService(iJob pJob) { _jobs = new Dictionary<Guid, iJob> {{pJob.ID, pJob}}; _reports = new Dictionary<Guid, iJobReportFactory> {{pJob.ID, new JobReportFactory(pJob)}}; }