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 triggers = (List) scheduler.getTriggersOfJob(jobKey);
Date nextFireTime = triggers.get(0).getNextFireTime();
System.out.println("[jobName] : " + jobName + " [groupName] : "
+ jobGroup + " - " + nextFireTime);
}
}
2. Quartz 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);
}
}
Note
この例にも興味があるかもしれません–list all
jobs and display on JSF page。