Пример #1
0
        public void GenerateCampaignData(ExmGeneratorSettings settings)
        {
            GenerateEventService.Errors = 0;

            settings.Job.JobStatus = JobStatus.Running;
            settings.Job.Started   = DateTime.Now;
            settings.Job.JobName   = $"Generating campaign data for {settings.Count} campaign(s)";

            try
            {
                CreateDataForAllCampaigns(settings.Job, settings);

                settings.Job.JobStatus = JobStatus.Complete;
                settings.Job.Status    = "DONE!";
                Log.Info($"EXMGenerator completed: {settings.Job.CompletedContacts}", this);
            }
            catch
            {
                settings.Job.Status    = "Failed!";
                settings.Job.JobStatus = JobStatus.Failed;
            }
            finally
            {
                settings.Job.Ended = DateTime.Now;
            }
        }
Пример #2
0
        public Job StartJob(ExmGeneratorSettings settings)
        {
            _activeJob   = new Job();
            settings.Job = _activeJob;
            var options = new JobOptions("ExperienceGeneratorExm-" + _activeJob.Id, "ExperienceGenerator", Context.Site.Name, this, "GenerateCampaignData", new object[] { settings });

            Sitecore.Jobs.JobManager.Start(options);
            return(_activeJob);
        }
Пример #3
0
        public IHttpActionResult CreateCampaignData(ExmGeneratorSettings settings)
        {
            var job = JobManager.Instance.StartJob(settings);

            job.StatusUrl = Url.Route("ExperienceGeneratorExmJobsApi", new
            {
                action = "Status",
                id     = job.Id
            });
            return(Ok(job));
        }