Exemple #1
0
        private void ExecuteJob(JobItem job, List <string> executedJobIds)
        {
            if (!executedJobIds.Contains(job.Id))
            {
                if (job.Dependency != null)
                {
                    ExecuteJob(job.Dependency, executedJobIds);
                }

                executedJobIds.Add(job.Id);
            }
        }
Exemple #2
0
        private void CheckCircularDependency(JobItem job, List <JobItem> dependencyList)
        {
            dependencyList.Add(job);

            if (dependencyList.Count() > dependencyList.Distinct().Count())
            {
                throw new CircularDependencyException();
            }

            if (job.Dependency != null)
            {
                CheckCircularDependency(job.Dependency, dependencyList);
            }
        }