public static JobInstanceResult GetResult(JobInstance jobInstance) { if (jobInstance == null) { return(null); } object _lock = new object(); lock (_lock) { var jobInstanceResult = new JobInstanceResult(); jobInstanceResult.IntegrationId = jobInstance.Integration.Id; jobInstanceResult.JobId = jobInstance.Job.Id; jobInstanceResult.QueueRequestId = jobInstance.QueueRequest.Id; jobInstanceResult.JobInstanceId = jobInstance.Id; jobInstanceResult.Filters = jobInstance.Filters; jobInstanceResult.SourceDataSourceId = jobInstance.SourceDataSource.DataSource.Id; jobInstanceResult.TargetDataSourceId = jobInstance.TargetDataSource.DataSource.Id; jobInstanceResult.InvocationSource = jobInstance.InvocationSource; jobInstanceResult.InvocationSourceType = jobInstance.InvocationSourceType; jobInstanceResult.Status = jobInstance.Status; jobInstanceResult.ScheduledStartTime = jobInstance.ScheduledStartTime; jobInstanceResult.TimeToStartDelay = jobInstance.TimeToStartDelay; jobInstanceResult.ActualStartTime = jobInstance.ActualStartTime; jobInstanceResult.ActualEndTime = jobInstance.ActualEndTime; jobInstanceResult.ActualDuration = jobInstance.ActualDuration; jobInstanceResult.HasRecordErrors = jobInstance.HasRecordErrors; jobInstanceResult.HasRuntimeErrors = jobInstance.HasRuntimeErrors; jobInstanceResult.Exceptions = WebServiceException.Convert(jobInstance.Exceptions); var jobStepResults = new List <JobStepInstanceResult>(); foreach (var jobStepInstance in jobInstance.JobStepInstances) { jobStepResults.Add(GetResult(jobStepInstance)); } jobInstanceResult.JobStepInstanceResults = jobStepResults; return(jobInstanceResult); } }
public static JobInstanceResult GetJobInstanceResult(Guid jobInstanceId) { JobInstanceResult jobInstanceResult = null; JobInstance jobInstance; object _lock = new object(); lock (_lock) { jobInstancesById.TryGetValue(jobInstanceId, out jobInstance); if (jobInstance != null) { jobInstanceResult = JobQueueResult.GetResult(jobInstance); } } return(jobInstanceResult); }