Ejemplo n.º 1
0
        public bool LaunchJob(PostLaunchJobRequest request)
        {
            ProcessBase process = IntegrationFactory.GetIntegrationProcess(
                request.CustomerId, request.AdmUserId, request.JobId);
            IProcessArguments pargs = new IntegrationJobArguments()
            {
                CustomerID               = request.CustomerId,
                AdmIntegrationJobID      = request.JobId,
                AdmUserID                = request.AdmUserId,
                AdmIntegrationJobsFileID = request.FileId
                                           //IsImport = true
            };

            var job = JobManager.Instance.DoJobAsync(a => process.Run(pargs));

            process.OnStatusChanged += (sender, e) =>
            {
                Trace.Write(e.StatusMessage);
            };
            process.OnStepChanged += (sender, e) =>
            {
                Trace.Write(e.StatusMessage);
                job.ReportProgress(e.PercentComplete, e.StatusMessage);
            };
            process.OnComplete += (sender, result) =>
            {
                job.OnSendResults(result);
                job.ReportComplete();
            };
            JobStorage.Instance.StoreGlobalJobId(job.Id);

            return(true);
        }
Ejemplo n.º 2
0
 public ActionResult <bool> LaunchJob(PostLaunchJobRequest request)
 {
     return(_integrationJobsLogic.LaunchJob(request));
 }