Exemple #1
0
        protected internal virtual void restoreTimerStartEvent(IProcessDefinition previousProcessDefinition, StartEvent startEvent, EventDefinition eventDefinition)
        {
            TimerEventDefinition timerEventDefinition = (TimerEventDefinition)eventDefinition;
            ITimerJobEntity      timer = TimerUtil.CreateTimerEntityForTimerEventDefinition((TimerEventDefinition)eventDefinition, false, null, TimerStartEventJobHandler.TYPE, TimerEventHandler.CreateConfiguration(startEvent.Id, timerEventDefinition.EndDate, timerEventDefinition.CalendarName));

            if (timer != null)
            {
                ITimerJobEntity timerJob = JobManager.CreateTimerJob((TimerEventDefinition)eventDefinition, false, null, TimerStartEventJobHandler.TYPE, TimerEventHandler.CreateConfiguration(startEvent.Id, timerEventDefinition.EndDate, timerEventDefinition.CalendarName));

                timerJob.ProcessDefinitionId = previousProcessDefinition.Id;

                if (!ReferenceEquals(previousProcessDefinition.TenantId, null))
                {
                    timerJob.TenantId = previousProcessDefinition.TenantId;
                }

                JobManager.ScheduleTimerJob(timerJob);
            }
        }