Quartz Schedulerのすべてのジョブをリストする方法

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