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);
}
}
参考文献
リストジョブの料理本]