Ejemplo n.º 1
0
        public static JobDetailImpl CreateQuartzJobDetail(this IXpandJobDetail xpandJobDetail)
        {
            var jobDetail = new JobDetailImpl();

            jobDetail.AssignXpandJobDetail(xpandJobDetail);
            return(jobDetail);
        }
Ejemplo n.º 2
0
 public static void AssignXpandJobDetail(this JobDetailImpl jobDetail, IXpandJobDetail xpandJobDetail) {
     jobDetail.Name = xpandJobDetail.Name;
     jobDetail.Description = xpandJobDetail.Description;
     jobDetail.Group = xpandJobDetail.Job.JobType.FullName;
     jobDetail.JobType = xpandJobDetail.Job.JobType;
     jobDetail.RequestsRecovery = xpandJobDetail.RequestsRecovery;
 }
Ejemplo n.º 3
0
 public static void AssignXpandJobDetail(this JobDetailImpl jobDetail, IXpandJobDetail xpandJobDetail)
 {
     jobDetail.Name             = xpandJobDetail.Name;
     jobDetail.Description      = xpandJobDetail.Description;
     jobDetail.Group            = xpandJobDetail.Job.JobType.FullName;
     jobDetail.JobType          = xpandJobDetail.Job.JobType;
     jobDetail.RequestsRecovery = xpandJobDetail.RequestsRecovery;
 }
Ejemplo n.º 4
0
 void Save(IXpandJobDetail detail) {
     Scheduler.StoreJob(detail,Application.ObjectSpaceProvider.TypesInfo);
     if (ObjectSpace.IsNewObject(detail)) {
         IJobDetail job = Scheduler.GetJobDetail(detail);
         Scheduler.StoreJob(job);
         CreateTriggers(detail.Group);
     }
 }
Ejemplo n.º 5
0
        void GetListenerDataMap(IXpandJobDetail detail, Action <List <JobKey>, JobKey> action, string jobName, Type jobType, Func <JobDataMap, List <JobKey> > getListeners, Action <JobDataMap, List <JobKey> > createListenersKeyAction)
        {
            var jobDetail     = Scheduler.GetJobDetail(detail);
            var listenerNames = getListeners.Invoke(jobDetail.JobDataMap);

            action.Invoke(listenerNames, new JobKey(jobName, jobType.FullName));
            createListenersKeyAction.Invoke(jobDetail.JobDataMap, listenerNames);
            Scheduler.StoreJob(jobDetail);
        }
Ejemplo n.º 6
0
 void Save(IXpandJobDetail detail)
 {
     Scheduler.StoreJob(detail, Application.ObjectSpaceProvider.TypesInfo);
     if (ObjectSpace.IsNewObject(detail))
     {
         IJobDetail job = Scheduler.GetJobDetail(detail);
         Scheduler.StoreJob(job);
         CreateTriggers(detail.Group);
     }
 }
Ejemplo n.º 7
0
 public static IJobDetail StoreJob(this IScheduler scheduler, IXpandJobDetail xpandJobDetail,ITypesInfo typesInfo) {
     var jobDetail = (JobDetailImpl)(scheduler.GetJobDetail(xpandJobDetail) ?? xpandJobDetail.CreateQuartzJobDetail());
     jobDetail.AssignXpandJobDetail(xpandJobDetail);
     var typeInfo = typesInfo.FindTypeInfo(xpandJobDetail.JobDataMap.GetType());
     jobDetail.AssignDataMap(typeInfo, xpandJobDetail.JobDataMap);
     if (xpandJobDetail.Job.DataMap != null) {
         typeInfo = typesInfo.FindTypeInfo(xpandJobDetail.Job.DataMap.GetType());
         jobDetail.AssignDataMap(typeInfo, xpandJobDetail.Job.DataMap);
     }
     scheduler.StoreJobCore(jobDetail);
     return jobDetail;
 }
Ejemplo n.º 8
0
        public static IJobDetail StoreJob(this IScheduler scheduler, IXpandJobDetail xpandJobDetail, ITypesInfo typesInfo)
        {
            var jobDetail = (JobDetailImpl)(scheduler.GetJobDetail(xpandJobDetail) ?? xpandJobDetail.CreateQuartzJobDetail());

            jobDetail.AssignXpandJobDetail(xpandJobDetail);
            var typeInfo = typesInfo.FindTypeInfo(xpandJobDetail.JobDataMap.GetType());

            jobDetail.AssignDataMap(typeInfo, xpandJobDetail.JobDataMap);
            if (xpandJobDetail.Job.DataMap != null)
            {
                typeInfo = typesInfo.FindTypeInfo(xpandJobDetail.Job.DataMap.GetType());
                jobDetail.AssignDataMap(typeInfo, xpandJobDetail.Job.DataMap);
            }
            scheduler.StoreJobCore(jobDetail);
            return(jobDetail);
        }
Ejemplo n.º 9
0
 public static bool HasTriggers(this IScheduler scheduler, IXpandJobDetail jobDetail) {
     return scheduler.GetTriggersOfJob(jobDetail).Count > 0;
 }
Ejemplo n.º 10
0
 public static bool DeleteJob(this IScheduler scheduler, IXpandJobDetail jobDetail) {
     return scheduler.DeleteJob(new JobKey(jobDetail.Name, jobDetail.Job.JobType.FullName));
 }
Ejemplo n.º 11
0
 public static IList<ITrigger> GetTriggersOfJob(this IScheduler scheduler, IXpandJobDetail jobDetail) {
     return scheduler.GetTriggersOfJob(new JobKey(jobDetail.Name, jobDetail.Job.JobType.FullName));
 }
Ejemplo n.º 12
0
 public static void TriggerJob(this IScheduler scheduler, IXpandJobDetail jobDetail) {
     scheduler.TriggerJob(new JobKey(jobDetail.Name, jobDetail.Job.JobType.FullName));
 }
Ejemplo n.º 13
0
 public static IJobDetail GetJobDetail(this IScheduler scheduler, IXpandJobDetail jobDetail) {
     return scheduler.GetJobDetail(jobDetail.Name, jobDetail.Job.JobType);
 }
Ejemplo n.º 14
0
 public static void TriggerJob(this IScheduler scheduler, IXpandJobDetail jobDetail)
 {
     scheduler.TriggerJob(new JobKey(jobDetail.Name, jobDetail.Job.JobType.FullName));
 }
Ejemplo n.º 15
0
        void GetListenerDataMap(IXpandJobDetail detail, Action<List<JobKey>, JobKey> action, string jobName, Type jobType, Func<JobDataMap, List<JobKey>> getListeners, Action<JobDataMap, List<JobKey>> createListenersKeyAction) {
            var jobDetail = Scheduler.GetJobDetail(detail);
            var listenerNames = getListeners.Invoke(jobDetail.JobDataMap);
            action.Invoke(listenerNames, new JobKey(jobName, jobType.FullName));
            createListenersKeyAction.Invoke(jobDetail.JobDataMap, listenerNames);
            Scheduler.StoreJob(jobDetail);

        }
Ejemplo n.º 16
0
 public static IJobDetail GetJobDetail(this IScheduler scheduler, IXpandJobDetail jobDetail)
 {
     return(scheduler.GetJobDetail(jobDetail.Name, jobDetail.Job.JobType));
 }
Ejemplo n.º 17
0
 public static DateTimeOffset ScheduleJob(this IScheduler scheduler, IXpandJobTrigger jobTrigger, IXpandJobDetail jobDetail, string groupName) {
     IOperableTrigger trigger = scheduler.GetTrigger(jobTrigger, groupName, jobDetail.Name, jobDetail.Job.JobType);
     return scheduler.ScheduleJob(trigger);
 }
Ejemplo n.º 18
0
 public static IList <ITrigger> GetTriggersOfJob(this IScheduler scheduler, IXpandJobDetail jobDetail)
 {
     return(scheduler.GetTriggersOfJob(new JobKey(jobDetail.Name, jobDetail.Job.JobType.FullName)));
 }
Ejemplo n.º 19
0
 public static bool DeleteJob(this IScheduler scheduler, IXpandJobDetail jobDetail)
 {
     return(scheduler.DeleteJob(new JobKey(jobDetail.Name, jobDetail.Job.JobType.FullName)));
 }
Ejemplo n.º 20
0
        public static DateTimeOffset ScheduleJob(this IScheduler scheduler, IXpandJobTrigger jobTrigger, IXpandJobDetail jobDetail, string groupName)
        {
            IOperableTrigger trigger = scheduler.GetTrigger(jobTrigger, groupName, jobDetail.Name, jobDetail.Job.JobType);

            return(scheduler.ScheduleJob(trigger));
        }
Ejemplo n.º 21
0
 public static bool HasTriggers(this IScheduler scheduler, IXpandJobDetail jobDetail)
 {
     return(scheduler.GetTriggersOfJob(jobDetail).Count > 0);
 }
Ejemplo n.º 22
0
 public static void StoreTrigger(this IScheduler scheduler, IXpandJobTrigger jobTrigger, IXpandJobDetail jobDetail, string groupName) {
     IOperableTrigger trigger = scheduler.GetTrigger(jobTrigger, groupName, jobDetail.Name, jobDetail.Job.JobType);
     scheduler.StoreTrigger(trigger);
 }
Ejemplo n.º 23
0
        public static void StoreTrigger(this IScheduler scheduler, IXpandJobTrigger jobTrigger, IXpandJobDetail jobDetail, string groupName)
        {
            IOperableTrigger trigger = scheduler.GetTrigger(jobTrigger, groupName, jobDetail.Name, jobDetail.Job.JobType);

            scheduler.StoreTrigger(trigger);
        }