예제 #1
0
 private void StoreJobIdForReuseHelper(Hashtable duplicateDetector, Job2 job, bool recurse)
 {
     if (!duplicateDetector.ContainsKey(job.InstanceId))
     {
         duplicateDetector.Add(job.InstanceId, job.InstanceId);
         JobManager.SaveJobId(job.InstanceId, job.Id, base.GetType().Name);
         if (recurse && (job.ChildJobs != null))
         {
             foreach (Job job2 in job.ChildJobs)
             {
                 Job2 job3 = job2 as Job2;
                 if (job3 != null)
                 {
                     this.StoreJobIdForReuseHelper(duplicateDetector, job3, recurse);
                 }
             }
         }
     }
 }
예제 #2
0
 public void StoreJobIdForReuse(Job2 job, bool recurse)
 {
     if (job == null)
     {
         PSTraceSource.NewArgumentNullException("job", "remotingerroridstrings", "JobSourceAdapterCannotSaveNullJob", new object[0]);
     }
     JobManager.SaveJobId(job.InstanceId, job.Id, base.GetType().Name);
     if ((recurse && (job.ChildJobs != null)) && (job.ChildJobs.Count > 0))
     {
         Hashtable duplicateDetector = new Hashtable();
         duplicateDetector.Add(job.InstanceId, job.InstanceId);
         foreach (Job job2 in job.ChildJobs)
         {
             Job2 job3 = job2 as Job2;
             if (job3 != null)
             {
                 this.StoreJobIdForReuseHelper(duplicateDetector, job3, true);
             }
         }
     }
 }
예제 #3
0
 public void StoreJobIdForReuse(Job2 job, bool recurse)
 {
     if (job == null)
     {
         PSTraceSource.NewArgumentNullException("job", RemotingErrorIdStrings.JobSourceAdapterCannotSaveNullJob);
     }
     JobManager.SaveJobId(job.InstanceId, job.Id, this.GetType().Name);
     if (recurse && job.ChildJobs != null && job.ChildJobs.Count > 0)
     {
         Hashtable duplicateDetector = new Hashtable();
         duplicateDetector.Add(job.InstanceId, job.InstanceId);
         foreach (Job child in job.ChildJobs)
         {
             Job2 childJob = child as Job2;
             if (childJob == null)
             {
                 continue;
             }
             StoreJobIdForReuseHelper(duplicateDetector, childJob, true);
         }
     }
 }
예제 #4
0
        private void StoreJobIdForReuseHelper(Hashtable duplicateDetector, Job2 job, bool recurse)
        {
            if (duplicateDetector.ContainsKey(job.InstanceId))
            {
                return;
            }
            duplicateDetector.Add(job.InstanceId, job.InstanceId);

            JobManager.SaveJobId(job.InstanceId, job.Id, this.GetType().Name);

            if (!recurse || job.ChildJobs == null)
            {
                return;
            }
            foreach (Job child in job.ChildJobs)
            {
                if (!(child is Job2 childJob))
                {
                    continue;
                }
                StoreJobIdForReuseHelper(duplicateDetector, childJob, recurse);
            }
        }