Пример #1
0
        public QuartzApiResponse GetQuartzSchedulersLogic()
        {
            QuartzApiResponse quartzApiResponse = new QuartzApiResponse();

            quartzApiResponse.schedulers = new List <Scheduler>();

            var schedulerFactory = new StdSchedulerFactory();
            var schedulers       = schedulerFactory.GetAllSchedulers().Result;

            foreach (var scheduler in schedulers)
            {
                int status;
                if (scheduler.IsStarted)
                {
                    status = 1; // started
                }
                else if (scheduler.InStandbyMode)
                {
                    status = 2; // standby
                }
                else
                {
                    status = 3; // shutdown/inactive/dead
                }

                quartzApiResponse.schedulers.Add(new Scheduler {
                    name   = scheduler.SchedulerName,
                    status = status,
                    jobs   = GetSchedulerJobs(scheduler)
                });
            }

            return(quartzApiResponse);
        }