private string ProcessJob(IJob job, string orderedJobs) { this.ValidateDependencyChainContext(job, orderedJobs); if (!this.IsJobAlreadyProcessed(orderedJobs, job)) { orderedJobs = this.AddJob(orderedJobs, job); } if (job.HasDependency() && !this.IsJobDependencyAlreadyProcessed(orderedJobs, job)) { orderedJobs = AddPriorityJobBeforeDependentJob(orderedJobs, job); } return orderedJobs; }