Quartz Schedulerのすべてのジョブをリストする方法
以下は、Quartzのすべてのジョブをリストする方法を示す2つのコードスニペットです。
Quartz 2 APIは大きく変更されているため、構文はQuartz 1.xとは異なります。
1. Quartz 2.1.5の例
Scheduler scheduler = new StdSchedulerFactory().getScheduler(); for (String groupName : scheduler.getJobGroupNames()) { for (JobKey jobKey : scheduler.getJobKeys(GroupMatcher.jobGroupEquals(groupName))) { String jobName = jobKey.getName(); String jobGroup = jobKey.getGroup(); //get job's trigger List<Trigger> triggers = (List<Trigger>) scheduler.getTriggersOfJob(jobKey); Date nextFireTime = triggers.get(0).getNextFireTime(); System.out.println("[jobName]: " + jobName + "[groupName]: " + jobGroup + " - " + nextFireTime); } }
2.クォーツ1.8.6の例
Scheduler scheduler = new StdSchedulerFactory().getScheduler(); //loop all group for (String groupName : scheduler.getJobGroupNames()) { //loop all jobs by groupname for (String jobName : scheduler.getJobNames(groupName)) { //get job's trigger Trigger[]triggers = scheduler.getTriggersOfJob(jobName,groupName); Date nextFireTime = triggers[0].getNextFireTime(); System.out.println("[jobName]: " + jobName + "[groupName]: " + groupName + " - " + nextFireTime); } }
参考文献
リストジョブの料理本]